Module: Humanized::KNG
Defined Under Namespace
Classes: KNGWrapper
Instance Method Summary collapse
- #g(humanizer, genus, *args) ⇒ Object
- #kn(humanizer, kasus, numerus, *args) ⇒ Object
- #kng(humanizer, kasus, numerus, genus, *args) ⇒ Object
- #kongruent(humanizer, from, *args) ⇒ Object
- #n(humanizer, numerus, *args) ⇒ Object
Instance Method Details
#g(humanizer, genus, *args) ⇒ Object
61 62 63 64 65 66 67 68 69 70 71 |
# File 'lib/humanized/interpolation/kng.rb', line 61 def g(humanizer, genus, *args) if args.size == 3 # male, female, neutral genus = x_to_genus(humanizer, genus) a = [:male,:female,:neutral].zip(args) if genus.kind_of? Set return genus.map{|g| a.assoc(g)[1] } end return a.assoc(genus)[1] end end |
#kn(humanizer, kasus, numerus, *args) ⇒ Object
82 83 84 85 86 87 88 89 |
# File 'lib/humanized/interpolation/kng.rb', line 82 def kn(humanizer, kasus, numerus, *args) if args.size == 2 # singular, plural return args[ x_to_numerus(humanizer, numerus) == :singular ? 0 : 1 ] elsif args.size == 1 return KNGWrapper.wrap(args, humanizer, x_to_kasus(humanizer, kasus), x_to_numerus(humanizer, numerus)) end end |
#kng(humanizer, kasus, numerus, genus, *args) ⇒ Object
92 93 94 95 96 97 98 99 |
# File 'lib/humanized/interpolation/kng.rb', line 92 def kng(humanizer, kasus, numerus, genus,*args) if args.size == 2 # singular, plural return args[ x_to_numerus(humanizer, numerus) == :singular ? 0 : 1 ] elsif args.size == 1 return KNGWrapper.wrap(args, humanizer, x_to_kasus(humanizer, kasus), x_to_numerus(humanizer, numerus), x_to_genus(humanizer, genus)) end end |
#kongruent(humanizer, from, *args) ⇒ Object
101 102 103 |
# File 'lib/humanized/interpolation/kng.rb', line 101 def kongruent(humanizer, from, *args) return KNGWrapper.wrap(args, humanizer, x_to_kasus(humanizer, from), x_to_numerus(humanizer, from), x_to_genus(humanizer, from)) end |
#n(humanizer, numerus, *args) ⇒ Object
73 74 75 76 77 78 79 80 |
# File 'lib/humanized/interpolation/kng.rb', line 73 def n(humanizer, numerus, *args) if args.size == 2 # singular, plural return args[ x_to_numerus(humanizer, numerus) == :singular ? 0 : 1 ] elsif args.size == 1 return KNGWrapper.wrap(args, humanizer, .const_get(:KASUS).first.to_sym, x_to_numerus(humanizer, numerus)) end end |