@@ 178-180 (lines=3) @@ | ||
175 | // TVORIT |
|
176 | if ($last == 'ь') { |
|
177 | $forms[Cases::TVORIT] = $prefix.'ой'; |
|
178 | } else { |
|
179 | $forms[Cases::TVORIT] = self::chooseVowelAfterConsonant($last, $soft_last, $prefix.'ей', $prefix.'ой'); |
|
180 | } |
|
181 | ||
182 | // if ($last == 'й' || (self::isConsonant($last) && !self::isHissingConsonant($last)) || self::checkLastConsonantSoftness($word)) |
|
183 | // $forms[Cases::TVORIT] = $prefix.'ей'; |
|
@@ 224-226 (lines=3) @@ | ||
221 | // $forms[Cases::TVORIT] = $prefix.'ом'; # http://morpher.ru/Russian/Spelling.aspx#sibilant |
|
222 | if (self::isHissingConsonant($last) || (in_array($last, ['ь', 'е', 'ё', 'ю', 'я']) && self::isHissingConsonant(S::slice($word, -2, -1))) || $last == 'ц') { |
|
223 | $forms[Cases::TVORIT] = $prefix.'ем'; |
|
224 | } elseif (in_array($last, ['й'/*, 'ч', 'щ'*/]) || $soft_last) { |
|
225 | $forms[Cases::TVORIT] = $prefix.'ем'; |
|
226 | } else { |
|
227 | $forms[Cases::TVORIT] = $prefix.'ом'; |
|
228 | } |
|
229 |
@@ 140-142 (lines=3) @@ | ||
137 | $forms[Cases::IMENIT] = $prefix.'и'; |
|
138 | } elseif ($last == 'н' || $last == 'ц') { |
|
139 | $forms[Cases::IMENIT] = $prefix.'ы'; |
|
140 | } else { |
|
141 | $forms[Cases::IMENIT] = self::chooseVowelAfterConsonant($last, $soft_last, $prefix.'я', $prefix.'а'); |
|
142 | } |
|
143 | ||
144 | // RODIT |
|
145 | if (isset(self::$genitiveExceptions[$word])) { |