From fd3af6aec88fe8ad01efb23f69a075f83ac91063 Mon Sep 17 00:00:00 2001 From: Yukihiro Matsumoto Date: Mon, 3 Sep 2012 00:41:09 +0900 Subject: introduce toplevel object main; close #327 --- src/kernel.c | 3 +++ src/state.c | 6 ++++-- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/kernel.c b/src/kernel.c index 9307f57e5..05868bc70 100644 --- a/src/kernel.c +++ b/src/kernel.c @@ -64,6 +64,9 @@ mrb_obj_inspect(mrb_state *mrb, mrb_value obj) else if (mrb_nil_p(obj)) { return mrb_str_new(mrb, "nil", 3); } + else if (mrb_type(obj) == MRB_TT_MAIN) { + return mrb_str_new(mrb, "main", 4); + } return mrb_funcall(mrb, obj, "to_s", 0, 0); } diff --git a/src/state.c b/src/state.c index 57f052569..6efacd68c 100644 --- a/src/state.c +++ b/src/state.c @@ -97,6 +97,8 @@ mrb_add_irep(mrb_state *mrb, int idx) mrb_value mrb_top_self(mrb_state *mrb) { - // for now - return mrb_nil_value(); + mrb_value v; + + MRB_SET_VALUE(v, MRB_TT_MAIN, value.i, 0); + return v; } -- cgit v1.2.3