lib/rouge/regex_lexer.rb in rouge-2.1.0 vs lib/rouge/regex_lexer.rb in rouge-2.1.1

- old
+ new

@@ -44,10 +44,11 @@ attr_reader :rules def initialize(name, &defn) @name = name @defn = defn @rules = [] + @loaded = false end def to_state(lexer_class) load! rules = @rules.map do |rule| @@ -100,11 +101,11 @@ callback ||= case next_state when :pop! proc do |stream| puts " yielding #{tok.qualname}, #{stream[0].inspect}" if @debug @output_stream.call(tok, stream[0]) - puts " popping stack: #{1}" if @debug + puts " popping stack: 1" if @debug @stack.pop or raise 'empty stack!' end when :push proc do |stream| puts " yielding #{tok.qualname}, #{stream[0].inspect}" if @debug @@ -298,10 +299,10 @@ # see http://bugs.ruby-lang.org/issues/7092 # TODO: this doesn't cover cases like /(a|^b)/, but it's # the most common, for now... next if rule.beginning_of_line && !stream.beginning_of_line? - if size = stream.skip(rule.re) + if (size = stream.skip(rule.re)) puts " got #{stream[0].inspect}" if @debug instance_exec(stream, &rule.callback) if size.zero?