class DDQL::TokenType::SubQueryFields
Public Class Methods
new()
click to toggle source
Calls superclass method
DDQL::TokenType::new
# File lib/ddql/token_type.rb, line 527 def initialize super(name: :sub_query_fields, pattern: /fields:\s*(?<sub_query_fields>#{FACTOR_PATTERN})\s*,?\s*/) trimming! end
Public Instance Methods
as_hash(data)
click to toggle source
# File lib/ddql/token_type.rb, line 532 def as_hash(data) {name => {factor: data}} end
parse(parser, token, expression: nil)
click to toggle source
# File lib/ddql/token_type.rb, line 536 def parse(parser, token, expression: nil) if expression.nil? || expression.keys != %i[agg sub_query_expression sub_query_type] as_hash(token.data).merge parser.parse else expression.merge(as_hash(token.data)) end end