DiagramSelectionIndex class final

Rebuildable ownership and internal-connection index for immutable documents.

Constructors

DiagramSelectionIndex.forDocument(DiagramDocument document)
factory

Properties

buildElementVisits → int
Records inspected while building or patching this immutable index.
final
hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

childrenOf(String id) → Iterable<DiagramElement>
Direct children in canonical document order, from this snapshot.
closure(Iterable<String> ids) → Map<String, DiagramElement>
Ownership descendants plus connectors with both bound targets included.
dependantIdsOf(String id) → Iterable<String>
Direct children and bound connectors of id, in no particular order.
incidentConnections(Iterable<String> elementIds) → List<ConnectorElement>
Connections touching any requested endpoint owner, in document order. Visits only those owners' incident sets; duplicate endpoint hits collapse. Values belong to this immutable snapshot, including after topology reuse.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
removalClosure(Iterable<String> ids) → Set<String>
Requested identities plus everything removed with them: owned descendants and connectors bound to any removed element.
roots(Set<String> ids) → Set<String>
An owned connector travels with its ancestor just like framed content.
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

reuseTopology(DiagramDocument before, DiagramDocument after) → bool
Reuses topology proven by canonical mutations, or compares independent snapshots completely. Current element content is never shared. Does no work for documents whose selection index has never been queried.