Sha256: e6f123f58f62c272e7cebc63efc4965e8b194b58f47dc50eb25e33dfac53d9ab
Contents?: true
Size: 1.36 KB
Versions: 3
Compression:
Stored size: 1.36 KB
Contents
/* ** print.c - Kernel.#p ** ** See Copyright Notice in mruby.h */ #include "mruby.h" #include "mruby/string.h" #include "mruby/variable.h" static void printstr(mrb_state *mrb, mrb_value obj) { #ifdef ENABLE_STDIO char *s; int len; if (mrb_string_p(obj)) { s = RSTRING_PTR(obj); len = RSTRING_LEN(obj); fwrite(s, len, 1, stdout); } #endif } MRB_API void mrb_p(mrb_state *mrb, mrb_value obj) { #ifdef ENABLE_STDIO mrb_value val; val = mrb_funcall(mrb, obj, "inspect", 0); if (!mrb_string_p(val)) { val = mrb_obj_as_string(mrb, obj); } printstr(mrb, val); putc('\n', stdout); #endif } MRB_API void mrb_print_error(mrb_state *mrb) { #ifdef ENABLE_STDIO mrb_value s; mrb_print_backtrace(mrb); s = mrb_funcall(mrb, mrb_obj_value(mrb->exc), "inspect", 0); if (mrb_string_p(s)) { fwrite(RSTRING_PTR(s), RSTRING_LEN(s), 1, stderr); putc('\n', stderr); } #endif } MRB_API void mrb_show_version(mrb_state *mrb) { mrb_value msg; msg = mrb_const_get(mrb, mrb_obj_value(mrb->object_class), mrb_intern_lit(mrb, "MRUBY_DESCRIPTION")); printstr(mrb, msg); printstr(mrb, mrb_str_new_lit(mrb, "\n")); } MRB_API void mrb_show_copyright(mrb_state *mrb) { mrb_value msg; msg = mrb_const_get(mrb, mrb_obj_value(mrb->object_class), mrb_intern_lit(mrb, "MRUBY_COPYRIGHT")); printstr(mrb, msg); printstr(mrb, mrb_str_new_lit(mrb, "\n")); }
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
webruby-0.9.3 | modules/mruby/src/print.c |
webruby-0.9.2 | modules/mruby/src/print.c |
webruby-0.9.1 | modules/mruby/src/print.c |