Struct pax_compiler::manifest::ExpressionSpec
source · pub struct ExpressionSpec {
pub id: usize,
pub pascalized_return_type: String,
pub invocations: Vec<ExpressionSpecInvocation>,
pub output_statement: String,
pub input_statement: String,
pub is_repeat_source_iterable_expression: bool,
pub repeat_source_iterable_type_id_escaped: String,
}
Fields§
§id: usize
Unique id for vtable entry — used for binding a node definition property to vtable
pascalized_return_type: String
Used to wrap the return type in TypesCoproduct
invocations: Vec<ExpressionSpecInvocation>
Representations of symbols used in an expression, and the necessary metadata to “invoke” those symbols from the runtime
output_statement: String
String (RIL) representation of the compiled expression
input_statement: String
String representation of the original input statement
is_repeat_source_iterable_expression: bool
Special-handling for Repeat codegen
repeat_source_iterable_type_id_escaped: String
The PropertiesCoproduct variant (type_id_escaped) of the inner
type T
for some iterable repeat source type, e.g. Vec<T>
Trait Implementations§
source§impl Clone for ExpressionSpec
impl Clone for ExpressionSpec
source§fn clone(&self) -> ExpressionSpec
fn clone(&self) -> ExpressionSpec
Returns a copy 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<'de> Deserialize<'de> for ExpressionSpec
impl<'de> Deserialize<'de> for ExpressionSpec
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
source§impl Ord for ExpressionSpec
impl Ord for ExpressionSpec
source§impl PartialEq for ExpressionSpec
impl PartialEq for ExpressionSpec
source§impl PartialOrd for ExpressionSpec
impl PartialOrd for ExpressionSpec
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for ExpressionSpec
impl Serialize for ExpressionSpec
impl Eq for ExpressionSpec
Auto Trait Implementations§
impl RefUnwindSafe for ExpressionSpec
impl Send for ExpressionSpec
impl Sync for ExpressionSpec
impl Unpin for ExpressionSpec
impl UnwindSafe for ExpressionSpec
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
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.