pub struct Assignment {
pub doc: Option<DocBlock>,
pub visibility: Visibility,
pub id: Identifier,
pub specified_type: Option<TypeAnnotation>,
pub expression: Expression,
pub src_ref: SrcRef,
/* private fields */
}Expand description
Assignment specifying an identifier, type and value
Fields§
§doc: Option<DocBlock>Documentation.
visibility: VisibilityValue’s visibility
id: IdentifierAssignee
specified_type: Option<TypeAnnotation>Type of the assignee
expression: ExpressionValue to assign
src_ref: SrcRefSource code reference
Implementations§
Source§impl Assignment
impl Assignment
Sourcepub fn type_check(&self, found: Type) -> EvalResult<()>
pub fn type_check(&self, found: Type) -> EvalResult<()>
Check if the specified type matches the found type.
Source§impl Assignment
impl Assignment
Sourcepub fn new(
doc: Option<DocBlock>,
visibility: Visibility,
qualifier: Qualifier,
id: Identifier,
specified_type: Option<TypeAnnotation>,
expression: Expression,
src_ref: SrcRef,
) -> Self
pub fn new( doc: Option<DocBlock>, visibility: Visibility, qualifier: Qualifier, id: Identifier, specified_type: Option<TypeAnnotation>, expression: Expression, src_ref: SrcRef, ) -> Self
Create new assignment.
Trait Implementations§
Source§impl Clone for Assignment
impl Clone for Assignment
Source§fn clone(&self) -> Assignment
fn clone(&self) -> Assignment
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 Debug for Assignment
impl Debug for Assignment
Source§impl Display for Assignment
impl Display for Assignment
Source§impl Eval for Assignment
impl Eval for Assignment
Source§fn eval(&self, context: &mut EvalContext) -> EvalResult<Value>
fn eval(&self, context: &mut EvalContext) -> EvalResult<Value>
Evaluate a syntax element into a type
T.Source§impl Parse for Assignment
impl Parse for Assignment
fn parse(pair: Pair<'_>) -> ParseResult<Self>
Source§impl SrcReferrer for Assignment
impl SrcReferrer for Assignment
Source§impl TreeDisplay for Assignment
impl TreeDisplay for Assignment
Source§fn tree_print(&self, f: &mut Formatter<'_>, depth: TreeState) -> Result
fn tree_print(&self, f: &mut Formatter<'_>, depth: TreeState) -> Result
Write item into
f and use {:depth$} syntax in front of your single line
output to get proper indention.Source§fn display_tree(&self, f: &mut Formatter<'_>) -> Result
fn display_tree(&self, f: &mut Formatter<'_>) -> Result
Display as tree starting at depth
0.Source§fn debug_tree(&self, f: &mut Formatter<'_>) -> Result
fn debug_tree(&self, f: &mut Formatter<'_>) -> Result
Display as tree starting at given depth in debug mode
Auto Trait Implementations§
impl Freeze for Assignment
impl RefUnwindSafe for Assignment
impl !Send for Assignment
impl !Sync for Assignment
impl Unpin for Assignment
impl UnwindSafe for Assignment
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<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> ToCompactString for Twhere
T: Display,
impl<T> ToCompactString for Twhere
T: Display,
Source§fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>
Fallible version of
ToCompactString::to_compact_string() Read moreSource§fn to_compact_string(&self) -> CompactString
fn to_compact_string(&self) -> CompactString
Converts the given value to a
CompactString. Read more