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 0 for 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.