Class: LLT::Constants::Endings::Adjective

Inherits:
Object
  • Object
show all
Defined in:
lib/llt/constants/endings.rb

Direct Known Subclasses

Metrical

Defined Under Namespace

Classes: Metrical

Constant Summary collapse

A =
Noun::A
O =
Noun::O
ON =
Noun::ON
CMF =
Noun::C
CN =
Noun::CN
MMF =
[nil, :is, :i, :em, nil, :i, :es, :ium, :ibus, :es, :es, :ibus]
MN =
[nil, :is, :i, nil, nil, :i, :ia, :ium, :ibus, :ia, :ia, :ibus]
PRM =
[:us, :ius, :i, :um, :e, :o, :i, :orum, :is, :os, :i, :is]
PRF =
[:a, :ius, :i, :am, :a, :a, :ae, :arum, :is, :as, :ae, :is]
PRN =
[:um, :ius, :i, :um, :um, :o, :a, :orum, :is, :a, :a, :is]
AO =
Noun::O + Noun::A + Noun::ON
MIXED =
MMF + MMF + MN
MIXED_1 =
MIXED
MIXED_2 =
MIXED.each_with_index.map do |el, i|
  case i.to_s
  when /^(0|4|12|16)$/ then :is
  when /^(24|27|28)$/  then :e
  else el
  end
end
MIXED_3 =
MIXED_2.each_with_index.map do |el, i|
  case i.to_s
  when /^(0|4)$/ then nil
  else el
  end
end
CONSONANTIC =
CMF + CMF + CN
PRONOMINAL =
PRM + PRF + PRN

Class Method Summary collapse

Class Method Details

.get(inflection_class, number_of_endings, comparatio = :positivus) ⇒ Object



132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
# File 'lib/llt/constants/endings.rb', line 132

def self.get(inflection_class, number_of_endings, comparatio = :positivus)
  const_get(case comparatio
              when :comparativus
                :CONSONANTIC
              when :superlativus
                :AO
              else # positivus - or nil if someone has forgotten to provide a value
                case [inflection_class, number_of_endings]
                when [1, 3] then :AO
                when [3, 1] then :MIXED_1
                when [3, 2] then :MIXED_2
                when [3, 3] then :MIXED_3
                when [5, 3] then :PRONOMINAL
                end
              end)
end