Class: Jax::Application
- Inherits:
-
Engine
- Object
- Rails::Railtie
- Engine
- Jax::Application
show all
- Defined in:
- lib/jax/application.rb,
lib/jax/application/configurable.rb
Defined Under Namespace
Modules: Configurable
Classes: Builtin, Configuration, Railties
Class Method Summary
collapse
Instance Method Summary
collapse
Methods inherited from Engine
find_root_with_flag
Class Method Details
10
11
12
|
# File 'lib/jax/application.rb', line 10
def configure(&block)
class_eval(&block)
end
|
.inherited(base) ⇒ Object
14
15
16
17
18
19
|
# File 'lib/jax/application.rb', line 14
def inherited(base)
raise "You cannot have more than one Jax::Application" if Jax.application
super
Jax.application = base.instance
end
|
.initialize! ⇒ Object
33
34
35
36
37
38
39
40
|
# File 'lib/jax/application.rb', line 33
def initialize!
return self if @initialized
@initialized = true
run_initializers(self)
self
end
|
.instance ⇒ Object
21
22
23
|
# File 'lib/jax/application.rb', line 21
def instance
@@instance ||= new
end
|
.respond_to?(*args) ⇒ Boolean
29
30
31
|
# File 'lib/jax/application.rb', line 29
def respond_to?(*args)
super || instance.respond_to?(*args)
end
|
.routes ⇒ Object
25
26
27
|
# File 'lib/jax/application.rb', line 25
def routes
Jax.application.config.routes
end
|
Instance Method Details
#asset_paths ⇒ Object
116
117
118
119
120
121
122
|
# File 'lib/jax/application.rb', line 116
def asset_paths
if !@asset_paths
@asset_paths = []
self.class.initialize!
end
@asset_paths
end
|
#detect_shaders(paths) ⇒ Object
55
56
57
58
59
60
61
62
|
# File 'lib/jax/application.rb', line 55
def detect_shaders(paths)
for path in paths
shader_paths = Dir[File.join(path, "*/{vertex,fragment}.ejs")].collect { |d| File.dirname(d) }.uniq
shader_paths.each do |shader_path|
shaders.push Jax::Shader.from(shader_path)
end
end
end
|
#initializers ⇒ Object
136
137
138
139
140
141
142
143
144
145
|
# File 'lib/jax/application.rb', line 136
def initializers
initializers = nil
railties.all { |r| initializers = initializers ? initializers + r.initializers : r.initializers }
initializers = initializers ? initializers + super : super
initializers
end
|
#javascript_load_paths ⇒ Object
76
77
78
79
80
81
82
|
# File 'lib/jax/application.rb', line 76
def javascript_load_paths
if !@javascript_load_paths
@javascript_load_paths = []
@javascript_load_paths = javascript_source_roots + @javascript_load_paths
end
@javascript_load_paths
end
|
#javascript_source_roots ⇒ Object
108
109
110
111
112
113
114
|
# File 'lib/jax/application.rb', line 108
def javascript_source_roots
if !@javascript_source_roots
@javascript_source_roots = []
self.class.initialize!
end
@javascript_source_roots
end
|
#javascript_sources ⇒ Object
84
85
86
87
88
89
90
|
# File 'lib/jax/application.rb', line 84
def javascript_sources
if !@javascript_sources
@javascript_sources = []
self.class.initialize!
end
@javascript_sources
end
|
#resource_paths ⇒ Object
92
93
94
95
96
97
98
|
# File 'lib/jax/application.rb', line 92
def resource_paths
if !@resource_files
@resource_files = []
self.class.initialize!
end
@resource_files
end
|
#resources ⇒ Object
100
101
102
103
104
105
106
|
# File 'lib/jax/application.rb', line 100
def resources
if !@resources
@resources = Jax::ResourceCompiler.new
self.class.initialize!
end
@resources
end
|
#shader_load_paths ⇒ Object
68
69
70
71
72
73
74
|
# File 'lib/jax/application.rb', line 68
def shader_load_paths
if !@shader_load_paths
@shader_load_paths = []
self.class.initialize!
end
@shader_load_paths
end
|
#shaders ⇒ Object
124
125
126
127
128
129
130
131
132
133
134
|
# File 'lib/jax/application.rb', line 124
def shaders
if !@shaders
@shaders = []
def shaders.find(name)
select { |s| s.name == name }.first
end
self.class.initialize!
end
@shaders
end
|