module Mongo::Config::Options
Encapsulates logic for setting options.
Public Instance Methods
defaults()
click to toggle source
Get the defaults or initialize a new empty hash.
@return [ Hash ] The default options.
# File lib/mongo/config/options.rb, line 13 def defaults @defaults ||= {} end
option(name, options = {})
click to toggle source
Define a configuration option with a default.
@param [ Symbol
] name The name of the configuration option. @param [ Hash ] options Extras for the option.
@option options [ Object ] :default The default value.
# File lib/mongo/config/options.rb, line 23 def option(name, options = {}) defaults[name] = settings[name] = options[:default] class_eval do # log_level accessor is defined specially below define_method(name) do settings[name] end define_method("#{name}=") do |value| settings[name] = value end define_method("#{name}?") do !!send(name) end end end
reset()
click to toggle source
Reset the configuration options to the defaults.
@example Reset the configuration options.
config.reset
@return [ Hash ] The defaults.
# File lib/mongo/config/options.rb, line 48 def reset settings.replace(defaults) end
settings()
click to toggle source
Get the settings or initialize a new empty hash.
@example Get the settings.
options.settings
@return [ Hash ] The setting options.
# File lib/mongo/config/options.rb, line 58 def settings @settings ||= {} end