gems.sass-3.2.8.lib.sass.scss.script_parser.rb Maven / Gradle / Ivy
Go to download
Sass makes CSS fun again. Sass is an extension of CSS3, adding nested rules, variables, mixins, selector
inheritance, and more. It's translated to well-formatted, standard CSS using the command line tool or a
web-framework plugin.
This is a repackaged GEM in a JAR format of the sass-lang.gem package. The sass-gems package version
follows the sass-lang.gem versions located http://rubyforge.org/frs/?group_id=9702. Simply change
the version of this package to download and repackage the same GEM version.
module Sass
module SCSS
# A mixin for subclasses of {Sass::Script::Parser}
# that makes them usable by {SCSS::Parser} to parse SassScript.
# In particular, the parser won't raise an error
# when there's more content in the lexer once lexing is done.
# In addition, the parser doesn't support `!` for a variable prefix.
module ScriptParser
private
# @private
def lexer_class
klass = Class.new(super)
klass.send(:include, ScriptLexer)
klass
end
# Instead of raising an error when the parser is done,
# rewind the StringScanner so that it hasn't consumed the final token.
def assert_done
@lexer.unpeek!
end
end
end
end