Skip to content

Allow version-safe mutation of the data models in the v1.0.0 release #233

Open
@popematt

Description

@popematt

We need to take care with mutable models because we're currently using an un-versioned model, and direct modification of that model could produce an in memory model that is not valid in any ISL version (for example, a type that has a scale and exponent constraint, or adding the distinct modifier to an element constraint in a schema that is otherwise using ISL 1.0 features).

Some possibilities include:

  • Convert the data model back into a type-safe builder for modification
  • Add de-structuring functions to make it easy to take ownership of the data in a constraint, modify it, and then create a new constraint using that data
  • Have a versioned data model (which we previously decided against, but could revisit)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions