2000-05-01 05:42:38 -04:00
|
|
|
/**********************************************************************
|
1998-01-16 07:13:05 -05:00
|
|
|
|
|
|
|
inits.c -
|
|
|
|
|
|
|
|
$Author$
|
|
|
|
created at: Tue Dec 28 16:01:58 JST 1993
|
|
|
|
|
* encoding.c: provide basic features for M17N.
* parse.y: encoding aware parsing.
* parse.y (pragma_encoding): encoding specification pragma.
* parse.y (rb_intern3): encoding specified symbols.
* string.c (rb_str_length): length based on characters.
for older behavior, bytesize method added.
* string.c (rb_str_index_m): index based on characters. rindex as
well.
* string.c (succ_char): encoding aware succeeding string.
* string.c (rb_str_reverse): reverse based on characters.
* string.c (rb_str_inspect): encoding aware string description.
* string.c (rb_str_upcase_bang): encoding aware case conversion.
downcase, capitalize, swapcase as well.
* string.c (rb_str_tr_bang): tr based on characters. delete,
squeeze, tr_s, count as well.
* string.c (rb_str_split_m): split based on characters.
* string.c (rb_str_each_line): encoding aware each_line.
* string.c (rb_str_each_char): added. iteration based on
characters.
* string.c (rb_str_strip_bang): encoding aware whitespace
stripping. lstrip, rstrip as well.
* string.c (rb_str_justify): encoding aware justifying (ljust,
rjust, center).
* string.c (str_encoding): get encoding attribute from a string.
* re.c (rb_reg_initialize): encoding aware regular expression
* sprintf.c (rb_str_format): formatting (i.e. length count) based
on characters.
* io.c (rb_io_getc): getc to return one-character string.
for older behavior, getbyte method added.
* ext/stringio/stringio.c (strio_getc): ditto.
* io.c (rb_io_ungetc): allow pushing arbitrary string at the
current reading point.
* ext/stringio/stringio.c (strio_ungetc): ditto.
* ext/strscan/strscan.c: encoding support.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@13261 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-08-24 23:29:39 -04:00
|
|
|
Copyright (C) 1993-2007 Yukihiro Matsumoto
|
1998-01-16 07:13:05 -05:00
|
|
|
|
2000-05-01 05:42:38 -04:00
|
|
|
**********************************************************************/
|
1998-01-16 07:13:05 -05:00
|
|
|
|
2007-06-09 23:06:15 -04:00
|
|
|
#include "ruby/ruby.h"
|
1998-01-16 07:13:05 -05:00
|
|
|
|
2007-02-05 07:21:01 -05:00
|
|
|
void Init_Array(void);
|
|
|
|
void Init_Bignum(void);
|
|
|
|
void Init_Binding(void);
|
|
|
|
void Init_Comparable(void);
|
2008-03-15 20:23:43 -04:00
|
|
|
void Init_Complex(void);
|
2007-12-10 00:01:47 -05:00
|
|
|
void Init_transcode(void);
|
2007-02-05 07:21:01 -05:00
|
|
|
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);
|
* blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c:
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12 00:25:46 -04:00
|
|
|
void Init_id(void);
|
2007-02-05 07:21:01 -05:00
|
|
|
void Init_process(void);
|
2008-06-19 22:46:17 -04:00
|
|
|
void Init_RandomSeed(void);
|
2007-02-05 07:21:01 -05:00
|
|
|
void Init_Random(void);
|
|
|
|
void Init_Range(void);
|
2008-03-15 20:23:43 -04:00
|
|
|
void Init_Rational(void);
|
2007-02-05 07:21:01 -05:00
|
|
|
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);
|
* vm.c: some refactoring.
* rename th_* to vm_*.
* remove unused variables functions.
* add prototypes.
* blockinlining.c, compile.c, cont.c, eval.c, eval_intern.h,
eval_jump.h, eval_load.c, inits.c, insns.def, iseq.c, parse.y,
proc.c, process.c, signal.c, thread.c, vm.c, vm_dump.c,
vm_evalbody.ci, yarvcore.c, yarvcore.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-06-24 11:42:41 -04:00
|
|
|
void Init_Cont(void);
|
* blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c:
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12 00:25:46 -04:00
|
|
|
void Init_top_self(void);
|
2007-10-13 13:20:42 -04:00
|
|
|
void Init_Encoding(void);
|
1998-01-16 07:19:22 -05:00
|
|
|
|
1998-01-16 07:13:05 -05:00
|
|
|
void
|
2006-12-31 10:02:22 -05:00
|
|
|
rb_call_inits()
|
1998-01-16 07:13:05 -05:00
|
|
|
{
|
2008-06-19 22:46:17 -04:00
|
|
|
Init_RandomSeed();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_sym();
|
* blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c:
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12 00:25:46 -04:00
|
|
|
Init_id();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_var_tables();
|
|
|
|
Init_Object();
|
* blockinlining.c: remove "yarv" prefix.
* array.c, numeric.c: ditto.
* insnhelper.ci, insns.def, vm_evalbody.ci: ditto.
* yarvcore.c: removed.
* yarvcore.h: renamed to core.h.
* cont.c, debug.c, error.c, process.c, signal.c : ditto.
* ext/probeprofiler/probeprofiler.c: ditto.
* id.c, id.h: added.
* inits.c: ditto.
* compile.c: rename internal functions.
* compile.h: fix debug flag.
* eval.c, object.c, vm.c: remove ruby_top_self.
use rb_vm_top_self() instead.
* eval_intern.h, eval_load: ditto.
* gc.c: rename yarv_machine_stack_mark() to
rb_gc_mark_machine_stack().
* insnhelper.h: remove unused macros.
* iseq.c: add iseq_compile() to create iseq object
from source string.
* proc.c: rename a internal function.
* template/insns.inc.tmpl: remove YARV prefix.
* thread.c:
* vm.c (rb_iseq_eval): added.
* vm.c: move some functions from yarvcore.c.
* vm_dump.c: fix to remove compiler warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@12741 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-07-12 00:25:46 -04:00
|
|
|
Init_top_self();
|
2007-10-13 13:20:42 -04:00
|
|
|
Init_Encoding();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_Comparable();
|
|
|
|
Init_Enumerable();
|
1999-08-13 01:45:20 -04:00
|
|
|
Init_Precision();
|
2007-08-15 03:50:11 -04:00
|
|
|
Init_String();
|
2007-08-14 06:53:53 -04:00
|
|
|
Init_Exception();
|
1998-01-16 07:19:22 -05:00
|
|
|
Init_eval();
|
2006-12-31 10:02:22 -05:00
|
|
|
Init_jump();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_Numeric();
|
|
|
|
Init_Bignum();
|
2003-08-14 23:01:52 -04:00
|
|
|
Init_syserr();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_Array();
|
|
|
|
Init_Hash();
|
|
|
|
Init_Struct();
|
|
|
|
Init_Regexp();
|
|
|
|
Init_pack();
|
2007-12-10 00:01:47 -05:00
|
|
|
Init_transcode();
|
2007-09-08 11:07:18 -04:00
|
|
|
Init_marshal();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_Range();
|
|
|
|
Init_IO();
|
|
|
|
Init_Dir();
|
|
|
|
Init_Time();
|
|
|
|
Init_Random();
|
|
|
|
Init_signal();
|
|
|
|
Init_process();
|
|
|
|
Init_load();
|
|
|
|
Init_Proc();
|
2003-12-18 22:58:57 -05:00
|
|
|
Init_Binding();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_Math();
|
|
|
|
Init_GC();
|
2005-07-14 11:15:22 -04:00
|
|
|
Init_Enumerator();
|
2007-02-05 07:21:01 -05:00
|
|
|
Init_VM();
|
* blockinlining.c, compile.c, compile.h, error.c, eval.c,
eval_intern.h, eval_jump.h, eval_load.c, eval_method.h,
eval_safe.h, gc.c, insnhelper.h, insns.def, iseq.c, proc.c,
process.c, signal.c, thread.c, thread_pthread.ci, thread_win32.ci,
vm.c, vm.h, vm_dump.c, vm_evalbody.ci, vm_macro.def,
yarv.h, yarvcore.h, yarvcore.c: change type and macro names:
* yarv_*_t -> rb_*_t
* yarv_*_struct -> rb_*_struct
* yarv_tag -> rb_vm_tag
* YARV_* -> RUBY_VM_*
* proc.c, vm.c: move functions about env object creation
from proc.c to vm.c.
* proc.c, yarvcore.c: fix rb_cVM initialization place.
* inits.c: change Init_ISeq() order (after Init_VM).
* ruby.h, proc.c: change declaration place of rb_cEnv
from proc.c to ruby.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@11651 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2007-02-06 14:00:03 -05:00
|
|
|
Init_ISeq();
|
2007-02-05 07:21:01 -05:00
|
|
|
Init_Thread();
|
2007-05-23 18:52:19 -04:00
|
|
|
Init_Cont();
|
2008-03-15 20:23:43 -04:00
|
|
|
Init_Rational();
|
|
|
|
Init_Complex();
|
1998-01-16 07:13:05 -05:00
|
|
|
Init_version();
|
|
|
|
}
|