PHP 8.2.31
Preview: feature_flag.rb Size: 3.07 KB
/proc/thread-self/root/opt/alt/ruby26/lib64/ruby/2.6.0/bundler/feature_flag.rb

# frozen_string_literal: true

module Bundler
  class FeatureFlag
    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
    private_class_method :settings_flag

    def self.settings_option(key, &default)
      settings_method(key, key, &default)
    end
    private_class_method :settings_option

    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
    private_class_method :settings_method

    (1..10).each {|v| define_method("bundler_#{v}_mode?") { major_version >= v } }

    settings_flag(:allow_bundler_dependency_conflicts) { bundler_2_mode? }
    settings_flag(:allow_offline_install) { bundler_2_mode? }
    settings_flag(:auto_clean_without_path) { bundler_2_mode? }
    settings_flag(:auto_config_jobs) { bundler_2_mode? }
    settings_flag(:cache_all) { bundler_2_mode? }
    settings_flag(:cache_command_is_package) { bundler_2_mode? }
    settings_flag(:console_command) { !bundler_2_mode? }
    settings_flag(:default_install_uses_path) { bundler_2_mode? }
    settings_flag(:deployment_means_frozen) { bundler_2_mode? }
    settings_flag(:disable_multisource) { bundler_2_mode? }
    settings_flag(:error_on_stderr) { bundler_2_mode? }
    settings_flag(:forget_cli_options) { bundler_2_mode? }
    settings_flag(:global_path_appends_ruby_scope) { bundler_2_mode? }
    settings_flag(:global_gem_cache) { bundler_2_mode? }
    settings_flag(:init_gems_rb) { bundler_2_mode? }
    settings_flag(:list_command) { bundler_2_mode? }
    settings_flag(:lockfile_uses_separate_rubygems_sources) { bundler_2_mode? }
    settings_flag(:only_update_to_newer_versions) { bundler_2_mode? }
    settings_flag(:path_relative_to_cwd) { bundler_2_mode? }
    settings_flag(:plugins) { @bundler_version >= Gem::Version.new("1.14") }
    settings_flag(:prefer_gems_rb) { bundler_2_mode? }
    settings_flag(:print_only_version_number) { bundler_2_mode? }
    settings_flag(:setup_makes_kernel_gem_public) { !bundler_2_mode? }
    settings_flag(:skip_default_git_sources) { bundler_2_mode? }
    settings_flag(:specific_platform) { bundler_2_mode? }
    settings_flag(:suppress_install_using_messages) { bundler_2_mode? }
    settings_flag(:unlock_source_unlocks_spec) { !bundler_2_mode? }
    settings_flag(:update_requires_all_flag) { bundler_2_mode? }
    settings_flag(:use_gem_version_promoter_for_major_updates) { bundler_2_mode? }
    settings_flag(:viz_command) { !bundler_2_mode? }

    settings_option(:default_cli_command) { bundler_2_mode? ? :cli_help : :install }

    settings_method(:github_https?, "github.https") { bundler_2_mode? }

    def initialize(bundler_version)
      @bundler_version = Gem::Version.create(bundler_version)
    end

    def major_version
      @bundler_version.segments.first
    end
    private :major_version
  end
end

Directory Contents

Dirs: 12 × Files: 67

Name Size Perms Modified Actions
cli DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
fetcher DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
installer DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
plugin DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
resolver DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
settings DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
source DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
ssl_certs DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
templates DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
ui DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
vendor DIR
- drwxr-xr-x 2024-03-03 22:47:32
Edit Download
1.61 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
879 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
35.12 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.27 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
518 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
212 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.19 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
36.44 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
4.43 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.19 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
876 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
827 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
21.46 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.91 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.22 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.31 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
4.59 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.07 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
10.83 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
4.33 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
423 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.88 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.19 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.46 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
137 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
6.52 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.00 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.24 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
8.61 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.33 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
11.85 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.62 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.18 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
8.62 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
659 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.79 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
9.12 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
702 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
853 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.46 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
14.20 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.60 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.88 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
3.49 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
25.01 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
761 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
4.96 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
10.95 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
12.38 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
720 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
12.00 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.84 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.66 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.87 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
5.34 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.78 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
198 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.20 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
192 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
100 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
1.61 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
193 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
821 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.86 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
466 B lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.57 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download
2.41 KB lrw-r--r-- 2022-04-12 11:50:11
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).