cached_new(object, inspected_objects)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def cached_new(object, inspected_objects)
  inspected_objects[object.object_id] ||=
    new(object, inspected_objects)
end
             
             
            
           
          
          
         
      
        
          
          
          
            inspector_classes()
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def inspector_classes
  @@inspector_classes
end
             
             
            
           
          
          
         
      
        
          
          
          
            new(object, inspected_objects={})
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def initialize(object, inspected_objects={})
  @inspected_objects = inspected_objects
  @object = object
  @inspected_objects[@object.object_id] = self
  @inspect_target = inspect_target
end
             
             
            
           
          
          
         
      
        
          
          
          
            register_inspector_class(inspector_class)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def register_inspector_class(inspector_class)
  @@inspector_classes << inspector_class
end
             
             
            
           
          
          
         
      
        
          
          
          
            unregister_inspector_class(inspector_class)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def unregister_inspector_class(inspector_class)
  @@inspector_classes.delete(inspector_class)
end
             
             
            
           
          
          
         
      
       
    
      
        
      
        
          
          
          
            <=>(other)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def <=>(other)
  if other.is_a?(self.class)
    @object <=> other.object
  else
    @object <=> other
  end
end
             
             
            
           
          
          
         
      
        
          
          
          
            inspect()
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def inspect
  @inspect_target.inspect
end
             
             
            
           
          
          
          
          
         
      
        
          
          
          
            native_inspect()
            click to toggle source
          
          
          
  
            
            
            
            
          
          
          
          
          
         
      
        
          
          
          
            pretty_print(q)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def pretty_print(q)
  @inspect_target.pretty_print(q)
end
             
             
            
           
          
          
         
      
        
          
          
          
            pretty_print_cycle(q)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def pretty_print_cycle(q)
  @inspect_target.pretty_print_cycle(q)
end