diff options
author | Vincent Ambo <mail@tazj.in> | 2022-08-10T15·53+0300 |
---|---|---|
committer | tazjin <tazjin@tvl.su> | 2022-08-24T21·25+0000 |
commit | 92c53fe982560248dc7655a5605db5e3cfc35d04 (patch) | |
tree | 567f8bf95bbc3ae7e10e262c589769c05a372056 /tvix/eval/src/eval.rs | |
parent | b28da8ad56bd0d5dbf58926241060a6e4d34908b (diff) |
feat(tvix/tests): check in Nix' language test suite r/4461
This adds scaffolding code for running the Nix language test suite. The majority of eval-okay-* tests should eventually be runnable as-is by Tvix, however the eval-fail-* tests might not as we intend to have more useful error messages than upstream Nix. Change-Id: I4f3227f0889c55e4274b804a3072850fb78dd1bd Reviewed-on: https://cl.tvl.fyi/c/depot/+/6126 Tested-by: BuildkiteCI Autosubmit: tazjin <tazjin@tvl.su> Reviewed-by: grfn <grfn@gws.fyi>
Diffstat (limited to 'tvix/eval/src/eval.rs')
-rw-r--r-- | tvix/eval/src/eval.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/tvix/eval/src/eval.rs b/tvix/eval/src/eval.rs index 370aad494dda..5e6c53cd8bf5 100644 --- a/tvix/eval/src/eval.rs +++ b/tvix/eval/src/eval.rs @@ -1,9 +1,9 @@ use rnix::{self, types::TypedNode}; -use crate::errors::EvalResult; +use crate::{errors::EvalResult, value::Value}; -pub fn interpret(code: String) -> EvalResult<String> { - let ast = rnix::parse(&code); +pub fn interpret(code: &str) -> EvalResult<Value> { + let ast = rnix::parse(code); let errors = ast.errors(); if !errors.is_empty() { @@ -15,6 +15,5 @@ pub fn interpret(code: String) -> EvalResult<String> { let code = crate::compiler::compile(ast)?; println!("code: {:?}", code); - let value = crate::vm::run_chunk(code)?; - Ok(format!("value: {} :: {}", value, value.type_of())) + crate::vm::run_chunk(code) } |