Sha256: a6e2882dfe60dd95933a2d02369e70be2b8a53e3fc187cd14fa900b632e95b94

Contents?: true

Size: 728 Bytes

Versions: 10

Compression:

Stored size: 728 Bytes

Contents

# frozen_string_literal: true

module Headdesk
  #
  # Descriptions for APK methods
  #
  # :reek:RepeatedConditional
  class APKDescriber
    def initialize(mode)
      @unless = (mode == :unless)
    end

    def class?(decl)
      "APK #{@unless ? 'contains' : 'does not contain'} class #{decl.tr('/', '.')}"
    end

    def targets_sdk(gt_eq)
      "APK targets API #{@unless ? '>=' : '<'} #{gt_eq}"
    end

    def min_sdk(gt_eq)
      "APK requires #{@unless ? 'at least' : 'less than'} API #{gt_eq}"
    end
  end

  #
  # Turn parameters passed skip_check and fail_check into descriptions
  #
  class Descriptionator
    attr_reader :apk

    def initialize(mode)
      @apk = APKDescriber.new(mode)
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
headdesk-0.8.0 lib/headdesk/descriptionator.rb
headdesk-0.7.0 lib/headdesk/descriptionator.rb
headdesk-0.6.0 lib/headdesk/descriptionator.rb
headdesk-0.5.2 lib/headdesk/descriptionator.rb
headdesk-0.5.1 lib/headdesk/descriptionator.rb
headdesk-0.5.0 lib/headdesk/descriptionator.rb
headdesk-0.4.0 lib/headdesk/descriptionator.rb
headdesk-0.3.0 lib/headdesk/descriptionator.rb
headdesk-0.2.0 lib/headdesk/descriptionator.rb
headdesk-0.1.0 lib/headdesk/descriptionator.rb