org.makumba.providers.query.mql
Class MqlSqlWalker
java.lang.Object
antlr.TreeParser
org.makumba.providers.query.mql.MqlSqlBaseWalker
org.makumba.providers.query.mql.MqlSqlWalker
- All Implemented Interfaces:
- HqlSqlTokenTypes
public class MqlSqlWalker
- extends MqlSqlBaseWalker
Analysis operations. This extends the class produced by mql-sql.g which is adapted from Hibernate. To simplify
porting of new versions, the class mostly redefines methods declared in mql-sql.g.
- Version:
- $Id: MqlSqlGenerator.java,v 1.1 Aug 5, 2008 5:47:16 PM cristi Exp $
- Author:
- Cristian Bogdan
| Fields inherited from class antlr.TreeParser |
_retTree, astFactory, ASTNULL, inputState, returnAST, tokenNames, traceDepth |
| Fields inherited from interface org.makumba.providers.query.mql.HqlSqlTokenTypes |
AGGREGATE, ALIAS, ALIAS_REF, ALL, AND, ANY, AS, ASCENDING, AVG, BETWEEN, BOGUS, BOTH, CASE, CASE2, CLASS, CLOSE, CLOSE_BRACKET, COLON, COMMA, CONCAT, CONSTANT, CONSTRUCTOR, COUNT, DELETE, DESCENDING, DISTINCT, DIV, DOT, ELEMENTS, ELSE, EMPTY, END, EOF, EQ, ESCAPE, ESCqs, EXISTS, EXPONENT, EXPR_LIST, FALSE, FETCH, FILTER_ENTITY, FILTERS, FLOAT_SUFFIX, FROM, FROM_FRAGMENT, FULL, GE, GROUP, GT, HAVING, HEX_DIGIT, ID_LETTER, ID_START_LETTER, IDENT, IMPLIED_FROM, IN, IN_LIST, INDEX_OP, INDICES, INNER, INSERT, INTO, IS, IS_NOT_NULL, IS_NULL, JAVA_CONSTANT, JOIN, JOIN_FRAGMENT, LE, LEADING, LEFT, LEFT_OUTER, LIKE, LITERAL_ascending, LITERAL_by, LITERAL_descending, LT, MAX, MEMBER, METHOD_CALL, METHOD_NAME, MIN, MINUS, NAMED_PARAM, NE, NEW, NOT, NOT_BETWEEN, NOT_IN, NOT_LIKE, NULL, NULL_TREE_LOOKAHEAD, NUM_DOUBLE, NUM_FLOAT, NUM_INT, NUM_LONG, OBJECT, OF, ON, OPEN, OPEN_BRACKET, OR, ORDER, ORDER_ELEMENT, OUTER, PARAM, PLUS, PROPERTIES, PROPERTY_REF, QUERY, QUOTED_STRING, RANGE, RIGHT, RIGHT_OUTER, ROW_STAR, SELECT, SELECT_CLAUSE, SELECT_COLUMNS, SELECT_EXPR, SELECT_FROM, SET, SOME, SQL_NE, SQL_TOKEN, STAR, SUM, THEN, THETA_JOINS, TRAILING, TRUE, UNARY_MINUS, UNARY_PLUS, UNION, UPDATE, VECTOR_EXPR, VERSIONED, WEIRD_IDENT, WHEN, WHERE, WITH, WS |
|
Method Summary |
protected antlr.collections.AST |
createFromElement(String path,
antlr.collections.AST alias,
antlr.collections.AST propertyFetch)
|
protected void |
createFromJoinElement(antlr.collections.AST path,
antlr.collections.AST alias,
int joinType,
antlr.collections.AST fetch,
antlr.collections.AST propertyFetch,
antlr.collections.AST with)
|
protected antlr.collections.AST |
generateNamedParameter(antlr.collections.AST delimiterNode,
antlr.collections.AST nameNode)
|
protected antlr.collections.AST |
generatePositionalParameter(antlr.collections.AST inputNode)
|
boolean |
isAnalysisQuery()
|
protected antlr.collections.AST |
lookupProperty(antlr.collections.AST dot,
boolean root,
boolean inSelect)
|
protected void |
processFunction(antlr.collections.AST functionCall,
boolean inSelect)
|
protected void |
processQuery(antlr.collections.AST select,
antlr.collections.AST query)
|
protected void |
pushFromClause(antlr.collections.AST fromClause,
antlr.collections.AST inputFromNode)
Sets the current 'FROM' context. |
void |
reportError(antlr.RecognitionException e)
|
void |
reportError(String s)
|
void |
reportWarning(String s)
|
protected void |
resolve(antlr.collections.AST node)
|
protected void |
setAlias(antlr.collections.AST selectExpr,
antlr.collections.AST ident)
|
protected void |
setFromEnded()
|
(package private) void |
setParameterType(MqlNode param,
MqlNode likewise)
|
(package private) void |
setProjectionTypes(DataDefinition proj)
|
| Methods inherited from class org.makumba.providers.query.mql.MqlSqlBaseWalker |
addrExpr, addrExprLhs, aggregateExpr, aliasedSelectExpr, aliasRef, arithmeticExpr, assignment, beforeSelectClause, caseExpr, collectionFunction, collectionFunctionOrSubselect, comparisonExpr, constant, constructor, count, createFromFilterElement, createIntoClause, deleteStatement, evaluateAssignment, expr, exprOrSubquery, fromClause, fromElement, fromElementList, functionCall, getCurrentClauseType, getCurrentStatementType, getCurrentTopLevelClauseType, getStatementType, groupClause, identifier, inRhs, insertablePropertySpec, insertStatement, intoClause, isComparativeExpressionClause, isInCase, isInFrom, isInFunctionCall, isInSelect, isNonQualifiedPropertyRef, isSelectStatement, isSubQuery, joinElement, joinType, literal, logicalExpr, lookupAlias, lookupNonQualifiedProperty, newValue, numericInteger, orderClause, orderExprs, parameter, path, pathAsIdent, postProcessDelete, postProcessInsert, postProcessUpdate, prepareArithmeticOperator, prepareFromClauseInputTree, prepareLogicOperator, prepareVersioned, processBoolean, processConstant, processConstructor, processIndex, processNumericLiteral, propertyName, propertyRef, propertyRefLhs, query, resolveSelectExpression, selectClause, selectExpr, selectExprList, selectStatement, setClause, setImpliedJoinType, statement, updateStatement, whereClause, withClause |
| Methods inherited from class antlr.TreeParser |
getAST, getASTFactory, getTokenName, getTokenNames, match, match, matchNot, panic, setASTFactory, setASTNodeClass, setASTNodeType, traceIn, traceIndent, traceOut |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
fact
antlr.ASTFactory fact
error
antlr.RecognitionException error
currentContext
QueryContext currentContext
pw
static PrintWriter pw
paramInfo
DataDefinition paramInfo
rootContext
QueryContext rootContext
hasSubqueries
boolean hasSubqueries
query
String query
optimizeJoins
boolean optimizeJoins
autoLeftJoin
boolean autoLeftJoin
MqlSqlWalker
public MqlSqlWalker(String query,
DataDefinition paramInfo,
boolean optimizeJoins,
boolean autoLeftJoin)
reportError
public void reportError(antlr.RecognitionException e)
- Overrides:
reportError in class antlr.TreeParser
reportError
public void reportError(String s)
- Overrides:
reportError in class antlr.TreeParser
processFunction
protected void processFunction(antlr.collections.AST functionCall,
boolean inSelect)
throws antlr.SemanticException
- Overrides:
processFunction in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
reportWarning
public void reportWarning(String s)
- Overrides:
reportWarning in class antlr.TreeParser
pushFromClause
protected void pushFromClause(antlr.collections.AST fromClause,
antlr.collections.AST inputFromNode)
- Description copied from class:
MqlSqlBaseWalker
- Sets the current 'FROM' context.
- Overrides:
pushFromClause in class MqlSqlBaseWalker
setFromEnded
protected void setFromEnded()
throws antlr.SemanticException
- Overrides:
setFromEnded in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
processQuery
protected void processQuery(antlr.collections.AST select,
antlr.collections.AST query)
throws antlr.SemanticException
- Overrides:
processQuery in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
createFromElement
protected antlr.collections.AST createFromElement(String path,
antlr.collections.AST alias,
antlr.collections.AST propertyFetch)
throws antlr.SemanticException
- Overrides:
createFromElement in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
createFromJoinElement
protected void createFromJoinElement(antlr.collections.AST path,
antlr.collections.AST alias,
int joinType,
antlr.collections.AST fetch,
antlr.collections.AST propertyFetch,
antlr.collections.AST with)
throws antlr.SemanticException
- Overrides:
createFromJoinElement in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
lookupProperty
protected antlr.collections.AST lookupProperty(antlr.collections.AST dot,
boolean root,
boolean inSelect)
throws antlr.SemanticException
- Overrides:
lookupProperty in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
resolve
protected void resolve(antlr.collections.AST node)
throws antlr.SemanticException
- Overrides:
resolve in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
setAlias
protected void setAlias(antlr.collections.AST selectExpr,
antlr.collections.AST ident)
- Overrides:
setAlias in class MqlSqlBaseWalker
generateNamedParameter
protected antlr.collections.AST generateNamedParameter(antlr.collections.AST delimiterNode,
antlr.collections.AST nameNode)
throws antlr.SemanticException
- Overrides:
generateNamedParameter in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
generatePositionalParameter
protected antlr.collections.AST generatePositionalParameter(antlr.collections.AST inputNode)
throws antlr.SemanticException
- Overrides:
generatePositionalParameter in class MqlSqlBaseWalker
- Throws:
antlr.SemanticException
setParameterType
void setParameterType(MqlNode param,
MqlNode likewise)
setProjectionTypes
void setProjectionTypes(DataDefinition proj)
isAnalysisQuery
public boolean isAnalysisQuery()