Class: VersionManager::VersionNumber

Inherits:
Object
  • Object
show all
Defined in:
lib/version_manager/version_number.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(version_string) ⇒ VersionNumber

Returns a new instance of VersionNumber.



5
6
7
8
# File 'lib/version_manager/version_number.rb', line 5

def initialize version_string
  @starting_version = version_string
  @major, @minor, @patch = version_string.split(".").map(&:to_i)
end

Instance Attribute Details

#majorObject (readonly)

Returns the value of attribute major.



3
4
5
# File 'lib/version_manager/version_number.rb', line 3

def major
  @major
end

#minorObject (readonly)

Returns the value of attribute minor.



3
4
5
# File 'lib/version_manager/version_number.rb', line 3

def minor
  @minor
end

#patchObject (readonly)

Returns the value of attribute patch.



3
4
5
# File 'lib/version_manager/version_number.rb', line 3

def patch
  @patch
end

#starting_versionObject (readonly)

Returns the value of attribute starting_version.



3
4
5
# File 'lib/version_manager/version_number.rb', line 3

def starting_version
  @starting_version
end

Instance Method Details

#inc_majorObject



10
11
12
13
14
# File 'lib/version_manager/version_number.rb', line 10

def inc_major
  @major += 1
  @minor = 0
  @patch = 0
end

#inc_minorObject



16
17
18
19
# File 'lib/version_manager/version_number.rb', line 16

def inc_minor
  @minor += 1
  @patch = 0
end

#inc_patchObject



21
22
23
# File 'lib/version_manager/version_number.rb', line 21

def inc_patch
  @patch += 1
end

#to_sObject



25
26
27
# File 'lib/version_manager/version_number.rb', line 25

def to_s
  "#{@major}.#{@minor}.#{@patch}"
end

#to_tagObject



29
30
31
# File 'lib/version_manager/version_number.rb', line 29

def to_tag
  VersionManager.configuration.tag_format % to_s
end