Sophie

Sophie

distrib > CentOS > 6 > i386 > by-pkgid > a28c1d60d3683be735dfd702eff84942 > files > 614

ruby-docs-1.8.7.299-5.el6_0.1.i686.rpm

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html 
  PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>object.c</title>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8" />
<link href="default.css" type="text/css" rel="stylesheet" />
<link href="refm490.html" rel="next" />
<link href="refm488.html" rel="prev" />
<link href="index.html" rel="start" />

</head>
<body>
<div class="navigator"><span class="navigator">[<a href="index.html">MAIN</a>][<a href="refm543.html">INDEX</a>]&nbsp;&nbsp;&nbsp;[<a href="index.html">TOP</a>][<a href="refm482.html">UP</a>][<a href="refm488.html">&lt;-PREV</a>][<a href="refm490.html">NEXT-&gt;</a>]</span></div>
<hr />

<h1><a name="L008964" id="L008964">object.c</a></h1>
<dl>
<dt><a name="L008965" id="L008965">static VALUE boot_defclass(char *name, VALUE super)</a></dt>
<dd>
<p>(まだ) メタクラスを持たないクラスを作成します。
三つのメタオブジェクト <code>Object</code> <code>Module</code> <code>Class</code> を
作成するのに使います。</p>
</dd>
<dt><a name="L008966" id="L008966">static VALUE convert_type(VALUE val, const char *tname, const char *method, int raise)</a></dt>
<dt><a name="L008967" id="L008967">static VALUE false_and(VALUE obj, VALUE obj2)</a></dt>
<dt><a name="L008968" id="L008968">static VALUE false_or(VALUE obj, VALUE obj2)</a></dt>
<dt><a name="L008969" id="L008969">static VALUE false_to_s(VALUE obj)</a></dt>
<dt><a name="L008970" id="L008970">static VALUE false_xor(VALUE obj, VALUE obj2)</a></dt>
<dt><a name="L008971" id="L008971">static int inspect_i(ID id, VALUE value, VALUE str)</a></dt>
<dt><a name="L008972" id="L008972">static VALUE inspect_obj(VALUE obj, VALUE str)</a></dt>
<dt><a name="L008973" id="L008973">static VALUE main_to_s(VALUE obj)</a></dt>
<dt><a name="L008974" id="L008974">static VALUE nil_inspect(VALUE obj)</a></dt>
<dt><a name="L008975" id="L008975">static VALUE nil_plus(VALUE x, VALUE y)</a></dt>
<dt><a name="L008976" id="L008976">static VALUE nil_to_a(VALUE obj)</a></dt>
<dt><a name="L008977" id="L008977">static VALUE nil_to_f(VALUE obj)</a></dt>
<dt><a name="L008978" id="L008978">static VALUE nil_to_i(VALUE obj)</a></dt>
<dt><a name="L008979" id="L008979">static VALUE nil_to_s(VALUE obj)</a></dt>
<dt><a name="L008980" id="L008980">static VALUE rb_any_to_a(VALUE obj)</a></dt>
<dt><a name="L008981" id="L008981">VALUE rb_any_to_s(VALUE obj)</a></dt>
<dt><a name="L008982" id="L008982">VALUE rb_Array(VALUE obj)</a></dt>
<dd>
<p><var>obj</var> が <code>Array</code> でない場合は <var>to_a</var> を使って
<code>Array</code> に変換します。</p>
</dd>
<dt><a name="L008983" id="L008983">VALUE rb_check_convert_type(VALUE val, int type, const char *tname, const char *method)</a></dt>
<dd>
<p><var>val</var>.<var>method</var> を実行してクラス <var>tname</var> のインスタンスを返します。
<var>val</var> がメソッド <var>method</var> を持たなければ nil を返します。</p>
<p><var>type</var> は、T_ARRAY, T_STRING などの構造体を表す ID です。
<var>method</var> の結果の型が <var>type</var> でなければ例外 TypeError が発生します。</p>
</dd>
<dt><a name="L008984" id="L008984">static VALUE rb_class_allocate_instance(VALUE klass)</a></dt>
<dd>
<p><code>Class#allocate</code> の実体。</p>
</dd>
<dt><a name="L008985" id="L008985">static VALUE rb_class_initialize(int argc, VALUE *argv, VALUE klass)</a></dt>
<dd>
<p><code>Class#initialize</code> の実体。</p>
</dd>
<dt><a name="L008986" id="L008986">VALUE rb_class_new_instance(int argc, VALUE *argv, VALUE klass)</a></dt>
<dd>
<p><code>Class#new</code> の実体。</p>
</dd>
<dt><a name="L008987" id="L008987">VALUE rb_class_real(VALUE cl)</a></dt>
<dd>
<p>特異クラスや化身クラス (T_ICLASS) を飛ばして <var>cl</var> の
スーパークラスを辿り、Ruby レベルに露出してもよいクラスを返します。</p>
<p>例:</p>
<pre>rb_class_real(RBASIC(klass)-&gt;super)</pre>
<p>rb_obj_class(obj) は、obj のクラスを返す汎用の関数(Object#type と
同じ)だが、obj が Qtrue などでない RBasic 構造のものであることが
わかっているなら</p>
<pre>rb_class_real(RBASIC(obj)-&gt;klass)</pre>
<p>でも良い。(が、やはり rb_obj_class(obj) を使う方が無難だろう)</p>
</dd>
<dt><a name="L008988" id="L008988">static VALUE rb_class_s_new(int argc, VALUE *argv)</a></dt>
<dt><a name="L008989" id="L008989">static VALUE rb_class_superclass(VALUE klass)</a></dt>
<dt><a name="L008990" id="L008990">VALUE rb_convert_type(VALUE val, int type, const char *tname, const char *method)</a></dt>
<dd>
<p>オブジェクト<var>val</var>をクラス<var>type</var>のインスタンスに変換します。
変換には、<var>val</var>.<var>method</var>の戻り値が使われます。</p>
<p><var>val</var>がもともと<var>type</var>クラスのインスタンスなら<var>val</var>を
そのまま返します。</p>
</dd>
<dt><a name="L008991" id="L008991">double rb_cstr_to_dbl(const char *p, int badcheck)</a></dt>
<dt><a name="L008992" id="L008992">VALUE rb_eql(VALUE obj1, VALUE obj2)</a></dt>
<dd>
<p><code>obj1.equal? obj2</code> ならば <code>Qtrue</code>、
そうでないならば <code>Qfalse</code>。</p>
</dd>
<dt><a name="L008993" id="L008993">VALUE rb_equal(VALUE obj1, VALUE obj2)</a></dt>
<dd>
<p><code>obj1 == obj2</code> ならば <code>Qtrue</code>、
そうでないならば <code>Qfalse</code>。</p>
</dd>
<dt><a name="L008994" id="L008994">static VALUE rb_f_array(VALUE obj, VALUE arg)</a></dt>
<dt><a name="L008995" id="L008995">static VALUE rb_f_float(VALUE obj, VALUE arg)</a></dt>
<dt><a name="L008996" id="L008996">static VALUE rb_f_integer(VALUE obj, VALUE arg)</a></dt>
<dt><a name="L008997" id="L008997">static VALUE rb_f_string(VALUE obj, VALUE arg)</a></dt>
<dt><a name="L008998" id="L008998">static VALUE rb_false(VALUE obj)</a></dt>
<dt><a name="L008999" id="L008999">VALUE rb_Float(VALUE val)</a></dt>
<dt><a name="L009000" id="L009000">VALUE rb_inspect(VALUE obj)</a></dt>
<dd>
<p><code>obj.inspect</code> の実体。</p>
</dd>
<dt><a name="L009001" id="L009001">VALUE rb_Integer(VALUE obj)</a></dt>
<dd>
<p><var>obj</var> が Ruby の整数でない場合は <var>to_i</var> を使って
<code>Integer</code> に変換します。</p>
</dd>
<dt><a name="L009002" id="L009002">static VALUE rb_mod_attr(int argc, VALUE *argv, VALUE klass)</a></dt>
<dt><a name="L009003" id="L009003">static VALUE rb_mod_attr_accessor(int argc, VALUE *argv, VALUE klass)</a></dt>
<dt><a name="L009004" id="L009004">static VALUE rb_mod_attr_reader(int argc, VALUE *argv, VALUE klass)</a></dt>
<dt><a name="L009005" id="L009005">static VALUE rb_mod_attr_writer(int argc, VALUE *argv, VALUE klass)</a></dt>
<dt><a name="L009006" id="L009006">static VALUE rb_mod_cmp(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009007" id="L009007">static VALUE rb_mod_const_defined(VALUE mod, VALUE name)</a></dt>
<dt><a name="L009008" id="L009008">static VALUE rb_mod_const_get(VALUE mod, VALUE name)</a></dt>
<dt><a name="L009009" id="L009009">static VALUE rb_mod_const_set(VALUE mod, VALUE name, VALUE value)</a></dt>
<dt><a name="L009010" id="L009010">static VALUE rb_mod_eqq(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009011" id="L009011">static VALUE rb_mod_ge(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009012" id="L009012">static VALUE rb_mod_gt(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009013" id="L009013">static VALUE rb_mod_initialize(VALUE module)</a></dt>
<dt><a name="L009014" id="L009014">static VALUE rb_mod_le(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009015" id="L009015">static VALUE rb_mod_lt(VALUE mod, VALUE arg)</a></dt>
<dt><a name="L009016" id="L009016">static VALUE rb_mod_to_s(VALUE klass)</a></dt>
<dt><a name="L009017" id="L009017">static VALUE rb_module_s_alloc(VALUE klass)</a></dt>
<dt><a name="L009018" id="L009018">double rb_num2dbl(VALUE val)</a></dt>
<dd>
<p>任意の Numeric のオブジェクトを double に変換します。</p>
</dd>
<dt><a name="L009019" id="L009019">VALUE rb_obj_alloc(VALUE klass)</a></dt>
<dd>
<p><var>klass</var> のインスタンスを作成する。</p>
</dd>
<dt><a name="L009020" id="L009020">VALUE rb_obj_class(VALUE obj)</a></dt>
<dd>
<p><code>Object#class</code> の実体です。</p>
</dd>
<dt><a name="L009021" id="L009021">VALUE rb_obj_clone(VALUE obj)</a></dt>
<dd>
<p><code>Object#clone</code> の実体です。</p>
</dd>
<dt><a name="L009022" id="L009022">static VALUE rb_obj_dummy(void)</a></dt>
<dt><a name="L009023" id="L009023">VALUE rb_obj_dup(VALUE obj)</a></dt>
<dd>
<p><code>Object#dup</code> の実体です。</p>
</dd>
<dt><a name="L009024" id="L009024">static VALUE rb_obj_equal(VALUE obj1, VALUE obj2)</a></dt>
<dd>
<p>obj1 と obj2 が同一のオブジェクトなら真。</p>
</dd>
<dt><a name="L009025" id="L009025">VALUE rb_obj_freeze(VALUE obj)</a></dt>
<dd>
<p><code>obj.freeze</code></p>
</dd>
<dt><a name="L009026" id="L009026">VALUE rb_obj_frozen_p(VALUE obj)</a></dt>
<dd>
<p><code>obj.frozen?</code></p>
</dd>
<dt><a name="L009027" id="L009027">VALUE rb_obj_id(VALUE obj)</a></dt>
<dd>
<p><code>Object#id</code> の実体。</p>
</dd>
<dt><a name="L009028" id="L009028">static VALUE rb_obj_inspect(VALUE obj)</a></dt>
<dd>
<p><code>Object#inspect</code> の実体。</p>
</dd>
<dt><a name="L009029" id="L009029">VALUE rb_obj_is_instance_of(VALUE obj, VALUE klass)</a></dt>
<dd>
<p><var>obj</var> がクラス <var>klass</var> のインスタンスならば真。</p>
</dd>
<dt><a name="L009030" id="L009030">VALUE rb_obj_is_kind_of(VALUE obj, VALUE klass)</a></dt>
<dd>
<p><var>obj</var> がクラス <var>klass</var> およびそのサブクラスの
インスタンスのとき真。</p>
</dd>
<dt><a name="L009031" id="L009031">static VALUE rb_obj_methods(VALUE obj)</a></dt>
<dd>
<p><code>Object#methods</code> の実体。</p>
</dd>
<dt><a name="L009032" id="L009032">static VALUE rb_obj_private_methods(VALUE obj)</a></dt>
<dd>
<p><code>Object#private_methods</code> の実体。</p>
</dd>
<dt><a name="L009033" id="L009033">static VALUE rb_obj_protected_methods(VALUE obj)</a></dt>
<dd>
<p><code>Object#protected_methods</code> の実体。</p>
</dd>
<dt><a name="L009034" id="L009034">VALUE rb_obj_taint(VALUE obj)</a></dt>
<dd>
<p><code>obj.taint</code></p>
</dd>
<dt><a name="L009035" id="L009035">VALUE rb_obj_tainted(VALUE obj)</a></dt>
<dd>
<p><code>obj.tainted?</code></p>
</dd>
<dt><a name="L009036" id="L009036">VALUE rb_obj_untaint(VALUE obj)</a></dt>
<dd>
<p><code>obj.untaint</code></p>
</dd>
<dt><a name="L009037" id="L009037">char *rb_str2cstr(VALUE str, int *len)</a></dt>
<dd>
<p><var>strl</var> を C の文字列に変換します。第二引数も与えると
<var>*len</var> にバイト長を書き込みます。<var>str</var> が <code>String</code>
でない場合は <var>to_str</var> での変換を試みます。</p>
</dd>
<dt><a name="L009038" id="L009038">double rb_str_to_dbl(VALUE str, int badcheck)</a></dt>
<dt><a name="L009039" id="L009039">VALUE rb_String(VALUE val)</a></dt>
<dd>
<p><code>Kernel#String</code> の実体。
<var>val</var> を文字列に変換します。</p>
</dd>
<dt><a name="L009040" id="L009040">VALUE rb_to_id(VALUE name)</a></dt>
<dd>
<p><code>String</code>・<code>Fixnum</code>・<code>Symbol</code> を <code>ID</code> に変換します。</p>
</dd>
<dt><a name="L009041" id="L009041">VALUE rb_to_int(VALUE val)</a></dt>
<dd>
<p><var>val</var> を to_int メソッドを使って Ruby の整数に変換します。</p>
</dd>
<dt><a name="L009042" id="L009042">static VALUE rb_to_integer(VALUE val, char *method)</a></dt>
<dt><a name="L009043" id="L009043">static VALUE rb_true(VALUE obj)</a></dt>
<dd>
<p><code>Qtrue</code> を返します。</p>
</dd>
<dt><a name="L009044" id="L009044">static VALUE sym_inspect(VALUE sym)</a></dt>
<dt><a name="L009045" id="L009045">static VALUE sym_intern(VALUE sym)</a></dt>
<dt><a name="L009046" id="L009046">static VALUE sym_to_i(VALUE sym)</a></dt>
<dt><a name="L009047" id="L009047">static VALUE sym_to_s(VALUE sym)</a></dt>
<dt><a name="L009048" id="L009048">static VALUE true_and(VALUE obj, VALUE obj2)</a></dt>
<dt><a name="L009049" id="L009049">static VALUE true_or(VALUE obj, VALUE obj2)</a></dt>
<dt><a name="L009050" id="L009050">static VALUE true_to_s(VALUE obj)</a></dt>
<dt><a name="L009051" id="L009051">static VALUE true_xor(VALUE obj, VALUE obj2)</a></dt>
</dl>

<hr />
<div class="navigator"><span class="navigator">[<a href="index.html">MAIN</a>][<a href="refm543.html">INDEX</a>]&nbsp;&nbsp;&nbsp;[<a href="index.html">TOP</a>][<a href="refm482.html">UP</a>][<a href="refm488.html">&lt;-PREV</a>][<a href="refm490.html">NEXT-&gt;</a>]</span></div>

</body>
</html>