/********************************************************************** env.h - $Author: matz $ $Date: 2006/02/13 09:10:55 $ created at: Mon Jul 11 11:53:03 JST 1994 Copyright (C) 1993-2003 Yukihiro Matsumoto **********************************************************************/ #ifndef ENV_H #define ENV_H extern struct FRAME { VALUE self; int argc; ID last_func; ID orig_func; VALUE last_class; struct FRAME *prev; struct FRAME *tmp; struct RNode *node; int iter; int flags; unsigned long uniq; } *ruby_frame; void rb_gc_mark_frame _((struct FRAME *)); #define FRAME_DMETH 1 #define FRAME_FUNC 2 extern struct SCOPE { struct RBasic super; ID *local_tbl; VALUE *local_vars; int flags; } *ruby_scope; #define SCOPE_ALLOCA 0 #define SCOPE_MALLOC 1 #define SCOPE_NOSTACK 2 #define SCOPE_DONT_RECYCLE 4 #define SCOPE_CLONE 8 extern int ruby_in_eval; extern VALUE ruby_class; struct RVarmap { struct RBasic super; ID id; VALUE val; struct RVarmap *next; }; extern struct RVarmap *ruby_dyna_vars; #endif /* ENV_H */