FlatNode<T> class

A flattened representation of a tree node for virtualized rendering.

Contains all information needed to render a single row in a flat ListView, including depth, position flags, and ancestor "isLast" info for tree lines.

Constructors

FlatNode({required Node<T> node, required int depth, required bool isFirst, required bool isLast, required bool isRoot, required int ancestorIsLastMask})
const

Properties

ancestorIsLastMask → int
Bitmask of "is this ancestor the last child?" over ancestor depth levels. Bit d (for d in 0 .. depth-1) is set when the ancestor at depth d is the last child of its parent — meaning no vertical continuation line is drawn at that depth. Replaces a per-node List<bool> to avoid a heap allocation for every flattened node (the flags are read only when a row is painted, i.e. only for visible rows). Tree depth is therefore capped at maxDepth.
final
depth → int
Depth level (0 = root)
final
hashCode → int
The hash code for this object.
no setterinherited
isFirst → bool
Whether this node is the first child of its parent
final
isLast → bool
Whether this node is the last child of its parent
final
isRoot → bool
Whether this is a root-level node
final
node → Node<T>
The original tree node
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

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

Constants

maxDepth → const int
Maximum tree depth representable in ancestorIsLastMask (one bit per ancestor level, within a 64-bit int with headroom).