るりまサーチ

最速Rubyリファレンスマニュアル検索!
152件ヒット [1-100件を表示] (0.102秒)
トップページ > クエリ:I[x] > クエリ:self[x] > クエリ:bind[x]

別のキーワード

  1. _builtin to_i
  2. fiddle to_i
  3. matrix elements_to_i
  4. csv to_i
  5. kernel $-i

検索結果

<< 1 2 > >>

UnboundMethod#bind(obj) -> Method (24247.0)

self を obj にバインドした Method オブジェクトを生成して返します。

...
self
を obj にバインドした Method オブジェクトを生成して返します。


@param obj 自身をバインドしたいオブジェクトを指定します。ただしバインドできるのは、
生成元のクラスかそのサブクラスのインスタンスのみで...
...す。

@raise TypeError objがbindできないオブジェクトである場合に発生します

//emlist[例][ruby]{
# クラスのインスタンスメソッドの UnboundMethod の場合
class Foo
def foo
"foo"
end
end

# UnboundMethod `m' を生成
p m = Foo.instance_method(:foo) # =>...
...スをレシーバとする Method オブジェクトを生成
p m.bind(Foo.new) # => #<Method: Foo#foo>

# Foo のサブクラス Bar のインスタンスをレシーバとする Method
class Bar < Foo
end
p m.bind(Bar.new) # => #<Method: Bar(Foo)#foo>


# モジュー...

static VALUE rb_f_binding(VALUE self) (18300.0)

Binding (18016.0)

ローカル変数のテーブルと self、モジュールのネストなどの情報を保 持するオブジェクトのクラスです。

...ーブルと self、モジュールのネストなどの情報を保
持するオブジェクトのクラスです。

組み込み関数 Kernel.#binding と Proc#binding によっ
てのみ生成され、Kernel.#eval の第 2 引数に使用します。
またトップレベルの Binding オブジ...
...ェクトとして組み込み定数
Object::TOPLEVEL_BINDING が用意されています。...

static VALUE bind_clone(VALUE self) (12300.0)

UnboundMethod#bind_call(recv, *args) -> object (12258.0)

self を recv に bind して args を引数として呼び出します。

...
self
を recv に bind して args を引数として呼び出します。

self
.bind(recv).call(*args) と同じ意味です。

//emlist[][ruby]{
puts Kernel.instance_method(:inspect).bind_call(BasicObject.new) # => #<BasicObject:0x000055c65e8ea7b8>
//}

@see UnboundMethod#bind, Method#call...

絞り込み条件を変える

UnboundMethod#bind_call(recv, *args) { ... } -> object (12258.0)

self を recv に bind して args を引数として呼び出します。

...
self
を recv に bind して args を引数として呼び出します。

self
.bind(recv).call(*args) と同じ意味です。

//emlist[][ruby]{
puts Kernel.instance_method(:inspect).bind_call(BasicObject.new) # => #<BasicObject:0x000055c65e8ea7b8>
//}

@see UnboundMethod#bind, Method#call...

Method#unbind -> UnboundMethod (12222.0)

self のレシーバとの関連を取り除いた UnboundMethod オブ ジェクトを生成して返します。

...
self
のレシーバとの関連を取り除いた UnboundMethod オブ
ジェクトを生成して返します。

//emlist[例][ruby]{
class Foo
def foo
"foo"
end
end

m = Foo.new.method(:foo) # => #<Method: Foo#foo>
unbound_method = m.unbind # => #<UnboundMethod: Foo#foo>
unbound_method....
...bind(Foo.new) # => #<Method: Foo#foo>
//}...

Binding#receiver -> object (12122.0)

保持するコンテキスト内での self を返します。

...保持するコンテキスト内での self を返します。

このメソッドは以下のコードと同様の動作をします。

//emlist[][ruby]{
bind
ing.eval("self")
//}...

Binding#source_location -> [String, Integer] (12116.0)

self の Ruby のソースファイル名と行番号を返します。

...
self
の Ruby のソースファイル名と行番号を返します。

d:spec/variables#pseudo の __FILE__ と __LINE__ も参照してください。

//emlist[例][ruby]{
p binding.source_location # => ["test.rb", 1]
//}...

Binding#eval(expr, fname = __FILE__, lineno = 1) -> object (9116.0)

自身をコンテキストとし文字列 expr を Ruby プログラムとして評価しその結果を返します。 組み込み関数 Kernel.#eval を使って eval(expr, self, fname, lineno) とするのと同じです。

...eval(expr, self, fname, lineno) とするのと同じです。

@param expr 評価したい式を文字列で与えます。

@param fname ファイル名を文字列で与えます。式 expr が fname というファイル名にあるかのように実行されます。

@param lineno 行番号...
...えます。式 expr の先頭行の行番号が lineno であるかのように実行されます。

//emlist[例][ruby]{
def get_binding(str)
bind
ing
end
str = "hello"
p eval("str + ' Fred'") #=> "hello Fred"
p get_binding("bye").eval("str + ' Fred'") #=> "bye Fred"
//}...

絞り込み条件を変える

Module#instance_method(name) -> UnboundMethod (6134.0)

self のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

...
self
のインスタンスメソッド name をオブジェクト化した UnboundMethod を返します。

@param name メソッド名を Symbol または String で指定します。

@raise NameError self に存在しないメソッドを指定した場合に発生します。

@see Module#publ...
...ic_instance_method, Object#method

//emlist[例][ruby]{
class Interpreter
def do_a() print "there, "; end
def do_d() print "Hello "; end
def do_e() print "!\n"; end
def do_v() print "Dave"; end
Dispatcher = {
"a" => instance_method(:do_a),
"d" => instance_method(:do_d),...
..."e" => instance_method(:do_e),
"v" => instance_method(:do_v)
}
def interpret(string)
string.each_char {|b| Dispatcher[b].bind(self).call }
end
end

i
nterpreter = Interpreter.new
i
nterpreter.interpret('dave')
# => Hello there, Dave!
//}...
<< 1 2 > >>