るりまサーチ

最速Rubyリファレンスマニュアル検索!
552件ヒット [201-300件を表示] (0.103秒)
トップページ > クエリ:t[x] > クエリ:initialize[x] > 種類:インスタンスメソッド[x]

別のキーワード

  1. openssl t61string
  2. asn1 t61string
  3. t61string new
  4. matrix t
  5. fiddle type_size_t

検索結果

<< < 1 2 3 4 5 ... > >>

BasicObject#instance_eval(expr, filename = "(eval)", lineno = 1) -> object (6107.0)

オブジェクトのコンテキストで文字列 expr またはオブジェクト自身をブロックパラメータとするブロックを 評価してその結果を返します。

...では instance_eval の外側のスコープと、ブロックの評価ではそのブロックの外側のスコープと、共有します。

メソッド定義の中で instance_eval でメソッドを定義した場合は、囲むメソッドが実行されたときに
初めて instance_eval...
...c/def#nest_method を参照してください。

BasicObject を継承して作ったクラス内で instance_eval する場合はトップレベルの定数や Kernel モジュールに定義されているメソッドは見えません。
これは、トップレベルの定数が Object 以下...
...す。

//emlist[例][ruby]{
class Foo
def initialize data
@key = data
end
private
def do_fuga
p 'secret'
end
end

some = Foo.new 'XXX'
some.instance_eval{p @key} #=> "XXX"
some.instance_eval{do_fuga } #=> "secret" # private メソッドも呼び出せる

some.instance_eval 'raise...

BasicObject#instance_exec(*args) {|*vars| ... } -> object (6107.0)

与えられたブロックをレシーバのコンテキストで実行します。

...タに渡す値です。

//emlist[例][ruby]{
class KlassWithSecret
def initialize
@secret = 99
end
end
k = KlassWithSecret.new
# 以下で x には 5 が渡される
k.instance_exec(5) {|x| @secret + x } #=> 104
//}

@see Module#class_exec, Module#module_exec, BasicObject#instance_eval...

BasicObject#method_missing(name, *args) -> object (6107.0)

呼びだされたメソッドが定義されていなかった時、Rubyインタプリタがこのメソッド を呼び出します。

...ォルトではこのメソッドは例外 NoMethodError を発生させます。


@param name 未定義メソッドの名前(シンボル)です。
@param args 未定義メソッドに渡された引数です。
@return ユーザー定義の method_missing メソッドの返り値が未定義...
...値で
あるかのように見えます。

//emlist[例][ruby]{
class Foo
def initialize(data)
@data = data
end
def method_missing(name, lang)
if name.to_s =~ /\Afind_(\d+)_in\z/
if @data[lang]
p @data[lang][$1.to_i]
else
raise "#{lang} unknown"
en...
...=> %w(zero one two), :Esperanto => %w(nulo unu du)})
dic.find_2_in :Esperanto #=> "du"
//}

[注意] このメソッドを override する場合は対象のメソッド名に対して
Object#respond_to? が真を返すようにしてください。
そのためには、Object#respond_to_missing? も...

Class#allocate -> object (6107.0)

自身のインスタンスを生成して返します。生成したオブジェクトは 自身のインスタンスであること以外には何も特性を持ちません。

...ェクトは
自身のインスタンスであること以外には何も特性を持ちません。

//emlist[例][ruby]{
klass = Class.new do
def initialize(*args)
@initialized = true
end

def initialized?
@initialized || false
end
end

klass.allocate.initialized? #=> false
//}...

Fiddle::Importer#struct(signature) -> Class (6107.0)

C の構造体型に対応する Ruby のクラスを構築して返します。

...ます。そしてそれを
配列で signature に渡してデータを定義します。例えば C における
struct timeval {
long tv_sec;
long tv_usec;
};
という構造体型に対応して
T
imeval = struct(["long tv_sec", "long tv_usec"])
として構造体に対応するク...
...ます
* クラスメソッド malloc
* initialize
* to_ptr
* to_i
* 構造体の各メンバへのアクセサ
返されるクラスは Fiddle::CStruct を継承しています。詳しくは
そちらを参照してください。


@param signature 構造体の各要素を文字列で...
...require 'fiddle/import'

module M
extend Fiddle::Importer
dlload "libc.so.6"
extern "int gettimeofday(void*, void*)"
T
imeval = struct(["long tv_sec", "long tv_usec"])
end

t
ime = M::Timeval.malloc
M.gettimeofday(time, Fiddle::NULL)
p time.tv_sec
p time.tv_usec...

絞り込み条件を変える

Forwardable#def_delegator(accessor, method, ali = method) -> () (6107.0)

メソッドの委譲先を設定します。

...

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。

...
...することが可能です。

def_delegator は def_instance_delegator の別名になります。

//emlist[例][ruby]{
require 'forwardable'

class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end

def_delegator :@queue, :push, :mypush
end

q = MyQueue.n...
...ew
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
//}

@see Forwardable#def_delegators...

Forwardable#def_instance_delegator(accessor, method, ali = method) -> () (6107.0)

メソッドの委譲先を設定します。

...

@param accessor 委譲先のオブジェクト

@param method 委譲先のメソッド

@param ali 委譲元のメソッド

委譲元のオブジェクトで ali が呼び出された場合に、
委譲先のオブジェクトの method へ処理が委譲されるようになります。

...
...することが可能です。

def_delegator は def_instance_delegator の別名になります。

//emlist[例][ruby]{
require 'forwardable'

class MyQueue
extend Forwardable
attr_reader :queue
def initialize
@queue = []
end

def_delegator :@queue, :push, :mypush
end

q = MyQueue.n...
...ew
q.mypush 42
q.queue # => [42]
q.push 23 # => NoMethodError
//}

@see Forwardable#def_delegators...

Forwardable#delegate(hash) -> () (6107.0)

メソッドの委譲先を設定します。

...String かその配列で指定します。


//emlist[例][ruby]{
require 'forwardable'

class Zap
extend Forwardable
delegate :length => :@str
delegate [:first, :last] => :@arr
def initialize
@arr = %w/foo bar baz/
@str = "world"
end
end

zap = Zap.new
zap.length...
...# => 5
zap.first # => "foo"
zap.last # => "baz"
//}...

Forwardable#instance_delegate(hash) -> () (6107.0)

メソッドの委譲先を設定します。

...String かその配列で指定します。


//emlist[例][ruby]{
require 'forwardable'

class Zap
extend Forwardable
delegate :length => :@str
delegate [:first, :last] => :@arr
def initialize
@arr = %w/foo bar baz/
@str = "world"
end
end

zap = Zap.new
zap.length...
...# => 5
zap.first # => "foo"
zap.last # => "baz"
//}...
<< < 1 2 3 4 5 ... > >>