Enum erg_compiler::hir::Signature
source · pub enum Signature {
Var(VarSignature),
Subr(SubrSignature),
}
Variants§
Var(VarSignature)
Subr(SubrSignature)
Implementations§
source§impl Signature
impl Signature
pub const fn is_subr(&self) -> bool
pub fn is_const(&self) -> bool
pub fn is_procedural(&self) -> bool
pub fn vis(&self) -> &VisibilityModifier
pub const fn inspect(&self) -> &Str
pub const fn ident(&self) -> &Identifier
pub fn ident_mut(&mut self) -> &mut Identifier
pub fn into_ident(self) -> Identifier
pub const fn name(&self) -> &VarName
pub fn t_spec(&self) -> Option<&TypeSpec>
pub fn params_mut(&mut self) -> Option<&mut Params>
Trait Implementations§
source§impl HasType for Signature
impl HasType for Signature
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 Signature
impl Locational for Signature
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 Signature
impl NestedDisplay for Signature
source§impl PartialEq<Signature> for Signature
impl PartialEq<Signature> for Signature
impl Eq for Signature
impl StructuralEq for Signature
impl StructuralPartialEq for Signature
Auto Trait Implementations§
impl !RefUnwindSafe for Signature
impl !Send for Signature
impl !Sync for Signature
impl Unpin for Signature
impl !UnwindSafe for Signature
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