class Linguistics::Latin::Verb::ImperativeBlock
Public Class Methods
new(stem, plural_present_imperative, verb)
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 14 def initialize(stem, plural_present_imperative, verb) @stem = stem @plural_present_imperative = plural_present_imperative @verb = verb if @verb.classification == Linguistics::Latin::Verb::Classification::Deponent @results = form_imperative_base_for_deponent add_additional_imperative_forms_for_deponent else @results = form_imperative_base add_additional_imperative_forms end @results.map{|v| fix_macrons v} end
Public Instance Methods
add_additional_imperative_forms_for_deponent()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 34 def add_additional_imperative_forms_for_deponent end
form_imperative_base_for_deponent()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 30 def form_imperative_base_for_deponent [@verb.stem, @verb.active_voice_indicative_mood_present_tense.plural_number_second_person, @verb.active_voice_indicative_mood_present_tense_third_person_singular_number.sub(/tur\z/, 'tor')] end
future(qualifier=nil)
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 45 def future(qualifier=nil) return @results[2,4] if qualifier.nil? end
present(qualifier=nil)
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 49 def present(qualifier=nil) j = @results[0,2] return j if qualifier.nil? qualifier = qualifier.to_s return j[0] if qualifier =~ /singular/ return j[1] if qualifier =~ /plural/ end
present_tense_plural_number()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 41 def present_tense_plural_number present('plural') end
present_tense_singular_number()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 37 def present_tense_singular_number present('singular') end
Private Instance Methods
add_additional_imperative_forms()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 59 def add_additional_imperative_forms stem = @stem || @verb.instance_variable_get(:@proxyVerb).stem @results << stem + "tō" @results << stem + "tōte" @results << stem + "tō" @results << stem + "ntō" end
form_imperative_base()
click to toggle source
# File lib/linguistics_latin_imperative_block.rb, line 68 def form_imperative_base ImperativeRuleFactory.new(@verb).present_tense_rule.call(@stem, @plural_present_imperative) end