Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.hibernate.hql.ast
Class HqlParser

    java.lang.Object
      antlr.Parser
          antlr.LLkParser
              org.hibernate.hql.antlr.HqlBaseParser
                  org.hibernate.hql.ast.HqlParser

All Implemented Interfaces:
  HqlTokenTypes

    public final class HqlParser

extends HqlBaseParser

Implements the semantic action methods defined in the HQL base parser to keep the grammar source file a little cleaner. Extends the parser class generated by ANTLR.

Author:
  Joshua Davis (pgmjsd@sourceforge.net)

Field Summary

Fields inherited from class org.hibernate.hql.antlr.HqlBaseParser
`_tokenNames, _tokenSet_0, _tokenSet_1, _tokenSet_10, _tokenSet_11, _tokenSet_12, _tokenSet_13, _tokenSet_14, _tokenSet_15, _tokenSet_16, _tokenSet_17, _tokenSet_18, _tokenSet_19, _tokenSet_2, _tokenSet_20, _tokenSet_21, _tokenSet_22, _tokenSet_23, _tokenSet_24, _tokenSet_25, _tokenSet_26, _tokenSet_27, _tokenSet_28, _tokenSet_29, _tokenSet_3, _tokenSet_30, _tokenSet_31, _tokenSet_32, _tokenSet_33, _tokenSet_34, _tokenSet_35, _tokenSet_4, _tokenSet_5, _tokenSet_6, _tokenSet_7, _tokenSet_8, _tokenSet_9`

Fields inherited from class antlr.Parser
`astFactory, inputState, returnAST, tokenNames, tokenTypeToASTClassMap, traceDepth`

Fields inherited from interface org.hibernate.hql.antlr.HqlTokenTypes
`AGGREGATE, ALIAS, ALL, AND, ANY, AS, ASCENDING, AVG, BETWEEN, 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, FLOAT_SUFFIX, FROM, FULL, GE, GROUP, GT, HAVING, HEX_DIGIT, ID_LETTER, ID_START_LETTER, IDENT, IN, IN_LIST, INDEX_OP, INDICES, INNER, INSERT, INTO, IS, IS_NOT_NULL, IS_NULL, JAVA_CONSTANT, JOIN, LE, LEADING, LEFT, LIKE, LITERAL_ascending, LITERAL_by, LITERAL_descending, LT, MAX, MEMBER, METHOD_CALL, MIN, MINUS, 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, QUERY, QUOTED_STRING, RANGE, RIGHT, ROW_STAR, SELECT, SELECT_FROM, SET, SOME, SQL_NE, STAR, SUM, THEN, TRAILING, TRUE, UNARY_MINUS, UNARY_PLUS, UNION, UPDATE, VECTOR_EXPR, VERSIONED, WEIRD_IDENT, WHEN, WHERE, WITH, WS`

Method Summary
`static HqlParser` | `getInstance(String hql)`
`ParseErrorHandler` | `getParseErrorHandler()`
`void` | `handleDotIdent()` This method looks ahead and converts .
`antlr.collections.AST` | `handleIdentifierError(antlr.Token token, antlr.RecognitionException ex)` Overrides the base behavior to retry keywords as identifiers.
`antlr.collections.AST` | `negateNode(antlr.collections.AST x)` Returns an equivalent tree for (NOT (a relop b) ), for example:
`static void` | `panic()`
`antlr.collections.AST` | `processEqualityExpression(antlr.collections.AST x)` Post process equality expressions, clean up the subtree.
`void` | `processMemberOf(antlr.Token n, antlr.collections.AST p, antlr.ASTPair currentAST)`
`void` | `reportError(antlr.RecognitionException e)`
`void` | `reportError(String s)`
`void` | `reportWarning(String s)`
`void` | `showAst(antlr.collections.AST ast, PrintStream out)`
`void` | `weakKeywords()`

