deimos-lang/dmc-lib/src/ast/integer_literal.rs
2026-03-09 16:35:32 -05:00

32 lines
653 B
Rust

use crate::source_range::SourceRange;
use crate::type_info::TypeInfo;
pub struct IntegerLiteral {
value: i32,
source_range: SourceRange,
type_info: &'static TypeInfo,
}
impl IntegerLiteral {
pub fn new(value: i32, source_range: SourceRange) -> Self {
const TYPE_INFO: TypeInfo = TypeInfo::Integer;
Self {
value,
source_range,
type_info: &TYPE_INFO,
}
}
pub fn value(&self) -> i32 {
self.value
}
pub fn type_info(&self) -> &TypeInfo {
&self.type_info
}
pub fn source_range(&self) -> &SourceRange {
&self.source_range
}
}