Skip to main content

ShapeTaggedExt

Trait ShapeTaggedExt 

Source
pub trait ShapeTaggedExt<This>
where This: ShapeAlg + FieldAlg,
{ // Required methods fn sum_external<'w>( &self, alternatives: Vec<(Words<'w>, This::Ty)>, ) -> This::Ty; fn sum_internal<'w>( &self, tag: Words<'w>, alternatives: Vec<(Words<'w>, This::Ty)>, ) -> This::Ty; fn sum_adjacent<'w>( &self, tag: Words<'w>, content: Words<'w>, alternatives: Vec<(Words<'w>, This::Ty)>, ) -> This::Ty; }
Expand description

The encodings of a choice that state a discriminant, which is what needs a member to state it in.

Required Methods§

Source

fn sum_external<'w>(&self, alternatives: Vec<(Words<'w>, This::Ty)>) -> This::Ty

A choice written as one object per alternative, keyed by its name.

Source

fn sum_internal<'w>( &self, tag: Words<'w>, alternatives: Vec<(Words<'w>, This::Ty)>, ) -> This::Ty

A choice written as one object carrying its name under tag, beside its own members.

Source

fn sum_adjacent<'w>( &self, tag: Words<'w>, content: Words<'w>, alternatives: Vec<(Words<'w>, This::Ty)>, ) -> This::Ty

A choice written as one object carrying its name under tag and its value under content.

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl<This> ShapeTaggedExt<This> for This
where This: ShapeAlg + FieldAlg,

The encodings of a choice that state a discriminant, which is what needs a member to state it in.