Struct erg_compiler::hir::Lambda
source · pub struct Lambda {
pub params: Params,
pub op: Token,
pub body: Block,
pub id: usize,
pub t: Type,
}
Fields§
§params: Params
§op: Token
§body: Block
§id: usize
§t: Type
Implementations§
Trait Implementations§
source§impl HasType for Lambda
impl HasType for Lambda
fn ref_t(&self) -> &Type
source§fn ref_mut_t(&mut self) -> &mut Type
fn ref_mut_t(&mut self) -> &mut Type
x.ref_mut_t()
may panic, in which case x
is Call
and x.ref_t() == Type::Failure
.fn signature_t(&self) -> Option<&Type>
fn signature_mut_t(&mut self) -> Option<&mut Type>
fn t(&self) -> Type
fn inner_ts(&self) -> Vec<Type>
fn lhs_t(&self) -> &Type
fn rhs_t(&self) -> &Type
source§impl Locational for Lambda
impl Locational for Lambda
source§fn loc(&self) -> Location
fn loc(&self) -> Location
NOTE:
loc
cannot be treated as a light method when self
is a large grammatical element.
If possible, delay the computation by passing &impl Locational
or other means.fn ln_begin(&self) -> Option<u32>
fn ln_end(&self) -> Option<u32>
fn col_begin(&self) -> Option<u32>
fn col_end(&self) -> Option<u32>
source§impl NestedDisplay for Lambda
impl NestedDisplay for Lambda
source§impl NoTypeDisplay for Lambda
impl NoTypeDisplay for Lambda
fn to_string_notype(&self) -> String
source§impl PartialEq<Lambda> for Lambda
impl PartialEq<Lambda> for Lambda
impl Eq for Lambda
impl StructuralEq for Lambda
impl StructuralPartialEq for Lambda
Auto Trait Implementations§
impl !RefUnwindSafe for Lambda
impl !Send for Lambda
impl !Sync for Lambda
impl Unpin for Lambda
impl !UnwindSafe for Lambda
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