Error Messaging Redesign

This commit contains the following:

* New data types to support full tracebacks
* New traceback data type used across stl and ast
* Updates to tests
* fixes for error messaging in sym and some stl functions
This commit is contained in:
Ava Apples Affine 2023-05-23 22:06:11 +00:00
parent 91ad4eed12
commit 789349df48
24 changed files with 837 additions and 374 deletions

View file

@ -80,8 +80,8 @@ mod decl_lib_tests {
let eval_result = eval(&lex(&doc3.to_string()).unwrap(), &mut syms);
if let Err(s) = eval_result {
assert_eq!(
s.to_string(),
"error in call to test: undefined symbol: test".to_string()
s.0.first().unwrap().message,
"(is an undefined symbol)".to_string()
);
} else {
assert!(false);