Class: FormVIIIPresentBase
- Inherits:
-
Base
- Object
- Base
- FormVIIIPresentBase
show all
- Defined in:
- lib/arabic_conjugator/present_bases/form_VIII_present_base.rb
Instance Method Summary
collapse
Methods inherited from Base
#adjust_first_radical, #hollow_defective_base
Constructor Details
Returns a new instance of FormVIIIPresentBase.
5
6
7
8
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 5
def initialize(verb)
super
@base = @root1 + "ت" + @root2 + @root3
end
|
Instance Method Details
#adjust_second_radical ⇒ Object
59
60
61
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 59
def adjust_second_radical
@root2 = "ئ"
end
|
#adjust_third_radical ⇒ Object
63
64
65
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 63
def adjust_third_radical
@root3 = "ئ"
end
|
#assimilated_base ⇒ Object
38
39
40
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 38
def assimilated_base
"تّ" + @root2 + @root3
end
|
#assimilated_defective_base ⇒ Object
21
22
23
24
25
26
27
28
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 21
def assimilated_defective_base
@base = "تّ" + @root2 + @root3
if [:you_f, :you_pl, :they].include?(@pronoun)
@base[0...-1]
else
@base[0...-1] + "ي"
end
end
|
#assimilated_taa_base ⇒ Object
47
48
49
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 47
def assimilated_taa_base
@root1 + "ّ" + @root2 + @root3
end
|
#defective_base ⇒ Object
30
31
32
33
34
35
36
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 30
def defective_base
if [:you_f, :you_pl, :they].include?(@pronoun)
@base[0...-1]
else
@base[0...-1] + "ي"
end
end
|
#doubled_base ⇒ Object
42
43
44
45
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 42
def doubled_base
@base = morphed_taa_base if ["ز", "ذ", "ص", "ض"].include?(@root1)
@base[0...-1] + "ّ"
end
|
#hollow_base ⇒ Object
14
15
16
17
18
19
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 14
def hollow_base
@root2 = (FORM_VIII_HOLLOW[@root1+@root2+@root3] ||= "ا")
@base = @root1 + "ت" + @root2 + @root3
@base = morphed_taa_base if ["ز", "ذ", "ص", "ض"].include?(@root1)
@base
end
|
#morphed_taa_base ⇒ Object
51
52
53
54
55
56
57
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 51
def morphed_taa_base
if ["ز", "ذ"].include?(@root1)
@root1 + "د" + @root2 + @root3
else
@root1 + "ط" + @root2 + @root3
end
end
|
#regular_base ⇒ Object
10
11
12
|
# File 'lib/arabic_conjugator/present_bases/form_VIII_present_base.rb', line 10
def regular_base
@base
end
|