# File lib/semantic_puppet/version_range.rb, line 303
    def to_s
      start, finish  = self.begin, self.end
      inclusive = exclude_end? ? '' : '='

      case
      when EMPTY_RANGE == self
        "<0.0.0"
      when exact_version?, patch_version?
        "#{ start }"
      when minor_version?
        "#{ start }".sub(/.0$/, '.x')
      when major_version?
        "#{ start }".sub(/.0.0$/, '.x')
      when open_end? && start.to_s =~ /-.*[.]0$/
        ">#{ start }".sub(/.0$/, '')
      when open_end?
        ">=#{ start }"
      when open_begin?
        "<#{ inclusive }#{ finish }"
      else
        ">=#{ start } <#{ inclusive }#{ finish }"
      end
    end