Skip to content

[vm] ☂️ @pragma('vm:deeply-immutable') #55120

Open
@dcharkes

Description

@dcharkes

Filing a tracking issue for expanding the feature-set of @pragma('vm:deeply-immutable').

https://dart-review.googlesource.com/c/sdk/+/354902 Introduces basic functionality.

  • Deeply immutable classes can have fields which are deeply immutable.
  • Deeply immutable classes can extend other deeply immutable classes.
  • Allow type parameter types in fields of deeply immutable classes.

Not covered in this CL, but could be covered:

  • Allow using deeply immutable classes across libraries.
  • Allow mixin in deeply immutable classes. (Requires allowing deeply immutable classes across libraries, mixins can't be final or sealed.)
  • Allow record types in fields of deeply immutable classes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-vmUse area-vm for VM related issues, including code coverage, and the AOT and JIT backends.type-enhancementA request for a change that isn't a bug

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions