Class: Less::Engine
Instance Attribute Summary collapse
-
#css ⇒ Object
readonly
Returns the value of attribute css.
-
#less ⇒ Object
readonly
Returns the value of attribute less.
Instance Method Summary collapse
-
#initialize(obj) ⇒ Engine
constructor
A new instance of Engine.
- #parse(env = Node::Element.new) ⇒ Object (also: #to_tree)
- #prepare ⇒ Object
- #to_css ⇒ Object
Constructor Details
#initialize(obj) ⇒ Engine
Returns a new instance of Engine.
16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/less/engine.rb', line 16 def initialize obj @less = if obj.is_a? File @path = File.dirname(File. obj.path) obj.read elsif obj.is_a? String obj.dup else raise ArgumentError, "argument must be an instance of File or String!" end @parser = LessParser.new end |
Instance Attribute Details
#css ⇒ Object (readonly)
Returns the value of attribute css.
14 15 16 |
# File 'lib/less/engine.rb', line 14 def css @css end |
#less ⇒ Object (readonly)
Returns the value of attribute less.
14 15 16 |
# File 'lib/less/engine.rb', line 14 def less @less end |
Instance Method Details
#parse(env = Node::Element.new) ⇒ Object Also known as: to_tree
29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/less/engine.rb', line 29 def parse env = Node::Element.new root = @parser.parse(self.prepare) if root @tree = root.build env.tap {|e| e.file = @path } else raise SyntaxError, @parser. end @tree end |
#prepare ⇒ Object
46 47 48 |
# File 'lib/less/engine.rb', line 46 def prepare @less.gsub(/\r\n/, "\n").gsub(/\t/, ' ') end |
#to_css ⇒ Object
42 43 44 |
# File 'lib/less/engine.rb', line 42 def to_css @css || @css = self.parse.to_css end |