class Net::SSH::Version

  1. lib/net/ssh/version.rb
Parent: SSH

A class for describing the current version of a library. The version consists of three parts: the major number, the minor number, and the tiny (or patch) number.

Two Version instances may be compared, so that you can test that a version of a library is what you require:

require 'net/ssh/version'
if Net::SSH::Version::CURRENT < Net::SSH::Version[2,1,0]
  abort "your software is too old!"
end

Methods

Public Class

  1. []
  2. new

Public Instance

  1. <=>
  2. major
  3. minor
  4. tiny
  5. to_i
  6. to_s

Included modules

  1. Comparable

Constants

CURRENT = new(MAJOR, MINOR, TINY)  

The current version of the Net::SSH library as a Version instance

MAJOR = 2  

The major component of this version of the Net::SSH library

MINOR = 9  

The minor component of this version of the Net::SSH library

STRING = CURRENT.to_s  

The current version of the Net::SSH library as a String

TINY = 1  

The tiny component of this version of the Net::SSH library

Attributes

major [R]
minor [R]
tiny [R]

Public Class methods

[] (major, minor, tiny)

A convenience method for instantiating a new Version instance with the given major, minor, and tiny components.

[show source]
# File lib/net/ssh/version.rb, line 19
def self.[](major, minor, tiny)
  new(major, minor, tiny)
end
new (major, minor, tiny)

Create a new Version object with the given components.

[show source]
# File lib/net/ssh/version.rb, line 26
def initialize(major, minor, tiny)
  @major, @minor, @tiny = major, minor, tiny
end

Public Instance methods

<=> (version)

Compare this version to the given version object.

[show source]
# File lib/net/ssh/version.rb, line 31
def <=>(version)
  to_i <=> version.to_i
end
to_i ()

Converts this version to a canonical integer that may be compared against other version objects.

[show source]
# File lib/net/ssh/version.rb, line 43
def to_i
  @to_i ||= @major * 1_000_000 + @minor * 1_000 + @tiny
end
to_s ()

Converts this version object to a string, where each of the three version components are joined by the '.' character. E.g., 2.0.0.

[show source]
# File lib/net/ssh/version.rb, line 37
def to_s
  @to_s ||= [@major, @minor, @tiny].join(".")
end