Class: Method
- Defined in:
- opal/opal/corelib/method.rb,
 opal/opal/corelib/marshal/write_buffer.rb
Instance Attribute Summary collapse
- 
  
    
      #name  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute name. 
- 
  
    
      #owner  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute owner. 
- 
  
    
      #receiver  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    Returns the value of attribute receiver. 
Instance Method Summary collapse
- #__marshal__(buffer) ⇒ Object
- #arity ⇒ Object
- #call(*args, &block) ⇒ Object (also: #[])
- #comments ⇒ Object
- 
  
    
      #initialize(receiver, owner, method, name)  ⇒ Method 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    A new instance of Method. 
- #inspect ⇒ Object
- #parameters ⇒ Object
- #source_location ⇒ Object
- #to_proc ⇒ Object
- #unbind ⇒ Object
Constructor Details
#initialize(receiver, owner, method, name) ⇒ Method
Returns a new instance of Method
| 4 5 6 7 8 9 | # File 'opal/opal/corelib/method.rb', line 4 def initialize(receiver, owner, method, name) @receiver = receiver @owner = owner @name = name @method = method end | 
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name
| 2 3 4 | # File 'opal/opal/corelib/method.rb', line 2 def name @name end | 
#owner ⇒ Object (readonly)
Returns the value of attribute owner
| 2 3 4 | # File 'opal/opal/corelib/method.rb', line 2 def owner @owner end | 
#receiver ⇒ Object (readonly)
Returns the value of attribute receiver
| 2 3 4 | # File 'opal/opal/corelib/method.rb', line 2 def receiver @receiver end | 
Instance Method Details
#__marshal__(buffer) ⇒ Object
| 101 102 103 | # File 'opal/opal/corelib/marshal/write_buffer.rb', line 101 def __marshal__(buffer) raise TypeError, "no _dump_data is defined for class #{self.class}" end | 
#arity ⇒ Object
| 11 12 13 | # File 'opal/opal/corelib/method.rb', line 11 def arity @method.arity end | 
#call(*args, &block) ⇒ Object Also known as: []
| 27 28 29 30 31 32 33 | # File 'opal/opal/corelib/method.rb', line 27 def call(*args, &block) %x{ #@method.$$p = block; return #@method.apply(#@receiver, args); } end | 
#comments ⇒ Object
| 23 24 25 | # File 'opal/opal/corelib/method.rb', line 23 def comments `#{@method}.$$comments` || [] end | 
#inspect ⇒ Object
| 50 51 52 | # File 'opal/opal/corelib/method.rb', line 50 def inspect "#<#{self.class}: #{@receiver.class}##{@name} (defined in #{@owner} in #{source_location.join(':')})>" end | 
#parameters ⇒ Object
| 15 16 17 | # File 'opal/opal/corelib/method.rb', line 15 def parameters `#{@method}.$$parameters` end | 
#source_location ⇒ Object
| 19 20 21 | # File 'opal/opal/corelib/method.rb', line 19 def source_location `#{@method}.$$source_location` || ['(eval)', 0] end | 
#to_proc ⇒ Object
| 41 42 43 44 45 46 47 48 | # File 'opal/opal/corelib/method.rb', line 41 def to_proc %x{ var proc = self.$call.bind(self); proc.$$unbound = #@method; proc.$$is_lambda = true; return proc; } end | 
#unbind ⇒ Object
| 37 38 39 | # File 'opal/opal/corelib/method.rb', line 37 def unbind UnboundMethod.new(@receiver.class, @owner, @method, @name) end |