diff --git a/src/ast.rs b/src/ast.rs index d811fde..eacab4f 100644 --- a/src/ast.rs +++ b/src/ast.rs @@ -53,6 +53,7 @@ pub enum Constant { Boolean(bool), Number(i64), String(String), + EmptyTable, } impl Location { diff --git a/src/run.rs b/src/run.rs index 5707c67..da05448 100644 --- a/src/run.rs +++ b/src/run.rs @@ -68,6 +68,7 @@ impl Eval for Constant { Constant::Boolean(value) => Some(ValueInner::Boolean(*value)), Constant::Number(value) => Some(ValueInner::Number(*value)), Constant::String(value) => Some(ValueInner::String(value.clone())), + Constant::EmptyTable => Some(ValueInner::Table(Default::default())), } } } diff --git a/src/twopass.rs b/src/twopass.rs index 5acd9c2..fdeec0b 100644 --- a/src/twopass.rs +++ b/src/twopass.rs @@ -291,6 +291,7 @@ impl Eval for ast::Constant { ast::Constant::Boolean(value) => Some(types::ValueInner::Boolean(*value)), ast::Constant::Number(value) => Some(types::ValueInner::Number(*value)), ast::Constant::String(value) => Some(types::ValueInner::String(value.clone())), + ast::Constant::EmptyTable => Some(types::ValueInner::Table(Default::default())), } } }