diff options
author | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-03-11 00:20:45 +0000 |
---|---|---|
committer | ko1 <ko1@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2015-03-11 00:20:45 +0000 |
commit | 97e21517a3c79b9b144b7160afd545c283815413 (patch) | |
tree | 33343f1f486c1d1e1c3973a09756ce6c6c5affb7 /internal.h | |
parent | 9f21759c53934597aa2db6a68fffc2edd662b3ed (diff) | |
download | ruby-97e21517a3c79b9b144b7160afd545c283815413.tar.gz |
* internal.h: define struct MEMO.
* enum.c: use MEMO.
* enumerator.c: ditto.
* load.c: ditto.
* node.h: return (struct MEMO *) pointer.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'internal.h')
-rw-r--r-- | internal.h | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/internal.h b/internal.h index b146b46d30..0aa58439b5 100644 --- a/internal.h +++ b/internal.h @@ -596,6 +596,23 @@ CREF_OMOD_SHARED_UNSET(rb_cref_t *cref) cref->flags &= ~NODE_FL_CREF_OMOD_SHARED_; } +/* MEMO */ + +struct MEMO { + VALUE flags; + VALUE reserved; + VALUE v1; + VALUE v2; + union { + long cnt; + long state; + VALUE value; + VALUE (*func)(ANYARGS); + } u3; +}; + +#define MEMO_CAST(m) ((struct MEMO *)m) + struct vtm; /* defined by timev.h */ /* array.c */ |