Groonga 3.0.9 Source Code Document
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
print.c
Go to the documentation of this file.
1 #include "mruby.h"
2 #include "mruby/string.h"
3 #include <stdio.h>
4 
5 static void
6 printstr(mrb_state *mrb, mrb_value obj)
7 {
8  struct RString *str;
9  char *s;
10  int len;
11 
12  if (mrb_string_p(obj)) {
13  str = mrb_str_ptr(obj);
14  s = str->ptr;
15  len = str->len;
16  fwrite(s, len, 1, stdout);
17  }
18 }
19 
20 /* 15.3.1.2.9 */
21 /* 15.3.1.3.34 */
24 {
25  mrb_value argv;
26 
27  mrb_get_args(mrb, "o", &argv);
28  printstr(mrb, argv);
29 
30  return argv;
31 }
32 
33 void
35 {
36  struct RClass *krn;
37  krn = mrb->kernel_module;
38  mrb_define_method(mrb, krn, "__printstr__", mrb_printstr, MRB_ARGS_REQ(1));
39 }
40 
41 void
43 {
44 }