Methods inherited from class org.hibernate.hql.antlr.HqlBaseParser
`additiveExpression, aggregate, alias, aliasedExpression, altWhenClause, asAlias, ascendingOrDescending, assignment, atom, betweenList, buildTokenTypeASTClassMap, caseExpression, collectionExpr, compoundExpr, concatenation, constant, deleteStatement, elseClause, equalityExpression, expression, expressionOrVector, exprList, fromClassOrOuterQueryPath, fromClause, fromJoin, fromRange, groupByClause, havingClause, identifier, identPrimary, inClassDeclaration, inCollectionDeclaration, inCollectionElementsDeclaration, inList, insertablePropertySpec, insertStatement, intoClause, isFilter, likeEscape, logicalAndExpression, logicalExpression, logicalOrExpression, multiplyExpression, negatedExpression, newExpression, newValue, optionalFromTokenFromClause, orderByClause, orderElement, path, primaryExpression, propertyFetch, quantifiedExpression, queryRule, relationalExpression, selectClause, selectedPropertiesList, selectFrom, selectObject, selectStatement, setClause, setFilter, stateField, statement, subQuery, unaryExpression, union, updateStatement, vectorExpr, whenClause, whereClause, withClause`

Methods inherited from class antlr.LLkParser
`consume, LA, LT, traceIn, traceOut`

Methods inherited from class antlr.Parser
`addMessageListener, addParserListener, addParserMatchListener, addParserTokenListener, addSemanticPredicateListener, addSyntacticPredicateListener, addTraceListener, consumeUntil, consumeUntil, defaultDebuggingSetup, getAST, getASTFactory, getFilename, getInputState, getTokenName, getTokenNames, getTokenTypeToASTClassMap, isDebugMode, mark, match, match, matchNot, recover, removeMessageListener, removeParserListener, removeParserMatchListener, removeParserTokenListener, removeSemanticPredicateListener, removeSyntacticPredicateListener, removeTraceListener, rewind, setASTFactory, setASTNodeClass, setASTNodeType, setDebugMode, setFilename, setIgnoreInvalidDebugCalls, setInputState, setTokenBuffer, traceIndent`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### getInstance

    public static HqlParser getInstance(String hql)

### reportError

    public void reportError(antlr.RecognitionException e)

  Overrides:
    `reportError` in class `antlr.Parser`

### reportError

    public void reportError(String s)

  Overrides:
    `reportError` in class `antlr.Parser`

### reportWarning

    public void reportWarning(String s)

  Overrides:
    `reportWarning` in class `antlr.Parser`

### getParseErrorHandler

    public ParseErrorHandler getParseErrorHandler()

### handleIdentifierError

    public antlr.collections.AST handleIdentifierError(antlr.Token token,
                                                       antlr.RecognitionException ex)
                                                throws antlr.RecognitionException,
                                                       antlr.TokenStreamException

  Overrides the base behavior to retry keywords as identifiers.

  Overrides:
    `handleIdentifierError` in class `HqlBaseParser`
  Parameters:
    `token` - The token.
    `ex` - The recognition exception.
  Returns:
    AST - The new AST.
  Throws:
    `antlr.RecognitionException` - if the substitution was not possible.
    `antlr.TokenStreamException` - if the substitution was not possible.

### negateNode

    public antlr.collections.AST negateNode(antlr.collections.AST x)

  Returns an equivalent tree for (NOT (a relop b) ), for example:

       (NOT (GT a b) ) => (LE a b)

  Overrides:
    `negateNode` in class `HqlBaseParser`
  Parameters:
    `x` - The sub tree to transform, the parent is assumed to be NOT.
  Returns:
    AST - The equivalent sub-tree.

### processEqualityExpression

    public antlr.collections.AST processEqualityExpression(antlr.collections.AST x)

  Post process equality expressions, clean up the subtree.

  Overrides:
    `processEqualityExpression` in class `HqlBaseParser`
  Parameters:
    `x` - The equality expression.
  Returns:
    AST - The clean sub-tree.

### showAst

    public void showAst(antlr.collections.AST ast,
                        PrintStream out)

### weakKeywords

    public void weakKeywords()
                      throws antlr.TokenStreamException

  Overrides:
    `weakKeywords` in class `HqlBaseParser`
  Throws:
    `antlr.TokenStreamException`

### handleDotIdent

    public void handleDotIdent()
                        throws antlr.TokenStreamException

  Description copied from class: `HqlBaseParser`
  This method looks ahead and converts . into . IDENT when appropriate.

  Overrides:
    `handleDotIdent` in class `HqlBaseParser`
  Throws:
    `antlr.TokenStreamException`

### processMemberOf

    public void processMemberOf(antlr.Token n,
                                antlr.collections.AST p,
                                antlr.ASTPair currentAST)

  Overrides:
    `processMemberOf` in class `HqlBaseParser`

### panic

    public static void panic()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD