<=>(other)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def <=>(other)
  return -1 if other.equal?(INFINITY)
  comp = left <=> other.left
  return comp unless comp.zero?
  right <=> other.right
end
             
             
            
           
          
          
         
      
        
          
          
          
            cover?(v)
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def cover?(v)
  return false if left.inclusive && left.version > v
  return false if !left.inclusive && left.version >= v
  if right.version != INFINITY
    return false if right.inclusive && right.version < v
    return false if !right.inclusive && right.version <= v
  end
  true
end
             
             
            
           
          
          
         
      
        
          
          
          
            empty?()
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def empty?
  left.version == right.version && !(left.inclusive && right.inclusive)
end
             
             
            
           
          
          
         
      
        
          
          
          
            single?()
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def single?
  left.version == right.version
end
             
             
            
           
          
          
         
      
        
          
          
          
            to_s()
            click to toggle source
          
          
          
  
            
            
            
            
            
               
               
def to_s
  "#{left.inclusive ? "[" : "("}#{left.version}, #{right.version}#{right.inclusive ? "]" : ")"}"
end