A source-agnostic interface for navigating hardware hierarchy.
All search and navigation is driven by walking the HierarchyOccurrence tree. Occurrences hold their HierarchyOccurrence.name, HierarchyOccurrence.children, and HierarchyOccurrence.signals. Full paths are constructed on the fly by joining names with hierarchyPathSeparator — no pre-baked path strings are needed for search.
Key methods:
- searchSignals — incremental signal search
- searchOccurrences — find occurrences by name
- matchOccurrences — find occurrences, returning HierarchyOccurrence objects
- autocompletePaths — incremental path completion
Constructors
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- root → HierarchyOccurrence
-
The root occurrence for the hierarchy.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addressToPathname(
OccurrenceAddress address, {bool asSignal = false}) → String? -
Convert a OccurrenceAddress back to a
/-separated pathname by walking the tree using child indices. -
autocompletePaths(
String partialPath, {int? limit}) → List< String> - Autocomplete suggestions for a partial hierarchical path.
-
matchOccurrences(
String query, {int? limit}) → List< HierarchyOccurrence> -
Find hierarchy occurrences whose path matches
query. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
occurrenceByAddress(
OccurrenceAddress address) → HierarchyOccurrence? - Find an occurrence by its OccurrenceAddress. O(depth).
-
occurrenceByPathname(
String pathname) → HierarchyOccurrence? -
Resolve a
/-separated pathname to a HierarchyOccurrence. -
pathnameToAddress(
String pathname) → OccurrenceAddress? -
Convert a pathname (e.g.
"Top/sub/clk"or"Top.sub.clk") to a OccurrenceAddress by walking the tree. -
searchOccurrencePaths(
String query, {int? limit}) → List< String> -
Find hierarchical occurrence paths matching
query. -
searchOccurrencePathsRegex(
String pattern, {int? limit}) → List< String> -
Search for occurrence paths matching a regex
pattern. -
searchOccurrences(
String query, {int? limit}) → List< OccurrenceSearchResult> - Search for occurrences and return enriched OccurrenceSearchResult objects.
-
searchOccurrencesRegex(
String pattern, {int? limit}) → List< OccurrenceSearchResult> - Search for occurrences by regex pattern and return enriched results.
-
searchSignalPaths(
String query, {int? limit}) → List< String> -
Find hierarchical signal paths matching
query. -
searchSignalPathsRegex(
String pattern, {int? limit}) → List< String> -
Search for signals whose hierarchical path matches a regex
pattern. -
searchSignals(
String query, {int? limit}) → List< SignalSearchResult> - Search for signals and return enriched SignalSearchResult objects.
-
searchSignalsRegex(
String pattern, {int? limit}) → List< SignalSearchResult> - Search for signals by regex pattern and return enriched results.
-
signalByAddress(
OccurrenceAddress address) → SignalOccurrence? - Find a signal by its OccurrenceAddress.
-
toString(
) → String -
A string representation of this object.
inherited
-
waveformIdToAddress(
String waveformId) → OccurrenceAddress? - Resolve a signal identifier from a VCD or FST waveform file to an OccurrenceAddress.
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
hasRegexChars(
String query) → bool -
Whether
querycontains glob or regex metacharacters that should trigger the regex search engine instead of the plain substring search. -
isOccurrenceMatching(
HierarchyOccurrence node, String? searchTerm) → bool -
Check if an occurrence or any of its descendants match
searchTerm. -
longestCommonPrefix(
List< String> paths) → String? -
Returns the longest common prefix shared by all
paths.