Introduce NodeId for AST and synthetic slices

This commit is contained in:
Giulio Agostini
2026-06-30 14:05:46 +02:00
parent ef8abda048
commit d40fe2a550
11 changed files with 504 additions and 170 deletions
+7 -7
View File
@@ -398,7 +398,7 @@ impl Add for BaseValue {
Ok(BaseValue::String(format!("{}{}", a, b)))
}
_ => runtime_error(
SourceSlice::default(),
SourceSlice::synthetic(),
"Cannot add non-numeric values".to_string(),
),
}
@@ -428,7 +428,7 @@ impl Sub for BaseValue {
match (self, other) {
(BaseValue::Number(a), BaseValue::Number(b)) => Ok(BaseValue::Number(a.sub(b))),
_ => runtime_error(
SourceSlice::default(),
SourceSlice::synthetic(),
"Cannot subtract non-numeric values".to_string(),
),
}
@@ -442,10 +442,10 @@ impl Div for BaseValue {
match (self, other) {
(BaseValue::Number(a), BaseValue::Number(b)) => match a.div(b) {
Some(result) => Ok(BaseValue::Number(result)),
None => runtime_error(SourceSlice::default(), "Division by zero".to_string()),
None => runtime_error(SourceSlice::synthetic(), "Division by zero".to_string()),
},
_ => runtime_error(
SourceSlice::default(),
SourceSlice::synthetic(),
"Cannot divide non-numeric values".to_string(),
),
}
@@ -459,7 +459,7 @@ impl Mul for BaseValue {
match (self, other) {
(BaseValue::Number(a), BaseValue::Number(b)) => Ok(BaseValue::Number(a.mul(b))),
_ => runtime_error(
SourceSlice::default(),
SourceSlice::synthetic(),
"Cannot multiply non-numeric values".to_string(),
),
}
@@ -473,10 +473,10 @@ impl Rem for BaseValue {
match (self, other) {
(BaseValue::Number(a), BaseValue::Number(b)) => match a.rem(b) {
Some(result) => Ok(BaseValue::Number(result)),
None => runtime_error(SourceSlice::default(), "Division by zero".to_string()),
None => runtime_error(SourceSlice::synthetic(), "Division by zero".to_string()),
},
_ => runtime_error(
SourceSlice::default(),
SourceSlice::synthetic(),
"Cannot divide non-numeric values".to_string(),
),
}