From 812cf0d2d0e72a6362d8fc763481db87e9d12f78 Mon Sep 17 00:00:00 2001 From: Moritz Gmeiner Date: Tue, 3 Sep 2024 16:50:52 +0200 Subject: [PATCH] added debug to lox_std --- interpreter/src/lox_std.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/interpreter/src/lox_std.rs b/interpreter/src/lox_std.rs index 7a3b9ae..1bd76b3 100644 --- a/interpreter/src/lox_std.rs +++ b/interpreter/src/lox_std.rs @@ -6,6 +6,7 @@ use crate::error::RuntimeError; pub fn init_std(env: &mut Runtime) { clock().register(env); + debug().register(env); exit().register(env); input().register(env); print_env().register(env); @@ -26,6 +27,18 @@ fn clock() -> LoxExternFunction { LoxExternFunction::new("clock", 0, closure) } +fn debug() -> LoxExternFunction { + let closure: ExternFunClosure = |args, _env| { + for arg in args { + println!("{arg:?}"); + } + + Ok(Value::Nil) + }; + + LoxExternFunction::new("debug", 1, closure) +} + fn exit() -> LoxExternFunction { let closure: ExternFunClosure = |args, _env| { assert_eq!(args.len(), 1);