Sha256: ec714567ad33433cd463f79b4e2342b8a1297fc352c9754dcf6040d21a72ffde

Contents?: true

Size: 552 Bytes

Versions: 6

Compression:

Stored size: 552 Bytes

Contents

# frozen_string_literal: true

require 'eac_cli/definition/option'

module EacCli
  class Definition
    class BooleanOption < ::EacCli::Definition::Option
      def argument?
        false
      end

      def build_value(_new_value, previous_value)
        repeat? ? previous_value + 1 : true
      end

      def default_value
        return super unless default_value?

        raise("Unallowed default value for boolean options (Option: #{self})")
      end

      def default_default_value
        repeat? ? 0 : false
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
eac_cli-0.42.0 lib/eac_cli/definition/boolean_option.rb
eac_cli-0.40.1 lib/eac_cli/definition/boolean_option.rb
eac_cli-0.40.0 lib/eac_cli/definition/boolean_option.rb
eac_cli-0.39.0 lib/eac_cli/definition/boolean_option.rb
eac_cli-0.38.1 lib/eac_cli/definition/boolean_option.rb
eac_tools-0.82.0 sub/eac_cli/lib/eac_cli/definition/boolean_option.rb