class Basepack::FilterQL::Builder
Attributes
options[R]
query[R]
slice[R]
Public Class Methods
new(query, options, slice = nil)
click to toggle source
# File lib/basepack/filter_ql.rb, line 155 def initialize(query, options, slice = nil) @query = query @options = options @slice = slice end
Public Instance Methods
functions()
click to toggle source
# File lib/basepack/filter_ql.rb, line 161 def functions @options[:functions] || {} end
new_for_slice(slice)
click to toggle source
# File lib/basepack/filter_ql.rb, line 179 def new_for_slice(slice) Builder.new(query, options, slice) end
raise_error(message)
click to toggle source
# File lib/basepack/filter_ql.rb, line 170 def raise_error(message) if slice line, column = slice.line_and_column raise_error_for_pos(message, slice.offset + slice.size, line, column) else raise ParseError, message end end
raise_error_for_pos(message, pos, line = '?', column = '?')
click to toggle source
# File lib/basepack/filter_ql.rb, line 165 def raise_error_for_pos(message, pos, line = '?', column = '?') query_error = pos >= query.length ? "#{query}(<=CHYBA)" : query.dup.insert(pos, "(<=CHYBA)") raise ParseError, "#{message} na řádku #{line} sloupec #{column}: \"#{query_error}\"" end