class AdLint::Cc1::ValueVersionController::VersioningGroup

Attributes

base_version[RW]
initial_values[R]
sticky[W]

Public Class Methods

new(base_ver, sticky = false) click to toggle source
# File lib/adlint/cc1/value.rb, line 2771
def initialize(base_ver, sticky = false)
  @base_version = base_ver
  @sticky = sticky
  @initial_values = base_ver.values.map { |mval| mval._base.value.dup }
  @current_version = nil
  @all_versions = []
end

Public Instance Methods

base_values() click to toggle source
# File lib/adlint/cc1/value.rb, line 2791
def base_values
  @base_version.values
end
begin_new_version() click to toggle source
# File lib/adlint/cc1/value.rb, line 2803
def begin_new_version
  @current_version = Version.new(base_values)
  @all_versions.push(@current_version)
end
current_values() click to toggle source
# File lib/adlint/cc1/value.rb, line 2799
def current_values
  current_version.values
end
current_version() click to toggle source
# File lib/adlint/cc1/value.rb, line 2795
def current_version
  @current_version || @base_version
end
delete_current_version() click to toggle source
# File lib/adlint/cc1/value.rb, line 2817
def delete_current_version
  @all_versions.pop
end
delete_current_version_completely() click to toggle source
# File lib/adlint/cc1/value.rb, line 2812
def delete_current_version_completely
  end_current_version
  delete_current_version
end
end_current_version() click to toggle source
# File lib/adlint/cc1/value.rb, line 2808
def end_current_version
  @current_version = nil
end
fork_all_versions() click to toggle source
# File lib/adlint/cc1/value.rb, line 2821
def fork_all_versions
  @all_versions.each { |ver| ver.fork_from(@base_version) }
end
sticky?() click to toggle source
# File lib/adlint/cc1/value.rb, line 2783
def sticky?
  @sticky
end
versions_forked?() click to toggle source
# File lib/adlint/cc1/value.rb, line 2787
def versions_forked?
  @all_versions.any? { |ver| ver.forked? }
end