class Assette::Reader::Base

Attributes

file[R]

Public Class Methods

extension() click to toggle source
# File lib/assette/reader.rb, line 49
def extension
  if m = self.inspect.match(/::(\w+)$/i)
    m[1].downcase
  end
end
inherited(subclass) click to toggle source

Gets called twice currenlty, once on Class.new(Reader::Base) and once on the subclassing. Gotta fix that

# File lib/assette/reader.rb, line 39
def inherited subclass
  return if subclass == Assette::Reader::Base || subclass.inspect =~ /#<Class/
  
  if outputs
    Assette::Reader::OUTPUTS[outputs] |= [subclass]
  end
  
  subclass.set_extension
end
mime_type() click to toggle source
# File lib/assette/reader.rb, line 86
def mime_type
  @mime_type ||= MIME::Types.type_for("test.#{extension}").first
end
new(file) click to toggle source
# File lib/assette/reader.rb, line 23
def initialize(file)
  @file = file
end
outputs() click to toggle source
# File lib/assette/reader.rb, line 55
def outputs
  
end
set_extension(val = nil) click to toggle source
# File lib/assette/reader.rb, line 70
        def set_extension val = nil
          if val
            raise ArgumentError, 'must set extension to a symbol' unless val.is_a?(Symbol)
            instance_eval <<-RUBY
            def extension
              #{val.inspect}
            end
            RUBY
          end
          
          if ex = extension
            Assette::Reader::ALL[ex] = self
            Assette::Reader::OUTPUT_MAP[ex] = outputs.to_s
          end
        end
set_outputs(val) click to toggle source
# File lib/assette/reader.rb, line 59
        def set_outputs val
          raise ArgumentError, 'must set outputs to a symbol' unless val.is_a?(Symbol)
          
          instance_eval <<-RUBY
          def outputs
            #{val.inspect}
          end
          RUBY
          val
        end

Public Instance Methods

compile() click to toggle source
# File lib/assette/reader.rb, line 31
def compile
  raise Exception, "You must implement the compile method for #{self.class.inspect}"
end
text() click to toggle source
# File lib/assette/reader.rb, line 27
def text
  @file.text
end