TomlNode class sealed
A single addressable node in a TOML document tree.
The viewer renders a flattened list of visible nodes rather than a nested widget tree, so every node needs a stable path (its identity for expand/collapse state) and a depth (its indentation level).
Children are built lazily — a subtree is only materialised when something actually walks into it, so collapsed branches cost nothing.
Build a tree with TomlNode.root:
final root = TomlNode.root({'server': {'port': 8080}});
root.children.first.path; // 'server'
- Implementers
- Annotations
Properties
-
children
→ List<
TomlNode> -
The child nodes, computed lazily. Empty for leaves.
no setter
- depth → int
-
Nesting depth, starting at
0for top-level entries.final - hashCode → int
-
The hash code for this object.
no setteroverride
- isArrayElement → bool
-
Whether this node is an element of an array (rather than a table entry).
final
- isExpandable → bool
-
Whether this node has children that can be revealed.
no setter
- isRoot → bool
-
Whether this node is a top-level entry of the document.
no setter
- key → String
-
The display label for this node.
final
- path → String
-
The unique dotted/bracketed path of this node, e.g.
server.ports[1].final - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- typeName → String
-
A human-readable type name, e.g.
int,String,Table,Array.no setter - value → Object?
-
The raw Dart value this node wraps.
no setter
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toString(
) → String -
A string representation of this object.
override
Operators
-
operator ==(
Object other) → bool -
The equality operator.
override
Static Methods
-
root(
Map< String, dynamic> data) → TomlTableNode - Builds the root node for a parsed TOML document.