summaryrefslogtreecommitdiff
path: root/README.EXT
diff options
context:
space:
mode:
Diffstat (limited to 'README.EXT')
-rw-r--r--README.EXT308
1 files changed, 308 insertions, 0 deletions
diff --git a/README.EXT b/README.EXT
new file mode 100644
index 0000000000..efa627a24a
--- /dev/null
+++ b/README.EXT
@@ -0,0 +1,308 @@
+.\" README.EXT - -*- Text -*- created at: Mon Aug 7 16:45:54 JST 1995
+
+Ruby���ĥ���뤿�����ˡ����⤹�롥
+
+Ruby��C�����ɤ�񤯤��Ȥˤ�äơ���ñ�˵�ǽ���ɲäǤ��롥�����ޤ��ʼ�
+��ϰʲ����̤�Ǥ��롥
+
+ 1. �ե�������Ѱդ���
+
+ ext�ǥ��쥯�ȥ�β��˳�ĥ�⥸�塼���ѤΥǥ��쥯�ȥ���Ѱդ��ơ���
+ ���۲��˰ʲ��Υե�������Ѱդ���ɬ�פ����롥
+
+ + MANIFEST��ɬ�פʥե�����ΰ�����
+
+ ɬ��ɬ�ס����Ū�ʥե�����ʳ������ƤΥե�����̾��1��1�ե�����
+ �η����ǵ��Ҥ��뤳�ȡ�
+
+ + C�Υ������ե����롥
+
+ �⥸�塼�뤬1�ե������������ʤ���ϥ⥸�塼��̾��Ʊ��̾���Υե�
+ ����̾(�⥸�塼��.c)��Ĥ��롥�դ˥⥸�塼�뤬ʣ������ʤ����
+ �⥸�塼��̾�ΤĤ����������ե�������򤱤뤳�ȡ�
+
+ + extconf.rb(optional)�������ѥե����롥
+
+ �ؿ���饤�֥�ꡤ�إå���¸�ߥ����å��򤷤��ꡤ�⥸�塼��̾��
+ �ɤ����ꤹ�롥���Υե����뤬̵��������ƥǥե���Ȥǥ���ѥ���
+ ����롥
+
+ + depend(optional)��Makefile�˥��󥯥롼�ɤ��뤿��Υե�
+ ����ΰ�¸�ط��򵭽Ҥ����ե����롥
+
+ `gcc -MM *.c > depend'�Ȥ���м�ưŪ�������Ǥ��롥
+
+ 2. C�Υ������ե�������Ѱդ���
+
+ ɬ����Init_�⥸�塼��̾�פȤ����ؿ����Ѱդ���������ǡ��ѿ��䥯��
+ ��������䡤���饹�ؤΥ᥽�åɤ���Ͽ�ʤɤν������Ԥ����ȡ�����
+ �ؿ��θƤӽФ��ϥ��󥿥ץ꥿�ν������(��Ū��󥯤ξ��)���⥸�塼
+ ��Υ����ɻ�(ưŪ��󥯤ξ��)�˼�ưŪ�˹Ԥ��롥
+
+* Ruby API
+
+C���줫��Ruby�ε�ǽ�����Ѥ���API�ϰʲ����̤�Ǥ��롥
+
+** ��
+
+ VALUE
+
+ Ruby���֥������Ȥ�ɽ�����뷿��ɬ�פ˱����ƥ��㥹�Ȥ����Ѥ��롥�Ȥ�
+ ���߷���ɽ������C�η���ruby.h�˵��Ҥ��Ƥ���R�ǻϤޤ빽¤�ΤǤ��롥
+ VALUE���򤳤��˥��㥹�Ȥ��뤿���R�ǻϤޤ빽¤��̾��������ʸ����
+ ����̾���Υޥ������Ѱդ���Ƥ��롥
+
+** �ѿ������
+
+ Qnil
+
+ ���: nil���֥�������
+
+ Qself
+
+ �ѿ�: ���ߤ�self���֥������Ȥ��͡����̤˥᥽�åɤˤ�self��ؤ�����
+ ��Ϳ������Τ�, �����ѿ��˥�����������ɬ�פϤʤ��������ѿ����ͤ�
+ �ѹ�������ϰʸ��self���ͤ��Τ�Τ��Ѥ�äƤ��ޤ��Τ�, ���̤ʻ���
+ ���ʤ��¤��������ƤϤʤ�ʤ���
+
+ TRUE
+
+ ���: t���֥�������(���Υǥե������)
+
+ FALSE
+
+ ���: nil���֥�������
+
+** C�ǡ����Υ��ץ��벽
+
+ VALUE data_new(void *sval, void (*mark)(), void (*free)())
+
+ C��Ǥ�դΥݥ��󥿤򥫥ץ��벽����ruby���֥������Ȥ��֤������Υݥ���
+ ����ruby���饢����������ʤ��ʤä�����free�ǻ��ꤷ���ؿ����ƤФ�롥
+ �ޤ������Υݥ��󥿤λؤ��ǡ�����¾��ruby���֥������Ȥ�ؤ��Ƥ����
+ �硤mark�˻��ꤹ��ؿ��ǥޡ�������ɬ�פ����롥
+
+ Make_Data_Struct(obj, iv, type, mark, free, sval)
+
+ type���Υ����malloc�����ѿ�sval�����������塤����򥫥ץ��벽��
+ ���ǡ�����obj�Υ��󥹥����ѿ�iv����������ޥ�����
+
+ Get_Data_Struct(obj, iv, type, sval)
+
+ obj�Υ��󥹥����ѿ�iv���ؤ��ǡ�������type���Υݥ��󥿤���Ф�
+ �ѿ�sval����������ޥ�����
+
+** ���饹/�⥸�塼�����
+
+ VALUE rb_define_class(char *name, VALUE super)
+
+ super�Υ��֥��饹�Ȥ��ƿ�����Ruby���饹��������롥
+
+ VALUE rb_define_module(char *name)
+
+ ������Ruby�⥸�塼���������롥
+
+ void rb_include_module(VALUE class, VALUE module)
+
+ �⥸�塼��򥤥󥯥롼�ɤ��롥class�����Ǥ�module�򥤥󥯥롼�ɤ���
+ ������ˤϲ��⤷�ʤ�(¿�ť��󥯥롼�ɤζػ�)��
+
+ void rb_extend_object(VALUE object, VALUE module)
+
+ ���֥������Ȥ�⥸�塼��(���������Ƥ���᥽�å�)�dz�ĥ���롥
+
+** ����ѿ����
+
+ void rb_define_variable(char *name, VALUE *var)
+
+ Ruby��C�ȤǶ�ͭ���륰�����Х��ѿ���������롥�ѿ�̾��`$'�ǻϤޤ��
+ �����ˤϼ�ưŪ���ɲä���롥name�Ȥ���ruby�μ��̻ҤȤ��Ƶ�����ʤ�
+ ʸ��(�㤨��` ')��ޤ���ˤ�ruby�ץ�����फ��ϸ����ʤ��ʤ롥
+
+ void rb_define_readonly_variable(char *name, VALUE *var)
+
+ Ruby��C�ȤǶ�ͭ����read only�Υ������Х��ѿ���������롥read only��
+ ���뤳�Ȱʳ���rb_define_variable()��Ʊ����
+
+ void rb_define_virtual_variable(char *name,
+ VALUE (*getter)(), VALUE (*setter)())
+
+ �ؿ��ˤ�äƼ¸������Ruby�ѿ���������롥�ѿ������Ȥ��줿���ˤ�
+ getter�����ؿ����ͤ����åȤ��줿���ˤ�setter���ƤФ�롥
+
+ void rb_define_hooked_variable(char *name, VALUE *var,
+ VALUE (*getter)(), VALUE (*setter)())
+
+ �ؿ��ˤ�ä�hook�ΤĤ���줿�������Х��ѿ���������롥�ѿ������Ȥ�
+ �줿���ˤ�getter�����ؿ����ͤ����åȤ��줿���ˤ�setter���ƤФ�롥
+ getter��setter��0����ꤷ�����ˤ�hook����ꤷ�ʤ��Τ�Ʊ�����ˤʤ롥
+
+ void rb_global_variable(VALUE *var)
+
+ GC�Τ��ᡤRuby�ץ�����फ��ϥ�����������ʤ���, Ruby���֥�������
+ ��ޤ�����ѿ���ޡ������롥
+
+** ���饹���
+
+ void rb_define_const(VALUE class, char *name, VALUE val)
+
+ ���饹�����������롥
+
+** �᥽�å����
+
+ rb_define_method(VALUE class, char *name, VALUE (*func)(), int argc)
+
+ �᥽�åɤ�������롥argc��self����������ο���argc��-1�λ�, �ؿ���
+ �ϰ����ο�(self��ޤޤʤ�)����1����, �������������2�����Ȥ������
+ ��Ϳ������(��3������self)��argc��-2�λ�, ������self, args(args��
+ ������ޤ�ruby������)�Ȥ���������Ϳ�����롥
+
+ rb_define_private_method(VALUE class, char *name, VALUE (*func)(), int argc)
+
+ private�᥽�åɤ�������롥������rb_define_method()��Ʊ����
+
+ rb_define_singleton_method(VALUE class, char *name, VALUE (*func)(), int argc)
+
+ �ðۥ᥽�åɤ�������롥������rb_define_method()��Ʊ����
+
+ rb_scan_args(int atgc, VALUE *argv, char *fmt, ...)
+
+ argc,argv������Ϳ����줿������ʬ�򤹤롥fmt��ɬ�ܰ����ο�, �ղð�
+ ���ο�, �Ĥ�ΰ��������뤫����ꤹ��ʸ�����, "��������*"�Ȥ�������
+ �Ǥ��롥 2 ���ܤο�����"*"�Ϥ��줾���ά��ǽ�Ǥ��롥ɬ�ܰ��������
+ ��ʤ�����0����ꤹ�롥��3�����ʹߤ��ѿ��ؤΥݥ��󥿤�, ��������
+ ���Ǥ������ѿ��˳�Ǽ����롥�ղð������б����������Ϳ�����Ƥ���
+ �������ѿ���Qnil����������롥
+
+** Ruby�᥽�åɸƤӽФ�
+
+ VALUE rb_funcall(VALUE recv, ID mid, int narg, ...)
+
+ �᥽�åɸƤӽФ���ʸ���󤫤�mid�����뤿��ˤ�rb_intern()��Ȥ���
+
+ VALUE rb_funcall2(VALUE recv, ID mid, int argc, VALUE *argv)
+
+ �᥽�åɸƤӽФ���������argc,argv�������Ϥ���
+
+ VALUE rb_eval_string(char *str)
+
+ ʸ�����ruby�ȥ�����ץȤ��ƥ���ѥ��롦�¹Ԥ��롥
+
+ ID rb_intern(char *name)
+
+ ʸ������б�����ID���֤���
+
+ char *rb_id2name(ID id)
+
+ ID���б�����ʸ������֤�(�ǥХå���)��
+
+ char *rb_class2name(VALUE class)
+
+ class��̾�����֤�(�ǥХå���)��class��̾��������ʤ����ˤ�, ���ֶ�
+ ��̾������ĥ��饹��̾�����֤���
+
+** ���󥹥����ѿ�
+
+ VALUE rb_iv_get(VALUE obj, char *name)
+
+ obj�Υ��󥹥����ѿ����ͤ����롥`@'�ǻϤޤ�ʤ����󥹥����ѿ���
+ Ruby�ץ�����फ�饢�������Ǥ��ʤ��ֱ��줿�ץ��󥹥����ѿ��ˤʤ롥
+
+ VALUE rb_iv_set(VALUE obj, char *name, VALUE val)
+
+ obj�Υ��󥹥����ѿ���val�˥��åȤ��롥
+
+** ���湽¤
+
+ VALUE rb_iterate(VALUE (*func1)(), void *arg1, VALUE (*func2)(), void *arg2)
+
+ func2��֥��å��Ȥ������ꤷ, func1�򥤥ƥ졼���Ȥ��ƸƤ֡� func1��
+ �� arg1�������Ȥ����Ϥ���, func2�ˤ���1�����˥��ƥ졼������Ϳ�����
+ ����, ��2������arg2���Ϥ���롥
+
+ VALUE rb_yield(VALUE val)
+
+ val���ͤȤ��ƥ��ƥ졼���֥��å���ƤӽФ���
+
+ VALUE rb_rescue(VALUE (*func1)(), void *arg1, VALUE (*func2)(), void *arg2)
+
+ �ؿ�func1��arg1������˸ƤӽФ���func1�μ¹�����㳰��ȯ����������
+ �� func2��arg2������Ȥ��ƸƤ֡�����ͤ��㳰��ȯ�����ʤ��ä�����
+ func1�������, �㳰��ȯ���������ˤ�func2������ͤǤ��롥
+
+ VALUE rb_ensure(VALUE (*func1)(), void *arg1, void (*func2)(), void *arg2)
+
+ �ؿ�func1��arg1������Ȥ��Ƽ¹Ԥ�, �¹Խ�λ��(���Ȥ��㳰��ȯ������
+ ��) func2��arg2������Ȥ��Ƽ¹Ԥ��롥����ͤ�func1������ͤǤ���(��
+ ����ȯ�������������ʤ�)��
+
+** �㳰�����顼
+
+ void Warning(char *fmt, ...)
+
+ verbose����ɸ�२�顼���Ϥ˷ٹ�����ɽ�����롥������printf()��Ʊ����
+
+ void Fail(char *fmt, ...)
+
+ �㳰��ȯ�������롥������printf()��Ʊ����
+
+ void Fatal(char *fmt, ...)
+
+ ��̿Ū�㳰��ȯ�������롥�̾���㳰�����ϹԤʤ�줺, ���󥿡��ץ꥿
+ ����λ����(������ensure�ǻ��ꤵ�줿�����ɤϽ�λ���˼¹Ԥ����)��
+
+ void Bug(char *fmt, ...)
+
+ ���󥿡��ץ꥿�ʤɥץ������ΥХ��Ǥ���ȯ������Ϥ��Τʤ������λ�
+ �Ƥ֡����󥿡��ץ꥿�ϥ�������פ�ľ���˽�λ���롥�㳰�����ϰ��ڹ�
+ �ʤ��ʤ���
+
+** ruby�ν�������¹�
+
+Ruby�򥢥ץꥱ����������������ˤϰʲ��Υ��󥿥ե�������Ȥ�����
+��γ�ĥ�⥸�塼��ˤ�ɬ�פʤ���
+
+ void ruby_init(int argc, char **argv, char **envp)
+
+ ruby���󥿥ץ꥿�ν������Ԥʤ���
+
+ void ruby_run()
+
+ ruby���󥿥ץ꥿��¹Ԥ��롥
+
+ void ruby_script(char *name)
+
+ ruby�Υ�����ץ�̾($0)�����ꤹ�롥
+
+* extconf.rb���
+
+��ĥ�⥸�塼��Υǥ��쥯�ȥ��`extconf.rb'�Ȥ����ե����뤬¸�ߤ������
+�ϡ����줬�¹Ԥ��졤�⥸�塼��Υ���ѥ����ɬ�פʾ��Υ����å��ʤɤ�
+�Ԥ���������롥extconf.rb����Ǥϰʲ��δؿ���Ȥ������Ǥ��롥
+
+ have_library(lib, func)
+
+ �ؿ�func��������Ƥ���饤�֥��lib��¸�ߤ�����å����롥�饤�֥��
+ ��¸�ߤ������TRUE���֤���
+
+ have_func(func)
+
+ �ؿ�func��¸�ߤ�����å����롥func��ɸ��Ǥϥ�󥯤���ʤ��饤�֥�
+ ����Τ�ΤǤ�����ˤ����have_library�Ǥ��Υ饤�֥�������å���
+ �Ƥ��������ؿ���¸�ߤ������TRUE���֤���
+
+ have_header(header)
+
+ �إå��ե������¸�ߤ�����å����롥�إå��ե����뤬¸�ߤ����TRUE
+ ���֤���
+
+ create_makefile(target)
+
+ ��ĥ�⥸�塼���Ѥ�Makefile���������롥���δؿ���ƤФʤ���Ф��Υ�
+ ���塼��ϥ���ѥ��뤵��ʤ���
+
+/*
+ * Local variables:
+ * fill-column: 70
+ * end:
+ */