module Trestle::Configurable

Public Instance Methods

as_json(options=nil) click to toggle source
# File lib/trestle/configurable.rb, line 31
def as_json(options=nil)
  @options.each_with_object({}) do |(k, v), h|
    h[k] = v.as_json(options)
  end
end
assign(name, value) click to toggle source
# File lib/trestle/configurable.rb, line 23
def assign(name, value)
  options[name.to_sym] = value
end
configure() { |self| ... } click to toggle source
# File lib/trestle/configurable.rb, line 7
def configure(&block)
  yield self if block_given?
  self
end
fetch(name) click to toggle source
# File lib/trestle/configurable.rb, line 12
def fetch(name)
  name = name.to_sym

  options.fetch(name) {
    if defaults.key?(name)
      value = defaults[name]
      assign(name, value)
    end
  }
end
inspect() click to toggle source
# File lib/trestle/configurable.rb, line 37
def inspect
  "#<#{self.class.name || "Anonymous(Trestle::Configurable)"}>"
end
options() click to toggle source
# File lib/trestle/configurable.rb, line 27
def options
  @options ||= {}
end