Struct erg_compiler::hir::Literal
source · pub struct Literal {
pub value: ValueObj,
pub token: Token,
/* private fields */
}
Fields§
§value: ValueObj
§token: Token
Implementations§
Trait Implementations§
source§impl HasType for Literal
impl HasType for Literal
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 Literal
impl Locational for Literal
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 Literal
impl NestedDisplay for Literal
source§impl NoTypeDisplay for Literal
impl NoTypeDisplay for Literal
fn to_string_notype(&self) -> String
source§impl PartialEq<Literal> for Literal
impl PartialEq<Literal> for Literal
impl Eq for Literal
impl StructuralEq for Literal
impl StructuralPartialEq for Literal
Auto Trait Implementations§
impl !RefUnwindSafe for Literal
impl !Send for Literal
impl !Sync for Literal
impl Unpin for Literal
impl !UnwindSafe for Literal
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