Class: Linguistics::Latin::Verb::LatinVerb::Participler
- Inherits:
-
Object
- Object
- Linguistics::Latin::Verb::LatinVerb::Participler
- Extended by:
- Forwardable
- Includes:
- Phonographia
- Defined in:
- lib/latinverb/components/participler.rb
Instance Method Summary collapse
- #future_active_participle ⇒ Object
- #future_passive_participle ⇒ Object
- #gerund ⇒ Object
- #gerundive ⇒ Object
-
#initialize(verb) ⇒ Participler
constructor
A new instance of Participler.
- #perfect_passive_participle ⇒ Object
- #present_active_participle ⇒ Object
- #supine ⇒ Object
Constructor Details
#initialize(verb) ⇒ Participler
Returns a new instance of Participler.
11 12 13 |
# File 'lib/latinverb/components/participler.rb', line 11 def initialize(verb) @verb = verb end |
Instance Method Details
#future_active_participle ⇒ Object
21 22 23 24 25 |
# File 'lib/latinverb/components/participler.rb', line 21 def future_active_participle mybase = passive_perfect_participle.gsub(/u[sm]$/, "ūr") singular_endings = %w(us a um) singular_endings.collect{ |x| mybase + "#{x}".chomp }.join(', ') end |
#future_passive_participle ⇒ Object
33 34 35 36 37 |
# File 'lib/latinverb/components/participler.rb', line 33 def future_passive_participle mybase = participial_stem + "nd" singular_endings = %w(us a um) singular_endings.collect{ |x| fix_macrons(mybase + "#{x}".chomp) }.join(', ') end |
#gerund ⇒ Object
43 44 45 46 |
# File 'lib/latinverb/components/participler.rb', line 43 def gerund b = gerundive.sub( /.*\s+(.*)um.*$/, "\\1" ) b += "ī, ō, etc." end |
#gerundive ⇒ Object
39 40 41 |
# File 'lib/latinverb/components/participler.rb', line 39 def gerundive @verb.future_passive_participle end |
#perfect_passive_participle ⇒ Object
27 28 29 30 31 |
# File 'lib/latinverb/components/participler.rb', line 27 def perfect_passive_participle mybase = passive_perfect_participle.sub(/u[sm]$/,'') singular_endings=%w(us a um) singular_endings.collect{ |x| mybase + "#{x}".chomp }.join(', ') end |
#present_active_participle ⇒ Object
15 16 17 18 19 |
# File 'lib/latinverb/components/participler.rb', line 15 def present_active_participle raise "Participial stem was nil" if participial_stem.nil? endings = %w(ns ntis) endings.collect{ |x| fix_macrons(participial_stem + x.chomp) }.join(', ') end |
#supine ⇒ Object
48 49 50 51 52 53 |
# File 'lib/latinverb/components/participler.rb', line 48 def supine acc = passive_perfect_participle abl = acc.sub( /^(.*)um$/, "\\1" ) abl += "ū" {:ablative => abl, :accusative => acc} end |