Module: FastRuby::BuilderModule

Defined in:
lib/fastruby/builder.rb

Instance Method Summary collapse

Instance Method Details

#build(signature, method_name, noreturn = false) ⇒ Object



301
302
303
# File 'lib/fastruby/builder.rb', line 301

def build(signature, method_name, noreturn = false)
  fastruby_method(method_name.to_sym).build(signature, noreturn)
end

#fastruby_method(mname_) ⇒ Object



321
322
323
324
325
326
# File 'lib/fastruby/builder.rb', line 321

def fastruby_method(mname_)
  mname = mname_.to_sym
  @fastruby_method = Hash.new unless @fastruby_method
  @fastruby_method[mname] = FastRuby::Method.new(mname,self) unless @fastruby_method[mname]
  @fastruby_method[mname]
end

#method_added(method_name) ⇒ Object



316
317
318
319
# File 'lib/fastruby/builder.rb', line 316

def method_added(method_name)
  clear_method_hash_addresses(@method_hash[method_name]) if @method_hash and @method_hash[method_name]
  FastRuby.unset_tree(self,method_name)
end

#method_hash(method_name) ⇒ Object



311
312
313
314
# File 'lib/fastruby/builder.rb', line 311

def method_hash(method_name)
  @method_hash = Hash.new unless @method_hash
  @method_hash[method_name]
end

#register_method_value(method_name, key, value) ⇒ Object



305
306
307
308
309
# File 'lib/fastruby/builder.rb', line 305

def register_method_value(method_name,key,value)
  @method_hash = Hash.new unless @method_hash
  @method_hash[method_name] = Hash.new unless @method_hash[method_name]
  @method_hash[method_name][key] = value
end