Class: Dassets::Source

Inherits:
Object
  • Object
show all
Defined in:
lib/dassets/source.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(path) ⇒ Source

Returns a new instance of Source.



8
9
10
11
12
# File 'lib/dassets/source.rb', line 8

def initialize(path)
  @path = path.to_s
  @filter = proc{ |paths| paths }
  @engines = Hash.new{ |h,k| Dassets::NullEngine.new }
end

Instance Attribute Details

#enginesObject (readonly)

Returns the value of attribute engines.



6
7
8
# File 'lib/dassets/source.rb', line 6

def engines
  @engines
end

#pathObject (readonly)

Returns the value of attribute path.



6
7
8
# File 'lib/dassets/source.rb', line 6

def path
  @path
end

Instance Method Details

#engine(input_ext, engine_class, registered_opts = nil) ⇒ Object



18
19
20
21
22
# File 'lib/dassets/source.rb', line 18

def engine(input_ext, engine_class, registered_opts=nil)
  default_opts = { 'source_path' => @path }
  engine_opts = default_opts.merge(registered_opts || {})
  @engines[input_ext.to_s] = engine_class.new(engine_opts)
end

#filesObject



24
25
26
# File 'lib/dassets/source.rb', line 24

def files
  apply_filter(glob_files || []).sort
end

#filter(&block) ⇒ Object



14
15
16
# File 'lib/dassets/source.rb', line 14

def filter(&block)
  block.nil? ? @filter : @filter = block
end