Class: Norikra::SubQuery

Inherits:
Query
  • Object
show all
Defined in:
lib/norikra/query.rb

Instance Attribute Summary

Attributes inherited from Query

#fieldsets, #group, #statement_name

Instance Method Summary collapse

Methods inherited from Query

#aliases, #astnode, #explore, #fields, imported_java_class?, java_class, rewrite_event_field_name, rewrite_event_type_name, rewrite_query, #targets, #to_hash, traverse_fields

Constructor Details

#initialize(ast_nodetree) ⇒ SubQuery

Returns a new instance of SubQuery.



353
354
355
356
357
# File 'lib/norikra/query.rb', line 353

def initialize(ast_nodetree)
  @ast = ast_nodetree
  @targets = nil
  @subqueries = nil
end

Instance Method Details

#astObject



359
# File 'lib/norikra/query.rb', line 359

def ast; @ast; end

#dupObject



369
# File 'lib/norikra/query.rb', line 369

def dup; self; end

#dup_with_stream_name(actual_name) ⇒ Object



370
# File 'lib/norikra/query.rb', line 370

def dup_with_stream_name(actual_name); self; end

#expressionObject



368
# File 'lib/norikra/query.rb', line 368

def expression; ''; end

#nameObject



367
# File 'lib/norikra/query.rb', line 367

def name; ''; end

#subqueriesObject



361
362
363
364
365
# File 'lib/norikra/query.rb', line 361

def subqueries
  return @subqueries if @subqueries
  @subqueries = @ast.children.map{|c| c.listup(:subquery)}.reduce(&:+).map{|n| Norikra::SubQuery.new(n)}
  @subqueries
end