ClassSchema
Implementation of a schema representing values of a given class T with KClass. Use the ClassSchema.invoke function to create an instance of this class.
Properties
Map of children schemas.
Function used to construct values of type T.
Initial value for a value of this schema.
Whether this schema supports setting values concurrently.
List of validations used to validate this schema.
Functions
Whether a value of this schema can be assigned to a variable with the provided type.
Changes value, a value of this schema stored by the form manager into the given value intoValue, sending events about the change through eventsBus. The provided path represents the path of the value being changed within the form manager. The value must be set via setValue, even if it hasn't changed; for parent schemas, it should typically be the same instance of value, but mutated to resemble intoValue.
Returns a sequence of information on the schemas matching fragment that are children of this schema. The provided path and queried path respectively represent the path of this schema and the path of the queried value within the form manager.
Returns a "container" used to hold the states of the children of a value of this schema.
Destroys and removes value, a value of this schema stored by the form manager, sending events about the destruction through eventsBus. The provided path represents the path of the value being destroyed within the form manager. removeValue should always be called to remove the value.
Initialises and sets a value of this schema from a given value fromValue to be stored by the form manager, sending events about the initialisation of the value through eventsBus. The provided path represents the path of the value being initialised within the form manager. The value must be set via setValue, which should always be called.
Returns whether fragment is a valid identifier for a child schema of this schema.
Sets the child(ren) of value, a value of this schema, identified by fragment with childValue, sending events about all modifications through eventsBus. The provided path represents the path of value within the form manager.