summaryrefslogtreecommitdiff
path: root/env.h
diff options
context:
space:
mode:
authormatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-02-03 09:15:42 +0000
committermatz <matz@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2006-02-03 09:15:42 +0000
commit5675cdbd418509bdb1abbc4442a681b808ed35e8 (patch)
treed731ff563b61a1983f234474bb3f72d190e8f91f /env.h
parente4f1feac3e807e2e3790237749cfdb7a6104fd90 (diff)
* eval.c: unify ruby_class (for method definition) and ruby_cbase
(for constant reference). * eval.c (rb_call0): use TMP_ALLOC() instead of allocating a temporary array object. * eval.c (eval): need not to protect $SAFE value. [ruby-core:07177] * error.c (Init_Exception): change NameError to direct subclass of Exception so that default rescue do not handle it silently. * struct.c (rb_struct_select): update RDoc description. [ruby-core:7254] * numeric.c (int_upto): return an enumerator if no block is attached to the method. * numeric.c (int_downto): ditto. * numeric.c (int_dotimes): ditto. * enum.c (enum_first): new method Enumerable#first to take first n element from an enumerable. * enum.c (enum_group_by): new method Enumerable#group_by that groups enumerable values according to their block values. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@9880 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'env.h')
-rw-r--r--env.h9
1 files changed, 3 insertions, 6 deletions
diff --git a/env.h b/env.h
index 9f14c2c65f..68346172db 100644
--- a/env.h
+++ b/env.h
@@ -22,7 +22,7 @@ RUBY_EXTERN struct FRAME {
struct FRAME *prev;
struct FRAME *tmp;
struct RNode *node;
- int iter;
+ struct BLOCK *block;
int flags;
unsigned long uniq;
} *ruby_frame;
@@ -45,8 +45,8 @@ RUBY_EXTERN struct SCOPE {
#define SCOPE_DONT_RECYCLE 4
RUBY_EXTERN int ruby_in_eval;
-
-RUBY_EXTERN VALUE ruby_class;
+VALUE ruby_current_class_object(void);
+#define ruby_class ruby_current_class_object()
struct RVarmap {
struct RBasic super;
@@ -72,7 +72,6 @@ struct BLOCK {
struct SCOPE *scope;
VALUE klass;
struct RNode *cref;
- int iter;
int vmode;
int flags;
int uniq;
@@ -80,8 +79,6 @@ struct BLOCK {
VALUE orig_thread;
VALUE wrapper;
VALUE block_obj;
- struct BLOCK *outer;
- struct BLOCK *prev;
};
#define BLOCK_D_SCOPE 1