Advanced
Expression creation
How rsx(...) creates a bound expression instance through factory, manager, cache lookup, and parser fallback.
Detailed notes
- `rsx(expressionString)(model)` asks `IExpressionFactory` to create a bound expression instance.
- `ExpressionManager` creates one expression instance per context and expression and reuses it when requested again for the same context.
- `ExpressionCache` is checked first by expression string.
- On cache miss, `ExpressionParser` parses the expression, builds the tree, and stores that parsed prototype in cache.
- For both cache hit and cache miss, rs-x clones the cached prototype and binds that clone to the passed model/context.
- The final result is a bound `IExpression<T>` ready for evaluation and change notifications.