diff options
author | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-10-26 17:27:32 +0000 |
---|---|---|
committer | mame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-10-26 17:27:32 +0000 |
commit | a11576816197d75fa17d959e74cabb612ba8b8be (patch) | |
tree | 22614a970841b61b3ac1bac4dca118b5561e4ed2 /constant.h | |
parent | e169ea0cacc981c506f75a2d3e093558e599d21d (diff) |
* class.c, constant.h, gc.c, method.h, object.c, variable.c,
vm_insnhelper.c: use struct rb_constant_entry_t as entry of
RCLASS_CONST_TBL. RCLASS_CONST_TBL has contained VALUE of constant
directly. Now instead rb_const_entry_t is contained in
RCLASS_CONST_TBL, rb_const_entry_t is managed by malloc, and
have not only the value itself but also visibility flag.
This is another preparation for private constant (see
[ruby-dev:39685][ruby-core:32698]).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29602 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'constant.h')
-rw-r--r-- | constant.h | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/constant.h b/constant.h new file mode 100644 index 0000000000..5c04b01f41 --- /dev/null +++ b/constant.h @@ -0,0 +1,26 @@ +/********************************************************************** + + constant.h - + + $Author$ + created at: Sun Nov 15 00:09:33 2009 + + Copyright (C) 2009 Yusuke Endoh + +**********************************************************************/ +#ifndef CONSTANT_H +#define CONSTANT_H + +typedef enum { + CONST_PUBLIC = 0x00, + CONST_PRIVATE = 0x01, +} rb_const_flag_t; + +typedef struct rb_const_entry_struct { + rb_const_flag_t flag; + VALUE value; /* should be mark */ +} rb_const_entry_t; + +void rb_free_const_table(st_table *tbl); + +#endif /* CONSTANT_H */ |