module LoriotRb
LoriotRb
methods
LoriotRb
calling methods
Public Class Methods
configuration()
click to toggle source
# File lib/core/configuration.rb, line 16 def self.configuration @configuration ||= Configuration.new end
configuration=(config)
click to toggle source
# File lib/core/configuration.rb, line 20 def self.configuration=(config) @configuration = config end
configure() { |configuration| ... }
click to toggle source
# File lib/core/configuration.rb, line 24 def self.configure yield configuration end
root()
click to toggle source
# File lib/loriot-rb.rb, line 24 def self.root File.expand_path('../..', __FILE__) end
version()
click to toggle source
# File lib/version.rb, line 2 def self.version "0.4.0" end
Public Instance Methods
configure_on_the_fly(&block)
click to toggle source
And we define a wrapper for the configuration block, that we'll use to set up our set of options
# File lib/core/configuration_dynamic.rb, line 29 def configure_on_the_fly(&block) instance_eval &block end
parameter(*names)
click to toggle source
Appdata provides a basic single-method DSL with .parameter method being used to define a set of available settings. This method takes one or more symbols, with each one being a name of the configuration option.
# File lib/core/configuration_dynamic.rb, line 13 def parameter(*names) names.each do |name| attr_accessor name # For each given symbol we generate accessor method that sets option's # value being called with an argument, or returns option's current value # when called without arguments define_method name do |*values| value = values.first value ? self.send("#{name}=", value) : instance_variable_get("@#{name}") end end end