On this page
class Bundler::FeatureFlag
Public Class Methods
# File lib/bundler/feature_flag.rb, line 65
def initialize(bundler_version)
@bundler_version = Gem::Version.create(bundler_version)
end
Private Class Methods
# File lib/bundler/feature_flag.rb, line 5
def self.settings_flag(flag, &default)
unless Bundler::Settings::BOOL_KEYS.include?(flag.to_s)
raise "Cannot use `#{flag}` as a settings feature flag since it isn't a bool key"
end
settings_method("#{flag}?", flag, &default)
end
# File lib/bundler/feature_flag.rb, line 19
def self.settings_method(name, key, &default)
define_method(name) do
value = Bundler.settings[key]
value = instance_eval(&default) if value.nil? && !default.nil?
value
end
end
# File lib/bundler/feature_flag.rb, line 14
def self.settings_option(key, &default)
settings_method(key, key, &default)
end
Private Instance Methods
# File lib/bundler/feature_flag.rb, line 69
def major_version
@bundler_version.segments.first
end
Ruby Core © 1993–2017 Yukihiro Matsumoto
Licensed under the Ruby License.
Ruby Standard Library © contributors
Licensed under their own licenses.