Module: Melisa::BaseConfigFlags
- Included in:
- Trie
- Defined in:
- lib/melisa/base_config_flags.rb
Instance Method Summary collapse
- #binary_flag(bool) ⇒ Object
- #config_flags(opts = {}) ⇒ Object
- #lookup_cache_size(cache_size) ⇒ Object
- #valid_node_order(order) ⇒ Object
- #valid_num_tries(num_tries) ⇒ Object
Instance Method Details
#binary_flag(bool) ⇒ Object
35 36 37 38 39 40 41 42 |
# File 'lib/melisa/base_config_flags.rb', line 35 def binary_flag(bool) case bool when true then Marisa::BINARY_TAIL when false then Marisa::TEXT_TAIL else raise ArgumentError, "binary_flag must be true or false (got #{bool.inspect})" end end |
#config_flags(opts = {}) ⇒ Object
20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/melisa/base_config_flags.rb', line 20 def config_flags(opts={}) opts = { :binary => false, :num_tries => :default, :cache_size => :default, :order => :default }.merge(opts) return \ binary_flag(opts[:binary]) | valid_num_tries(opts[:num_tries]) | lookup_cache_size(opts[:cache_size]) | valid_node_order(opts[:order]) end |
#lookup_cache_size(cache_size) ⇒ Object
56 57 58 59 60 61 62 63 64 |
# File 'lib/melisa/base_config_flags.rb', line 56 def lookup_cache_size(cache_size) if CacheSizes.keys.include?(cache_size) return CacheSizes[cache_size] else sizes = CacheSizes.keys msg = "cache_size (#{cache_size}) must be one of: #{sizes.inspect}" raise ConfigError, msg end end |
#valid_node_order(order) ⇒ Object
66 67 68 69 70 71 72 73 74 |
# File 'lib/melisa/base_config_flags.rb', line 66 def valid_node_order(order) if NodeOrders.keys.include?(order) return NodeOrders[order] else = NodeOrders.keys msg = "node_order (#{order}) must be one of: #{valid_options.inspect}" raise ConfigError, msg end end |
#valid_num_tries(num_tries) ⇒ Object
44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/melisa/base_config_flags.rb', line 44 def valid_num_tries(num_tries) num_tries = Marisa::DEFAULT_NUM_TRIES if num_tries == :default min = Marisa::MIN_NUM_TRIES max = Marisa::MAX_NUM_TRIES if (min..max).include? num_tries return num_tries else msg = "num_tries (#{num_tries}) must be between #{min} and #{max}" raise ConfigError, msg end end |