class MultiTenant::ArelVisitorsDepthFirst
Constants
- DISPATCH
Public Class Methods
new(block = nil)
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 3 def initialize(block = nil) @block = block || Proc.new super() end
Private Instance Methods
binary(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 73 def binary(o) visit o.left visit o.right end
Also aliased as: visit_Arel_Nodes_As, visit_Arel_Nodes_Assignment, visit_Arel_Nodes_Between, visit_Arel_Nodes_Concat, visit_Arel_Nodes_DeleteStatement, visit_Arel_Nodes_DoesNotMatch, visit_Arel_Nodes_Equality, visit_Arel_Nodes_FullOuterJoin, visit_Arel_Nodes_GreaterThan, visit_Arel_Nodes_GreaterThanOrEqual, visit_Arel_Nodes_In, visit_Arel_Nodes_InfixOperation, visit_Arel_Nodes_JoinSource, visit_Arel_Nodes_InnerJoin, visit_Arel_Nodes_LessThan, visit_Arel_Nodes_LessThanOrEqual, visit_Arel_Nodes_Matches, visit_Arel_Nodes_NotEqual, visit_Arel_Nodes_NotIn, visit_Arel_Nodes_NotRegexp, visit_Arel_Nodes_IsNotDistinctFrom, visit_Arel_Nodes_IsDistinctFrom, visit_Arel_Nodes_Or, visit_Arel_Nodes_OuterJoin, visit_Arel_Nodes_Regexp, visit_Arel_Nodes_RightOuterJoin, visit_Arel_Nodes_TableAlias, visit_Arel_Nodes_When
function(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 38 def function(o) visit o.expressions visit o.alias visit o.distinct end
get_dispatch_cache()
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 196 def get_dispatch_cache DISPATCH end
nary(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 68 def nary(o) o.children.each { |child| visit child } end
Also aliased as: visit_Arel_Nodes_And
terminal(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 126 def terminal(o) end
Also aliased as: visit_ActiveSupport_Multibyte_Chars, visit_ActiveSupport_StringInquirer, visit_Arel_Nodes_Lock, visit_Arel_Nodes_Node, visit_Arel_Nodes_SqlLiteral, visit_Arel_Nodes_BindParam, visit_Arel_Nodes_Window, visit_Arel_Nodes_True, visit_Arel_Nodes_False, visit_BigDecimal, visit_Class, visit_Date, visit_DateTime, visit_FalseClass, visit_Float, visit_Integer, visit_NilClass, visit_String, visit_Symbol, visit_Time, visit_TrueClass
unary(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 15 def unary(o) visit o.expr end
Also aliased as: visit_Arel_Nodes_Else, visit_Arel_Nodes_Group, visit_Arel_Nodes_Cube, visit_Arel_Nodes_RollUp, visit_Arel_Nodes_GroupingSet, visit_Arel_Nodes_GroupingElement, visit_Arel_Nodes_Grouping, visit_Arel_Nodes_Having, visit_Arel_Nodes_Lateral, visit_Arel_Nodes_Limit, visit_Arel_Nodes_Not, visit_Arel_Nodes_Offset, visit_Arel_Nodes_On, visit_Arel_Nodes_Ordering, visit_Arel_Nodes_Ascending, visit_Arel_Nodes_Descending, visit_Arel_Nodes_UnqualifiedColumn, visit_Arel_Nodes_OptimizerHints, visit_Arel_Nodes_ValuesList
visit(o, _ = nil)
click to toggle source
Calls superclass method
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 10 def visit(o, _ = nil) super @block.call o end
visit_Arel_Attribute(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 110 def visit_Arel_Attribute(o) visit o.relation visit o.name end
visit_Arel_Nodes_Case(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 62 def visit_Arel_Nodes_Case(o) visit o.case visit o.conditions visit o.default end
visit_Arel_Nodes_Comment(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 181 def visit_Arel_Nodes_Comment(o) visit o.values end
visit_Arel_Nodes_Count(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 56 def visit_Arel_Nodes_Count(o) visit o.expressions visit o.alias visit o.distinct end
visit_Arel_Nodes_InsertStatement(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 150 def visit_Arel_Nodes_InsertStatement(o) visit o.relation visit o.columns visit o.values end
visit_Arel_Nodes_NamedFunction(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 49 def visit_Arel_Nodes_NamedFunction(o) visit o.name visit o.expressions visit o.distinct visit o.alias end
visit_Arel_Nodes_SelectCore(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 156 def visit_Arel_Nodes_SelectCore(o) visit o.projections visit o.source visit o.wheres visit o.groups visit o.windows visit o.havings end
visit_Arel_Nodes_SelectStatement(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 165 def visit_Arel_Nodes_SelectStatement(o) visit o.cores visit o.orders visit o.limit visit o.lock visit o.offset end
visit_Arel_Nodes_StringJoin(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 106 def visit_Arel_Nodes_StringJoin(o) visit o.left end
visit_Arel_Nodes_UpdateStatement(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 173 def visit_Arel_Nodes_UpdateStatement(o) visit o.relation visit o.values visit o.wheres visit o.orders visit o.limit end
visit_Arel_Table(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 122 def visit_Arel_Table(o) visit o.name end
visit_Array(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 185 def visit_Array(o) o.each { |i| visit i } end
Also aliased as: visit_Set
visit_Hash(o)
click to toggle source
# File lib/activerecord-multi-tenant/arel_visitors_depth_first.rb, line 190 def visit_Hash(o) o.each { |k, v| visit(k); visit(v) } end