Class: Spoom::Sorbet::Translate::RBSCommentsToSorbetSigs::Options

Inherits:
Object
  • Object
show all
Defined in:
lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs/options.rb

Constant Summary collapse

ALLOWED_OVERLOAD_STRATEGIES =
[:translate_all, :translate_last, :raise].freeze

Class Attribute Summary collapse

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(overloads_strategy: :translate_all, output_format: HumanReadableRBIFormat.default) ⇒ Options

: ( | ?overloads_strategy: Symbol, | ?output_format: BaseRBIFormat, | ) -> void



54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs/options.rb', line 54

def initialize(
  overloads_strategy: :translate_all,
  output_format: HumanReadableRBIFormat.default
)
  unless ALLOWED_OVERLOAD_STRATEGIES.include?(overloads_strategy)
    raise ArgumentError, "Unknown overloads_strategy: #{overloads_strategy.inspect}. " \
      "Must be one of: #{ALLOWED_OVERLOAD_STRATEGIES.map(&:inspect).join(", ")}"
  end

  @overloads_strategy = overloads_strategy
  @output_format = output_format

  freeze
end

Class Attribute Details

.defaultObject (readonly)

: Options



72
73
74
# File 'lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs/options.rb', line 72

def default
  @default
end

Instance Attribute Details

#output_formatObject (readonly)

: BaseRBIFormat



48
49
50
# File 'lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs/options.rb', line 48

def output_format
  @output_format
end

#overloads_strategyObject (readonly)

: Symbol



43
44
45
# File 'lib/spoom/sorbet/translate/rbs_comments_to_sorbet_sigs/options.rb', line 43

def overloads_strategy
  @overloads_strategy
end