Module: Scorched
- Defined in:
- lib/scorched/error.rb,
lib/scorched/match.rb,
lib/scorched/static.rb,
lib/scorched/options.rb,
lib/scorched/request.rb,
lib/scorched/version.rb,
lib/scorched/response.rb,
lib/scorched/collection.rb,
lib/scorched/controller.rb,
lib/scorched/dynamic_delegate.rb
Defined Under Namespace
Modules: DynamicDelegate
Classes: Collection, Controller, Error, Match, Options, Request, Response, Static
Constant Summary
collapse
- VERSION =
'1.0.3'
- TemplateCache =
Tilt::Cache.new
Class Method Summary
collapse
Class Method Details
.Collection(accessor_name, append_parent = false) ⇒ Object
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
# File 'lib/scorched/collection.rb', line 41
def Collection(accessor_name, append_parent = false)
m = Module.new
m.class_eval <<-MOD
class << self
def included(klass)
klass.extend(ClassMethods)
end
end
module ClassMethods
def #{accessor_name}
@#{accessor_name} || begin
parent = superclass.#{accessor_name} if superclass.respond_to?(:#{accessor_name}) && Scorched::Collection === superclass.#{accessor_name}
@#{accessor_name} = Collection.new.parent!(parent)
@#{accessor_name}.append_parent = #{append_parent.inspect}
@#{accessor_name}
end
end
end
def #{accessor_name}(*args)
self.class.#{accessor_name}(*args)
end
MOD
m
end
|
.Options(accessor_name) ⇒ Object
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
|
# File 'lib/scorched/options.rb', line 42
def Options(accessor_name)
m = Module.new
m.class_eval <<-MOD
class << self
def included(klass)
klass.extend(ClassMethods)
end
end
module ClassMethods
def #{accessor_name}
@#{accessor_name} || begin
parent = superclass.#{accessor_name} if superclass.respond_to?(:#{accessor_name}) && Scorched::Options === superclass.#{accessor_name}
@#{accessor_name} = Options.new.parent!(parent)
end
end
end
def #{accessor_name}(*args)
self.class.#{accessor_name}(*args)
end
MOD
m
end
|