Module: Influxdb::Arel

Extended by:
Arel
Included in:
Arel
Defined in:
lib/influxdb/arel.rb,
lib/influxdb/arel/quoter.rb,
lib/influxdb/arel/builder.rb,
lib/influxdb/arel/version.rb,
lib/influxdb/arel/visitor.rb,
lib/influxdb/arel/nodes/in.rb,
lib/influxdb/arel/nodes/and.rb,
lib/influxdb/arel/nodes/now.rb,
lib/influxdb/arel/nodes/node.rb,
lib/influxdb/arel/nodes/time.rb,
lib/influxdb/arel/nodes/merge.rb,
lib/influxdb/arel/nodes/table.rb,
lib/influxdb/arel/nodes/unary.rb,
lib/influxdb/arel/clauses/base.rb,
lib/influxdb/arel/nodes/binary.rb,
lib/influxdb/arel/tree_manager.rb,
lib/influxdb/arel/delete_manager.rb,
lib/influxdb/arel/nodes/duration.rb,
lib/influxdb/arel/nodes/equality.rb,
lib/influxdb/arel/nodes/function.rb,
lib/influxdb/arel/nodes/grouping.rb,
lib/influxdb/arel/nodes/ordering.rb,
lib/influxdb/arel/select_manager.rb,
lib/influxdb/arel/extensions/math.rb,
lib/influxdb/arel/nodes/attribute.rb,
lib/influxdb/arel/nodes/sql_literal.rb,
lib/influxdb/arel/nodes/table_alias.rb,
lib/influxdb/arel/clauses/expressions.rb,
lib/influxdb/arel/clauses/from_clause.rb,
lib/influxdb/arel/clauses/group_clause.rb,
lib/influxdb/arel/clauses/where_clause.rb,
lib/influxdb/arel/clauses/select_clause.rb,
lib/influxdb/arel/nodes/infix_operation.rb,
lib/influxdb/arel/extensions/expressions.rb,
lib/influxdb/arel/nodes/delete_statement.rb,
lib/influxdb/arel/nodes/select_statement.rb,
lib/influxdb/arel/extensions/predications.rb,
lib/influxdb/arel/visitor/where_statement.rb,
lib/influxdb/arel/visitor/delete_statement.rb,
lib/influxdb/arel/visitor/select_statement.rb,
lib/influxdb/arel/extensions/joining_merging.rb,
lib/influxdb/arel/extensions/alias_predication.rb,
lib/influxdb/arel/extensions/boolean_predications.rb

Defined Under Namespace

Modules: Clauses, Extensions, Nodes, Quoter Classes: Builder, DeleteManager, SelectManager, TreeManager, Visitor

Constant Summary collapse

STRING_OR_SYMBOL_CLASS =
[Symbol, String]
VERSION =
'0.1.0'

Instance Method Summary collapse

Instance Method Details

#arelize(expr, &block) ⇒ Object



32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/influxdb/arel.rb', line 32

def arelize(expr, &block)
  block ||= ->(e){ Arel.sql(e.to_s) }

  case expr
  when Array
    expr.map{|value| arelize(value, &block) }.compact
  when Hash
    # TODO: Needs to convert Hash into sql node
  when *STRING_OR_SYMBOL_CLASS
    block.call(expr)
  else
    expr
  end
end

#sql(raw_sql) ⇒ Object



24
25
26
# File 'lib/influxdb/arel.rb', line 24

def sql(raw_sql)
  Nodes::SqlLiteral.new(raw_sql.to_s)
end

#starObject



28
29
30
# File 'lib/influxdb/arel.rb', line 28

def star
  sql('*')
end