diff --git a/schala-lang/language/src/tree_walk_eval/mod.rs b/schala-lang/language/src/tree_walk_eval/mod.rs index d0f376a..cb8c899 100644 --- a/schala-lang/language/src/tree_walk_eval/mod.rs +++ b/schala-lang/language/src/tree_walk_eval/mod.rs @@ -127,6 +127,24 @@ impl MemoryValue { } } +#[derive(Debug)] +enum RuntimeValue { + Expression(Expression), + Evaluated(Primitive), +} + +impl From for RuntimeValue { + fn from(expr: Expression) -> Self { + Self::Expression(expr) + } +} + +impl From for RuntimeValue { + fn from(prim: Primitive) -> Self { + Self::Evaluated(prim) + } +} + /// A fully-reduced value #[derive(Debug, Clone)] enum Primitive {