Class: Wiktionary::Noun
- Inherits:
-
Object
- Object
- Wiktionary::Noun
- Defined in:
- lib/wiktionary/noun.rb
Constant Summary collapse
- FILES =
%w[ noun noun_uncountable noun_usually_uncountable noun_countable_and_uncountable noun_non_attested noun_unknown noun_pluralia_tantum noun_proper ]
- PLURALS =
%w[noun noun_usually_uncountable noun_countable_and_uncountable ]
- UNCOUNTABLE =
'noun_uncountable'
- PLURALIA_TANTUM =
'noun_pluralia_tantum'
Instance Method Summary collapse
-
#initialize(path = File.join(File.dirname(__FILE__),'..','..','data/')) ⇒ Noun
constructor
Argument path locates directory with CSV files form Wiktionary.
-
#plural?(noun) ⇒ Boolean
Indicate if noun is in plural form.
-
#singular?(noun) ⇒ Boolean
Indicate if noun is in singular form (or uncountable).
-
#singularize(noun) ⇒ Object
Returns list of possible singular forms of noun.
Constructor Details
#initialize(path = File.join(File.dirname(__FILE__),'..','..','data/')) ⇒ Noun
Argument path locates directory with CSV files form Wiktionary
24 25 26 27 28 |
# File 'lib/wiktionary/noun.rb', line 24 def initialize(path=File.join(File.dirname(__FILE__),'..','..','data/')) @plural_to_singulars = Hash.new{|h,e| h[e] = [] } @singular_to_plurals = Hash.new{|h,e| h[e] = [] } load_files(path) end |
Instance Method Details
#plural?(noun) ⇒ Boolean
Indicate if noun is in plural form.
36 37 38 |
# File 'lib/wiktionary/noun.rb', line 36 def plural?(noun) @plural_to_singulars.has_key?(noun) end |
#singular?(noun) ⇒ Boolean
Indicate if noun is in singular form (or uncountable).
31 32 33 |
# File 'lib/wiktionary/noun.rb', line 31 def singular?(noun) @singular_to_plurals.has_key?(noun) end |
#singularize(noun) ⇒ Object
Returns list of possible singular forms of noun.
41 42 43 |
# File 'lib/wiktionary/noun.rb', line 41 def singularize(noun) @plural_to_singulars[noun] end |