Skip to main content

Module composite

Module composite 

Source
Expand description

Composite tensor: head + members, aggregated across whole TensorDescriptors.

Every other layout in this crate is validated and addressed within a single crate::descriptor::TensorDescriptor. Composite is different: a composite “tensor” is a head descriptor (layout_tag = 0x0B, see crate::layout::composite) plus N ordinary tensor descriptors — its members — bound by forward stream/file adjacency. This module is where that cross-descriptor aggregate lives.

Distinct from crate::layout::composite, which defines only the wire-level CompositeLayout payload carried inside the head descriptor’s layout-specific fields (composition_rule, combine_op, member_count). This module aggregates a complete head plus its actual member descriptors and validates them against each other per docs/spec/layouts/composite.md § Validation. The two modules are kept at distinct paths (hurray_core::layout::composite vs hurray_core::composite) precisely so their similarly-named types — CompositeLayout / CompositionRule / CombineOp here vs CompositeTensor / CompositeValidator there — never collide in any glob or re-export.

Structs§

CompositeTensor
A composite tensor: a head descriptor plus its ordered member descriptors.
CompositeValidator
Stateful, bounded validator for a composite head’s members.

Constants§

MAX_COMPOSITE_DEPTH
Maximum composite nesting depth.