summaryrefslogtreecommitdiffhomepage
path: root/include/mruby.h
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2018-05-24 15:19:06 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2018-07-30 22:57:54 +0900
commit891839b976c75c77f238931123ac472e3284e95d (patch)
treebbecccdb4cea0f3272a966e39cdfebfda7eb5295 /include/mruby.h
parentb09d2eb90074c50ed83d4d10d3fe0393bc9e43da (diff)
downloadmruby-891839b976c75c77f238931123ac472e3284e95d.tar.gz
mruby-891839b976c75c77f238931123ac472e3284e95d.zip
New bytecode implementation of mruby VM.
Diffstat (limited to 'include/mruby.h')
-rw-r--r--include/mruby.h16
1 files changed, 8 insertions, 8 deletions
diff --git a/include/mruby.h b/include/mruby.h
index b0bfe78b5..7cbc690b3 100644
--- a/include/mruby.h
+++ b/include/mruby.h
@@ -93,7 +93,7 @@
*/
MRB_BEGIN_DECL
-typedef uint32_t mrb_code;
+typedef uint8_t mrb_code;
/**
* Required arguments signature type.
@@ -123,9 +123,9 @@ typedef struct {
mrb_sym mid;
struct RProc *proc;
mrb_value *stackent;
- int nregs;
- int ridx;
- int epos;
+ uint16_t nregs;
+ uint16_t ridx;
+ uint16_t epos;
struct REnv *env;
mrb_code *pc; /* return address */
mrb_code *err; /* error position */
@@ -152,10 +152,10 @@ struct mrb_context {
mrb_callinfo *ci;
mrb_callinfo *cibase, *ciend;
- mrb_code **rescue; /* exception handler stack */
+ uint16_t *rescue; /* exception handler stack */
int rsize;
struct RProc **ensure; /* ensure handler stack */
- int esize, eidx;
+ uint8_t esize, eidx;
enum mrb_fiber_state status;
mrb_bool vmexec;
@@ -486,9 +486,10 @@ MRB_API void mrb_define_const(mrb_state*, struct RClass*, const char *name, mrb_
* }
* @param [mrb_state*] mrb_state* The mruby state reference.
* @param [struct RClass*] RClass* A class the method will be undefined from.
- * @param [const char*] constchar* The name of the method to be undefined.
+ * @param [const char] const char* The name of the method to be undefined.
*/
MRB_API void mrb_undef_method(mrb_state*, struct RClass*, const char*);
+MRB_API void mrb_undef_method_id(mrb_state*, struct RClass*, mrb_sym);
/**
* Undefine a class method.
@@ -1197,7 +1198,6 @@ typedef enum call_type {
CALL_TYPE_MAX
} call_type;
-MRB_API void mrb_define_alias(mrb_state *mrb, struct RClass *klass, const char *name1, const char *name2);
MRB_API const char *mrb_class_name(mrb_state *mrb, struct RClass* klass);
MRB_API void mrb_define_global_const(mrb_state *mrb, const char *name, mrb_value val);