Expand description
The binding engine: binding expressions, expression nodes, plugins and parsers.
Modules§
- expression_
nodes - The nodes of a binding path.
- parsers
- Parsers of the binding engine.
- plugins
- Binding plugins: how members are read, written, observed and validated.
Structs§
- Binding
Expression - A binding expression which accepts and produces (possibly boxed) untyped values: a source, a path of expression nodes read from it, and the conversion of the result to the target.
- Binding
Expression Options - The options of a
BindingExpression. - ClrProperty
Info - A property description built from accessor closures. This is what compiled bindings use to read and write plain properties.
- Expression
Error - The error state of a binding expression: the error and its kind.
- Expression
Parse Exception - Error returned when the provided binding expression string could not be parsed.
- Indexer
Binding Expression - The binding expression of an
IndexerBinding: binds a property of the target to a registered property of another object. - Maybe
- A property of type
Option<T>:Noneis null in bindings. - Model
Ref - A property that refers to a shared model object:
Option<Rc<M>>. The object itself travels through bindings (no copy, identity preserved). - Multi
Binding Expression - The binding expression of a multi-binding: runs the child bindings and combines their values through a converter.
- Observable
Sink - Adapts a binding expression to an observable subject: observers receive the values of the expression, and values pushed into the subject are written to the binding source.
- Target
Type Converter - Converts the values produced by a binding to the type of its target (and target values back to the type of the source).
- Typed
Binding Expression - A binding expression for the common case of a compiled binding: a single
plain property read from the data context of the target element, whose
type is assignable to the type of the target property. When the two types
are the same, values travel typed in both directions and nothing is boxed
per update; otherwise the value is cast to the type of the target property
(see
ValueTypes::is_assignable). - Typed
ClrProperty Info - A property description with typed accessors: values are read and written without boxing.
- Untyped
- A property holding an untyped value (
Option<BoxedValue>), passed through as it is. - Untyped
Binding Expression Base - The state shared by untyped binding expressions.
- Untyped
Observable Binding Expression - A binding expression whose values come from an observable of untyped values.
- Value
- A property of value type
Tthat is never null. - Value
Type - Identifies the type of a value: the equivalent of a runtime type handle for values that are not class instances.
- Value
Types - The per-thread table of value type knowledge used by untyped bindings.
Enums§
- Publish
- A value to publish to the target of a binding expression.
- SinkRef
- A non-owning reference to a binding expression sink: the value store of an object, or another sink (an observable adapter or a parent expression).
- Weak
Value - A reference to a binding source that does not keep it alive.
Constants§
- INDEXER_
NAME - The name of the indexer of a type, as used in property change notifications.
Traits§
- IProperty
Info - Describes a property of an object that is not a registered property: its name, type and untyped accessors.
- Property
Kind - States how the typed value of a property maps to the untyped values that flow through a binding.
- Untyped
Binding Expression - The overridable members of an untyped binding expression, together with the operations built on them.
Type Aliases§
- Boxed
Property Getter - The getter of a
ClrPropertyInfothat takes the owner as an untyped handle (seeClrPropertyInfo::with_boxed_accessors). - Boxed
Property Setter - The setter of a
ClrPropertyInfothat takes the owner as an untyped handle. - Fallible
Property Getter - The untyped getter of a
ClrPropertyInfothat can fail: anErris the equivalent of the getter throwing (an index out of range, a missing key). - Property
Getter - The untyped getter of a
ClrPropertyInfo. - Property
Setter - The untyped setter of a
ClrPropertyInfo.