OmniSciDB  4201147b46
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker Class Reference
+ Inheritance diagram for com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker:
+ Collaboration diagram for com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker:

Public Member Functions

boolean isEqualityJoinOperator (SqlBasicCall basicCall)
 
Void visit (SqlCall call)
 

Package Functions

boolean containsExpression (SqlNode node)
 

Package Attributes

Set< SqlBasicCall > targetCalls = new HashSet<>()
 

Detailed Description

Definition at line 1523 of file HeavyDBParser.java.

Member Function Documentation

boolean com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker.containsExpression ( SqlNode  node)
inlinepackage

Definition at line 1550 of file HeavyDBParser.java.

Referenced by com.mapd.calcite.parser.HeavyDBParser.getPlanner().

1550  {
1551  try {
1552  if (null != node) {
1553  node.accept(this);
1554  for (SqlBasicCall basicCall : targetCalls) {
1555  if (isEqualityJoinOperator(basicCall)) {
1556  throw Util.FoundOne.NULL;
1557  }
1558  }
1559  }
1560  return false;
1561  } catch (Util.FoundOne e) {
1562  return true;
1563  }
1564  }

+ Here is the caller graph for this function:

boolean com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker.isEqualityJoinOperator ( SqlBasicCall  basicCall)
inline

Definition at line 1526 of file HeavyDBParser.java.

1526  {
1527  if (null != basicCall) {
1528  if (basicCall.operands.length == 2 && basicCall.getKind() == SqlKind.EQUALS
1529  && basicCall.operand(0) instanceof SqlIdentifier
1530  && basicCall.operand(1) instanceof SqlIdentifier) {
1531  return true;
1532  }
1533  }
1534  return false;
1535  }
Void com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker.visit ( SqlCall  call)
inline

Definition at line 1538 of file HeavyDBParser.java.

1538  {
1539  if (call instanceof SqlBasicCall) {
1540  targetCalls.add((SqlBasicCall) call);
1541  }
1542  for (SqlNode node : call.getOperandList()) {
1543  if (null != node && !targetCalls.contains(node)) {
1544  node.accept(this);
1545  }
1546  }
1547  return super.visit(call);
1548  }

Member Data Documentation

Set<SqlBasicCall> com.mapd.calcite.parser.HeavyDBParser.JoinOperatorChecker.targetCalls = new HashSet<>()
package

Definition at line 1524 of file HeavyDBParser.java.


The documentation for this class was generated from the following file: