pub struct Judge { /* private fields */ }Expand description
Judges JSON against a shape, spelling names as the surface spells them.
Implementations§
Trait Implementations§
impl Copy for Judge
Source§impl ShapeAlg for Judge
impl ShapeAlg for Judge
Source§fn literal(&self, text: &str) -> Judgement
fn literal(&self, text: &str) -> Judgement
One fixed piece of text, as a value: content that happens to be constant.
Source§fn name_word(&self, words: Words<'_>) -> Judgement
fn name_word(&self, words: Words<'_>) -> Judgement
A value whose content is a name, spelled however the interpretation spells names. Read more
Source§fn int(&self, signed: bool, bits: u16) -> Judgement
fn int(&self, signed: bool, bits: u16) -> Judgement
An integer of a stated width and signedness.
Source§fn hex(&self, item: Judgement) -> Judgement
fn hex(&self, item: Judgement) -> Judgement
Written as
0x-prefixed hexadecimal, rather than however the item would appear alone.Source§fn decimal(&self, item: Judgement) -> Judgement
fn decimal(&self, item: Judgement) -> Judgement
Written as decimal digits in text, which is what a width beyond a JSON number requires.
Source§fn map(&self, _key: Judgement, value: Judgement) -> Judgement
fn map(&self, _key: Judgement, value: Judgement) -> Judgement
An association from one shape to another.
Source§fn choice(&self, alternatives: Vec<Judgement>) -> Judgement
fn choice(&self, alternatives: Vec<Judgement>) -> Judgement
A choice between alternatives, carrying no discriminant of its own. Read more
Auto Trait Implementations§
impl Freeze for Judge
impl RefUnwindSafe for Judge
impl Send for Judge
impl Sync for Judge
impl Unpin for Judge
impl UnsafeUnpin for Judge
impl UnwindSafe for Judge
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<This> ShapeDeclareExt<This> for This
impl<This> ShapeDeclareExt<This> for This
Source§impl<This> ShapeExt<This> for Thiswhere
This: ShapeAlg,
impl<This> ShapeExt<This> for Thiswhere
This: ShapeAlg,
Source§fn bytes_array(&self) -> <This as Sorts>::Ty
fn bytes_array(&self) -> <This as Sorts>::Ty
Bytes written as an array of JSON numbers, which is a sequence of octets and nothing more.
Source§fn int_decimal(&self, signed: bool, bits: u16) -> <This as Sorts>::Ty
fn int_decimal(&self, signed: bool, bits: u16) -> <This as Sorts>::Ty
An integer written as decimal digits, for a width a JSON number cannot hold.
Source§fn int_hex(&self, signed: bool, bits: u16) -> <This as Sorts>::Ty
fn int_hex(&self, signed: bool, bits: u16) -> <This as Sorts>::Ty
An integer written as a 0x quantity, as the Ethereum JSON-RPC specification states one.
Source§fn named_product(
&self,
words: &[&str],
fields: Vec<<This as Sorts>::Field>,
) -> <This as Sorts>::Ty
fn named_product( &self, words: &[&str], fields: Vec<<This as Sorts>::Field>, ) -> <This as Sorts>::Ty
A named product: the shape most types have.
Source§impl<This> ShapeProgramExt<This> for This
impl<This> ShapeProgramExt<This> for This
Source§fn compile_shape<Program>(
&self,
program: Program,
) -> <Program as ShapeProgramAlg<This>>::Tywhere
Program: ShapeProgramAlg<This>,
fn compile_shape<Program>(
&self,
program: Program,
) -> <Program as ShapeProgramAlg<This>>::Tywhere
Program: ShapeProgramAlg<This>,
Folds a declaration with this interpretation.
Source§impl<This> ShapeTaggedExt<This> for This
impl<This> ShapeTaggedExt<This> for This
Source§fn sum_external<'w>(
&self,
alternatives: Vec<(&'w [&'w str], <This as Sorts>::Ty)>,
) -> <This as Sorts>::Ty
fn sum_external<'w>( &self, alternatives: Vec<(&'w [&'w str], <This as Sorts>::Ty)>, ) -> <This as Sorts>::Ty
A choice written as one object per alternative, keyed by its name.