Class: UnboundMethod
Instance Attribute Summary collapse
- 
  
    
      #name  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute name.
 - 
  
    
      #owner  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute owner.
 - 
  
    
      #source  ⇒ Object 
    
    
  
  
  
  
    
      readonly
    
    
  
  
  
  
  
  
    
Returns the value of attribute source.
 
Instance Method Summary collapse
- #arity ⇒ Object
 - #bind(object) ⇒ Object
 - #comments ⇒ Object
 - 
  
    
      #initialize(source, owner, method, name)  ⇒ UnboundMethod 
    
    
  
  
  
    constructor
  
  
  
  
  
  
  
    
A new instance of UnboundMethod.
 - #inspect ⇒ Object
 - #parameters ⇒ Object
 - #source_location ⇒ Object
 
Constructor Details
#initialize(source, owner, method, name) ⇒ UnboundMethod
Returns a new instance of UnboundMethod.
      68 69 70 71 72 73  | 
    
      # File 'opal/opal/corelib/method.rb', line 68 def initialize(source, owner, method, name) @source = source @owner = owner @method = method @name = name end  | 
  
Instance Attribute Details
#name ⇒ Object (readonly)
Returns the value of attribute name.
      66 67 68  | 
    
      # File 'opal/opal/corelib/method.rb', line 66 def name @name end  | 
  
#owner ⇒ Object (readonly)
Returns the value of attribute owner.
      66 67 68  | 
    
      # File 'opal/opal/corelib/method.rb', line 66 def owner @owner end  | 
  
#source ⇒ Object (readonly)
Returns the value of attribute source.
      66 67 68  | 
    
      # File 'opal/opal/corelib/method.rb', line 66 def source @source end  | 
  
Instance Method Details
#arity ⇒ Object
      75 76 77  | 
    
      # File 'opal/opal/corelib/method.rb', line 75 def arity @method.arity end  | 
  
#bind(object) ⇒ Object
      91 92 93 94 95 96 97 98 99 100  | 
    
      # File 'opal/opal/corelib/method.rb', line 91 def bind(object) %x{ if (#{@owner}.$$is_module || Opal.is_a(#{object}, #{@owner})) { return #{Method.new(object, @owner, @method, @name)}; } else { #{raise TypeError, "can't bind singleton method to a different class (expected #{object}.kind_of?(#{@owner} to be true)"}; } } end  | 
  
#comments ⇒ Object
      87 88 89  | 
    
      # File 'opal/opal/corelib/method.rb', line 87 def comments `#{@method}.$$comments` || [] end  | 
  
#inspect ⇒ Object
      102 103 104  | 
    
      # File 'opal/opal/corelib/method.rb', line 102 def inspect "#<#{self.class}: #{@source}##{@name} (defined in #{@owner} in #{source_location.join(':')})>" end  | 
  
#parameters ⇒ Object
      79 80 81  | 
    
      # File 'opal/opal/corelib/method.rb', line 79 def parameters `#{@method}.$$parameters` end  | 
  
#source_location ⇒ Object
      83 84 85  | 
    
      # File 'opal/opal/corelib/method.rb', line 83 def source_location `#{@method}.$$source_location` || ['(eval)', 0] end  |