Skip to content

Implementation limits for configureAll #98

@Liedtke

Description

@Liedtke

The configureAll method allows creating JS objects with a potentially large amount of fields.

Similarly to how we have implementation limits for the number of fields in a structure, it probably makes sense to limit the number of properties / methods we allow to setup using configureAll in a JS object.
JS implementations surely have internal limits on object sizes (V8 definitely does), so they will eventually crash or throw if the number of properties is excessively large. To ensure consistency and interoperability between implementations, it's probably useful to have such a limit be spec'ed, similar to other Wasm limits, a value of 10K or 100K properties per prototype and constructor might work.

A value higher than the limit should throw before any method is installed on the "current" prototype / constructor object in the configureAll configuration data (so semantically at the point where the vector size in the configuration data is located).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions