diff options
Diffstat (limited to 'inits.c')
| -rw-r--r-- | inits.c | 185 |
1 files changed, 100 insertions, 85 deletions
@@ -3,99 +3,114 @@ inits.c - $Author$ - $Date$ created at: Tue Dec 28 16:01:58 JST 1993 Copyright (C) 1993-2007 Yukihiro Matsumoto **********************************************************************/ -#include "ruby/ruby.h" +#include "internal/inits.h" +#include "ruby.h" +#include "builtin.h" +static void Init_builtin_prelude(void); +#include "prelude.rbinc" -void Init_Array(void); -void Init_Bignum(void); -void Init_Binding(void); -void Init_Comparable(void); -void Init_transcode(void); -void Init_Dir(void); -void Init_Enumerable(void); -void Init_Enumerator(void); -void Init_Exception(void); -void Init_syserr(void); -void Init_eval(void); -void Init_load(void); -void Init_Proc(void); -void Init_File(void); -void Init_GC(void); -void Init_Hash(void); -void Init_IO(void); -void Init_Math(void); -void Init_marshal(void); -void Init_Numeric(void); -void Init_Object(void); -void Init_pack(void); -void Init_Precision(void); -void Init_sym(void); -void Init_id(void); -void Init_process(void); -void Init_Random(void); -void Init_Range(void); -void Init_Regexp(void); -void Init_signal(void); -void Init_String(void); -void Init_Struct(void); -void Init_Time(void); -void Init_var_tables(void); -void Init_version(void); -void Init_ISeq(void); -void Init_VM(void); -void Init_Thread(void); -void Init_Cont(void); -void Init_top_self(void); -void Init_Encoding(void); +#define CALL(n) {void Init_##n(void); Init_##n();} void -rb_call_inits() +rb_call_inits(void) { - Init_sym(); - Init_id(); - Init_var_tables(); - Init_Object(); - Init_top_self(); - Init_Encoding(); - Init_Comparable(); - Init_Enumerable(); - Init_Precision(); - Init_String(); - Init_Exception(); - Init_eval(); - Init_jump(); - Init_Numeric(); - Init_Bignum(); - Init_syserr(); - Init_Array(); - Init_Hash(); - Init_Struct(); - Init_Regexp(); - Init_pack(); - Init_transcode(); - Init_marshal(); - Init_Range(); - Init_IO(); - Init_Dir(); - Init_Time(); - Init_Random(); - Init_signal(); - Init_process(); - Init_load(); - Init_Proc(); - Init_Binding(); - Init_Math(); - Init_GC(); - Init_Enumerator(); - Init_VM(); - Init_ISeq(); - Init_Thread(); - Init_Cont(); - Init_version(); + CALL(default_shapes); + CALL(Thread_Mutex); + CALL(RandomSeedCore); + CALL(encodings); + CALL(sym); + CALL(var_tables); + CALL(Object); + CALL(top_self); + CALL(Encoding); + CALL(Comparable); + CALL(Enumerable); + CALL(String); + CALL(Exception); + CALL(eval); + CALL(jump); + CALL(Numeric); + CALL(Bignum); + CALL(syserr); + CALL(Array); + CALL(Hash); + CALL(Struct); + CALL(Regexp); + CALL(pack); + CALL(transcode); + CALL(marshal); + CALL(Range); + CALL(IO); + CALL(IO_Buffer) + CALL(Dir); + CALL(Time); + CALL(Random); + CALL(load); + CALL(Ruby_module); + CALL(Box); + CALL(Proc); + CALL(Binding); + CALL(Math); + CALL(GC); + CALL(WeakMap); + CALL(Enumerator); + CALL(Ractor); + CALL(VM); + CALL(ISeq); + CALL(Thread); + CALL(signal); + CALL(Cont); + CALL(Fiber_Scheduler); + CALL(process); + CALL(Rational); + CALL(Complex); + CALL(MemoryView); + CALL(pathname); + CALL(version); + CALL(vm_trace); + CALL(vm_stack_canary); + CALL(ast); + CALL(shape); + CALL(Prism); + CALL(unicode_version); + CALL(Set); + + // enable builtin loading + CALL(builtin); +} + +void +rb_call_builtin_inits(void) +{ +#define BUILTIN(n) CALL(builtin_##n) + BUILTIN(jit_hook); + BUILTIN(yjit); + BUILTIN(zjit); + BUILTIN(kernel); + BUILTIN(gc); + BUILTIN(ractor); + BUILTIN(numeric); + BUILTIN(io); + BUILTIN(dir); + BUILTIN(ast); + BUILTIN(trace_point); + BUILTIN(pack); + BUILTIN(pathname_builtin); + BUILTIN(warning); + BUILTIN(array); + BUILTIN(hash); + BUILTIN(symbol); + BUILTIN(timev); + BUILTIN(thread_sync); + BUILTIN(nilclass); + BUILTIN(marshal); + BUILTIN(jit_undef); + Init_builtin_prelude(); } +#undef CALL |
