module Playbook::Props
Attributes
values[RW]
Public Class Methods
new(prop_values = {}, &block)
click to toggle source
# File lib/playbook/props.rb, line 29 def initialize(prop_values = {}, &block) self.values = { children: block }.merge(Hash(prop_values)) self.class.props.each do |key, definition| definition.validate! values[key] end end
Public Instance Methods
clear_props()
click to toggle source
# File lib/playbook/props.rb, line 45 def clear_props props.keys.each { |prop_name| remove_method(prop_name) } props.clear end
partial(path)
click to toggle source
# File lib/playbook/props.rb, line 56 def partial(path) define_method(:to_partial_path) { path } end
prop(name)
click to toggle source
# File lib/playbook/props.rb, line 36 def prop(name) self.class.props[name].value values[name] end