# File lib/kwartz/parser.rb, line 293 def scan_block(skip_open_curly=false) unless skip_open_curly token = scan() unless token == ?{ @error = :block_notfound return @token = :error end end start_pos = @pos count = 1 while (c = getch()) != nil if c == ?{ count += 1 elsif c == ?} count -= 1 break if count == 0 end end unless c @error = :block_unclosed return @token = :error end assert unless c == ?} @value = @input[start_pos, @pos - start_pos] @token = :block getch() return @value end