T extends Object> class Null safety
An Expando allows adding new properties to objects.
Does not work on numbers, strings, booleans or
Expando does not hold on to the added property value after an object
Since you can always create a new number that is identical to an existing
number, it means that an expando property on a number could never be
released. To avoid this, expando properties cannot be added to numbers.
The same argument applies to strings, booleans and
null, which also have
literals that evaluate to identical values when they occur more than once.
There is no restriction on other classes, even for compile time constant objects. Be careful if adding expando properties to compile time constants, since they will stay alive forever.
- hashCode → int
The hash code for this object. [...]
- name → String?
The name of the this Expando as passed to the constructor. If
no name was passed to the constructor, the name is
- runtimeType → Type
A representation of the runtime type of the object.
Object other) → bool
The equality operator. [...]
Object object) → T?
Gets the value of this Expando's property on the given
object. If the object hasn't been expanded, the method returns
Object object, T? value) → void
- Sets the value of this Expando's property on the given object. Properties can effectively be removed again by setting their value to null. [...]