Class: Linguistics::Latin::Verb::LatinVerb::TenseMethodApplicator::MutatorForVerbType

Inherits:
Object
  • Object
show all
Extended by:
Forwardable
Defined in:
lib/latinverb/tense_method_applicator/fourth.rb,
lib/latinverb/tense_method_applicator/first_builder.rb,
lib/latinverb/tense_method_applicator/third_builder.rb,
lib/latinverb/tense_method_applicator/fourth_builder.rb,
lib/latinverb/tense_method_applicator/second_builder.rb,
lib/latinverb/tense_method_applicator/thirdio_builder.rb,
lib/latinverb/tense_method_applicator/irregular_builder.rb,
lib/latinverb/tense_method_applicator/mutator_for_verb_type.rb

Defined Under Namespace

Classes: FirstBuilder, FourthBuilder, IrregularBuilder, SecondBuilder, ThirdBuilder, ThirdIOBuilder

Constant Summary collapse

MAPPING =
{
  First: FirstBuilder,
  Second: SecondBuilder,
  ThirdIO: ThirdIOBuilder,
  Third: ThirdBuilder,
  Fourth: FourthBuilder,
  Irregular: IrregularBuilder
}

Instance Method Summary collapse

Constructor Details

#initialize(verb) ⇒ MutatorForVerbType

Returns a new instance of MutatorForVerbType.



26
27
28
# File 'lib/latinverb/tense_method_applicator/mutator_for_verb_type.rb', line 26

def initialize(verb)
  @verb = verb
end

Instance Method Details

#mutate!Object



30
31
32
# File 'lib/latinverb/tense_method_applicator/mutator_for_verb_type.rb', line 30

def mutate!
  MAPPING[verb_type.ordinal_name_key].new(@verb).build!
end