ValueDef class

Represents a value definition in a JSON structure for code generation.

Available extensions

Constructors

ValueDef({String? rootClassName, required bool rootClassNameWithPrefixSuffix, String? key, dynamic value, ClassNamePrefixSuffixBuilder? classNamePrefixSuffixBuilder})

Properties

childrenDef ↔ dynamic
Child definitions (List or Map of ValueDef).
getter/setter pair
classCode → String

Available on ValueDef, provided by the DartCodeGenerator extension

Generates the Dart class source code for this value definition.
no setter
classNameFull → String
The full generated class name including prefix and suffix.
no setter
classNameNoPrefixSuffix → String
The generated class name without prefix or suffix.
no setter
classNamePrefix → String
The prefix applied to the generated class name.
no setter
classNamePrefixSuffixBuilder ↔ ClassNamePrefixSuffixBuilder?
Callback for generating class name prefixes and suffixes.
getter/setter pair
classNameSuffix → String
The suffix applied to the generated class name.
no setter
customObjects → List<ValueDef>
Returns all nested custom object definitions.
no setter
customObjectString → String
Returns the struct string for all custom objects.
no setter
depth → int
The nesting depth of this definition.
no setter
hashCode → int
The hash code for this object.
no setterinherited
isListRoot → bool
Whether the root ancestor is a list type.
no setter
isRoot → bool
Whether this is the root definition (has no parent).
no setter
key → String?
The JSON key associated with this value.
final
listInnerType → ListInner?
Returns the inner type information for list values.
no setter
listType ↔ ClassType?
The element type if this value is a list.
getter/setter pair
parent ↔ ValueDef?
The parent definition in the JSON tree.
getter/setter pair
parentKey → String?
get parent key
no setter
rootClassName ↔ String?
The root class name for code generation.
getter/setter pair
rootClassNameWithPrefixSuffix ↔ bool
Whether to apply prefix/suffix to the root class name.
getter/setter pair
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
structString → String
Returns a debug string representation of this definition's structure.
no setter
type ↔ ClassType
The resolved ClassType of this value.
getter/setter pair
value → dynamic
The raw JSON value.
final

Methods

copyWith({ClassType? type, ClassType? listType, dynamic childrenDef}) → ValueDef
Creates a copy of this definition with optional overrides.
findCustomObject(ValueDef def) → ValueDef?
Finds a matching custom object definition for def.
isStructSame(ValueDef other, {bool debug = false}) → bool
Returns true if this definition has the same structure as other.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
summarize() → ValueDef
Summarizes this definition by merging types and converting nulls.
toString() → String
A string representation of this object.
override

Operators

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