pub trait Schematic: Block<Io: HasBundleKind<BundleKind: SchematicBundleKind>> {
type Schema: Schema;
type NestedData: NestedData;
// Required method
fn schematic(
&self,
io: &IoNodeBundle<Self>,
cell: &mut CellBuilder<<Self as Schematic>::Schema>,
) -> Result<Self::NestedData>;
}
Expand description
A block that has a schematic.
Required Associated Types§
Sourcetype NestedData: NestedData
type NestedData: NestedData
Extra schematic data to be stored with the block’s generated cell.
When the block is instantiated, all contained data will be nested within that instance.
Required Methods§
Sourcefn schematic(
&self,
io: &IoNodeBundle<Self>,
cell: &mut CellBuilder<<Self as Schematic>::Schema>,
) -> Result<Self::NestedData>
fn schematic( &self, io: &IoNodeBundle<Self>, cell: &mut CellBuilder<<Self as Schematic>::Schema>, ) -> Result<Self::NestedData>
Generates the block’s schematic.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.