pub struct ConstructData<'brand, J> { /* private fields */ }
Implementations§
Trait Implementations§
Source§impl<'brand, J: Clone> Clone for ConstructData<'brand, J>
impl<'brand, J: Clone> Clone for ConstructData<'brand, J>
Source§fn clone(&self) -> ConstructData<'brand, J>
fn clone(&self) -> ConstructData<'brand, J>
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<'brand, J> CoreConstructible<'brand> for ConstructData<'brand, J>
impl<'brand, J> CoreConstructible<'brand> for ConstructData<'brand, J>
fn iden(inference_context: &Context<'brand>) -> Self
fn unit(inference_context: &Context<'brand>) -> Self
fn injl(child: &Self) -> Self
fn injr(child: &Self) -> Self
fn take(child: &Self) -> Self
fn drop_(child: &Self) -> Self
fn comp(left: &Self, right: &Self) -> Result<Self, Error>
fn case(left: &Self, right: &Self) -> Result<Self, Error>
fn assertl(left: &Self, right: Cmr) -> Result<Self, Error>
fn assertr(left: Cmr, right: &Self) -> Result<Self, Error>
fn pair(left: &Self, right: &Self) -> Result<Self, Error>
fn fail(inference_context: &Context<'brand>, entropy: FailEntropy) -> Self
fn const_word(inference_context: &Context<'brand>, word: Word) -> Self
Source§fn inference_context(&self) -> &Context<'brand>
fn inference_context(&self) -> &Context<'brand>
Accessor for the type inference context used to create the object.
Source§fn scribe(ctx: &Context<'brand>, value: &Value) -> Self
fn scribe(ctx: &Context<'brand>, value: &Value) -> Self
Create an expression that produces the given
value
. Read moreSource§fn bit_false(inference_context: &Context<'brand>) -> Self
fn bit_false(inference_context: &Context<'brand>) -> Self
Create a DAG that takes any input and returns bit
0
as constant output. Read moreSource§fn bit_true(inference_context: &Context<'brand>) -> Self
fn bit_true(inference_context: &Context<'brand>) -> Self
Create a DAG that takes any input and returns bit
1
as constant output. Read moreSource§fn cond(left: &Self, right: &Self) -> Result<Self, Error>
fn cond(left: &Self, right: &Self) -> Result<Self, Error>
Create a DAG that takes a bit and an input,
such that the
left
child is evaluated on the input if the bit is 1
(if branch)
and the right
child is evaluated on the input otherwise (else branch). Read moreSource§fn assert(child: &Self, hash: Cmr) -> Result<Self, Error>
fn assert(child: &Self, hash: Cmr) -> Result<Self, Error>
Create a DAG that asserts that its child returns
true
, and fails otherwise.
The hash
identifies the assertion and is returned upon failure. Read moreSource§fn not(child: &Self) -> Result<Self, Error>
fn not(child: &Self) -> Result<Self, Error>
Create a DAG that computes Boolean NOT of the
child
. Read moreSource§impl<'brand, J: Debug> Debug for ConstructData<'brand, J>
impl<'brand, J: Debug> Debug for ConstructData<'brand, J>
Source§impl<'brand, J: Jet> DisconnectConstructible<'brand, Option<Arc<Node<Construct<'brand, J>>>>> for ConstructData<'brand, J>
impl<'brand, J: Jet> DisconnectConstructible<'brand, Option<Arc<Node<Construct<'brand, J>>>>> for ConstructData<'brand, J>
fn disconnect( left: &Self, right: &Option<Arc<ConstructNode<'brand, J>>>, ) -> Result<Self, Error>
Source§impl<'brand, J: Jet> JetConstructible<'brand, J> for ConstructData<'brand, J>
impl<'brand, J: Jet> JetConstructible<'brand, J> for ConstructData<'brand, J>
Auto Trait Implementations§
impl<'brand, J> Freeze for ConstructData<'brand, J>
impl<'brand, J> !RefUnwindSafe for ConstructData<'brand, J>
impl<'brand, J> Send for ConstructData<'brand, J>where
J: Send,
impl<'brand, J> Sync for ConstructData<'brand, J>where
J: Sync,
impl<'brand, J> Unpin for ConstructData<'brand, J>where
J: Unpin,
impl<'brand, J> !UnwindSafe for ConstructData<'brand, J>
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