Class: Gluey::Glues::Script
- Inherits:
-
Base
- Object
- Base
- Gluey::Glues::Script
show all
- Defined in:
- lib/gluey/glues/script.rb
Constant Summary
collapse
- PREFIXES =
['//'].map{|p| Regexp.escape(p)}
- DIRECTIVES_REGEXP =
Regexp.compile "\\A(?:\\s*#{PREFIXES.map{|p| "(?:#{p}=.*\\n?)+"}.join '|'})+"
Instance Method Summary
collapse
Methods inherited from Base
#initialize, #read_base_file
Instance Method Details
#pre_append(args) ⇒ Object
29
30
31
32
33
34
|
# File 'lib/gluey/glues/script.rb', line 29
def pre_append(args)
file = find_nested_file(args.first)
cached_file, deps = get_nested_piece file
@dependencies.concat deps
@script = "#{@script}#{File.read cached_file}"
end
|
#pre_depend_on(args) ⇒ Object
36
37
38
39
|
# File 'lib/gluey/glues/script.rb', line 36
def pre_depend_on(args)
file = find_nested_file(args[1])
@dependencies << ::Gluey::Dependencies::SingleFile.new(file).actualize
end
|
#pre_prepend(args) ⇒ Object
22
23
24
25
26
27
|
# File 'lib/gluey/glues/script.rb', line 22
def pre_prepend(args)
file = find_nested_file(args.first)
cached_file, deps = get_nested_piece file
@dependencies.concat deps
@script = "#{File.read cached_file}#{@script}"
end
|
#process(base_file, deps) ⇒ Object
9
10
11
12
13
14
15
16
17
18
19
20
|
# File 'lib/gluey/glues/script.rb', line 9
def process(base_file, deps)
@script, @directives = strip_directives read_base_file(base_file)
return @script unless @directives
@dependencies = deps
@output = ''
@base_file = base_file
@marks = {append_self: ->{ @output += @script }}
@directives.each{|args| directive args, :pre }
@marks[:append_self].call if @marks[:append_self]
@directives.each{|args| directive args, :post }
@output
end
|