SymbolComponent class
A symbol's identity and display data, attached to a definition's
handle (spec 09 D3, R-2): a stable key (lower-case dotted, e.g.
bed.double), the display name, a category, tags and an integer
version. The same key and version is reused by a placement, a different
version is copied beside it (decision 8).
Immutable and value-equal, tags compared in order; toJson keys
are in a fixed (alphabetical) order. Not a parametric type: it is not in
parametricCatalog, so the live-object rule and regeneration never see
it (spec D1).
Lower-case key and tags are the library loader's duty, not enforced here.
Constructors
-
SymbolComponent({required String key, required String name, required String category, required List<
String> tags, required int version}) -
Throws ArgumentError (not an
assert: a release build must refuse too) whenkeyis empty orversionis below 1.tagsis copied into an unmodifiable list.
Properties
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, Object?> -
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Methods
Constants
- componentTypeId → const String