Class MemoNode
- Namespace
- Velvet
- Assembly
- Velvet.Docs.dll
Node that skips rebuilding its child tree when the dependency array is unchanged. When omitting key, do not change the order of MemoNodes within the same component, since the node is identified by its position in the element it is written into.
public sealed class MemoNode : VNode
- Inheritance
-
objectMemoNode
- Inherited Members
Properties
- Dependencies
Dependency array. Compared element-wise (Velvet.ObjectIs.AreEqualDeps(object[], object[])) on each element's runtime type:
floatanddoubleby raw bit pattern,stringby ordinal content, any other value type by its own equality — so arecord structof equal content is unchanged — and any other reference type by instance, so a freshrecord classinstance of equal content is a change. Where the two branches part is how far the comparison reads: the reference branch reads the instance and stops, while the value branch is the element's ownEquals, which answers for its fields in turn — a nestedrecord classfield by that record's content. An empty array declares no dependencies and caches while the memo keeps its position; null declares no dependency array, which no newly built node's comparison can satisfy.
- Factory
Factory function that produces a VNode.