Struct erg_compiler::hir::PatchDef
source · pub struct PatchDef {
pub sig: Signature,
pub base: Box<Expr>,
pub methods: Block,
}
Fields§
§sig: Signature
§base: Box<Expr>
§methods: Block
Implementations§
Trait Implementations§
source§impl HasType for PatchDef
impl HasType for PatchDef
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 PatchDef
impl Locational for PatchDef
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 PatchDef
impl NestedDisplay for PatchDef
source§impl NoTypeDisplay for PatchDef
impl NoTypeDisplay for PatchDef
fn to_string_notype(&self) -> String
source§impl PartialEq<PatchDef> for PatchDef
impl PartialEq<PatchDef> for PatchDef
impl Eq for PatchDef
impl StructuralEq for PatchDef
impl StructuralPartialEq for PatchDef
Auto Trait Implementations§
impl !RefUnwindSafe for PatchDef
impl !Send for PatchDef
impl !Sync for PatchDef
impl Unpin for PatchDef
impl !UnwindSafe for PatchDef
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