Module: Helpers::Properties
Defined Under Namespace
Modules: MetaClassMethods
Classes: MethodMissingRedirector
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.extended(klass) ⇒ Object
16
17
18
19
20
|
# File 'lib/dav4rack_ext/helpers/properties.rb', line 16
def self.extended(klass)
class << klass
include MetaClassMethods
end
end
|
Instance Method Details
#define_properties(namespace, &block) ⇒ Object
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
|
# File 'lib/dav4rack_ext/helpers/properties.rb', line 38
def define_properties(namespace, &block)
explicit = false
obj = MethodMissingRedirector.new(:property, :explicit) do |method_name, name, &block|
if method_name == :property
define_property(namespace, name.to_s, explicit, &block)
elsif method_name == :explicit
explicit = true
block.call
else
raise NoMethodError, method_name
end
end
obj.instance_eval(&block)
end
|