ObjectFlagProperty<T> class

A property where the important diagnostic information is primarily whether the value is present (non-null) or absent (null), rather than the actual value of the property itself.

The ifPresent and ifNull strings describe the property value when it is non-null and null respectively. If one of ifPresent or ifNull is omitted, that is taken to mean that level should be DiagnosticsLevel.hidden when value is non-null or null respectively.

This kind of diagnostics property is typically used for values mostly opaque values, like closures, where presenting the actual object is of dubious value but where reporting the presence or absence of the value is much more useful.

See also:

  • FlagProperty, which provides similar functionality describing whether a value is true or false.
Inheritance

Constructors

ObjectFlagProperty(String name, T value, { String ifPresent, String ifNull, bool showName: false, DiagnosticLevel level: DiagnosticLevel.info })
Create a diagnostics property for values that can be present (non-null) or absent (null), but for which the exact value's Object.toString representation is not very transparent (e.g. a callback). [...]
ObjectFlagProperty.has(String name, T value, { DiagnosticLevel level: DiagnosticLevel.info })
Shorthand constructor to describe whether the property has a value. [...]

Properties

ifPresent String
Description to use if the property value is not null. [...]
final
level DiagnosticLevel
Priority level of the diagnostic used to control which diagnostics should be shown and filtered. [...]
read-only
showName bool
Whether the name of the property should be shown when showing the default view of the tree. [...]
read-only
defaultValue Object
If the value of the property equals defaultValue the priority level of the property is downgraded to DiagnosticLevel.fine as the property value is uninteresting. [...]
final, inherited
emptyBodyDescription String
Description to show if the node has no displayed properties or children.
read-only, inherited
exception Object
Exception thrown if accessing the property value threw an exception. [...]
read-only, inherited
hashCode int
The hash code for this object. [...]
read-only, inherited
ifEmpty String
Description if the property description would otherwise be empty.
final, inherited
ifNull String
Description if the property value is null.
final, inherited
missingIfNull bool
Whether a value of null causes the property to have level DiagnosticLevel.warning warning that the property is missing a value.
final, inherited
name String
Label describing the DiagnosticsNode, typically shown before a separator (see showSeparator). [...]
final, inherited
propertyType Type
The type of the property value. [...]
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
showSeparator bool
Whether to show a separator between name and description. [...]
final, inherited
style DiagnosticsTreeStyle
Hint for how the node should be displayed.
final, inherited
textTreeConfiguration TextTreeConfiguration
Returns a configuration specifying how this object should be rendered as text art.
@protected, read-only, inherited
tooltip String
Optional tooltip typically describing the property. [...]
final, inherited
value → T
Returns the value of the property either from cache or by invoking a ComputePropertyValueCallback. [...]
read-only, inherited

Methods

toJsonMap() Map<String, Object>
valueToString({TextTreeConfiguration parentConfiguration }) String
Returns a string representation of the property value. [...]
getChildren() List<DiagnosticsNode>
Children of this DiagnosticsNode. [...]
inherited
getProperties() List<DiagnosticsNode>
Properties of this DiagnosticsNode. [...]
inherited
isFiltered(DiagnosticLevel minLevel) bool
Whether the diagnostic should be filtered due to its level being lower than minLevel. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toDescription({TextTreeConfiguration parentConfiguration }) String
Returns a description with a short summary of the node itself not including children or properties. [...]
inherited
toString({TextTreeConfiguration parentConfiguration, DiagnosticLevel minLevel: DiagnosticLevel.info }) String
Returns a string representation of this diagnostic that is compatible with the style of the parent if the node is not the root. [...]
inherited
toStringDeep({String prefixLineOne: '', String prefixOtherLines, TextTreeConfiguration parentConfiguration, DiagnosticLevel minLevel: DiagnosticLevel.debug }) String
Returns a string representation of this node and its descendants. [...]
inherited

Operators

operator ==(dynamic other) bool
The equality operator. [...]
inherited