## org.hibernate.hql.internal.ast
Class SqlASTFactory

    java.lang.Object
      antlr.ASTFactory
          org.hibernate.hql.internal.ast.SqlASTFactory

All Implemented Interfaces:
  HqlSqlTokenTypes

    public class SqlASTFactory

extends antlr.ASTFactory
implements HqlSqlTokenTypes

Custom AST factory the intermediate tree that causes ANTLR to create specialized AST nodes, given the AST node type (from HqlSqlTokenTypes). HqlSqlWalker registers this factory with itself when it is initialized.

Field Summary

Fields inherited from class antlr.ASTFactory
`theASTNodeType, theASTNodeTypeClass, tokenTypeToASTClassMap`

Fields inherited from interface org.hibernate.hql.internal.antlr.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, ENTRY, 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, KEY, LE, LEADING, LEFT, LEFT_OUTER, LIKE, LITERAL_ascending, LITERAL_by, LITERAL_descending, LT, MAX, MEMBER, METHOD_CALL, METHOD_NAME, MIN, MINUS, MOD, NAMED_PARAM, NE, NEW, NOT, NOT_BETWEEN, NOT_IN, NOT_LIKE, NULL, NULL_TREE_LOOKAHEAD, NUM_BIG_DECIMAL, NUM_BIG_INTEGER, 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, RESULT_VARIABLE_REF, 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, VALUE, VECTOR_EXPR, VERSIONED, WEIRD_IDENT, WHEN, WHERE, WITH, WS`

Constructor Summary
`SqlASTFactory(HqlSqlWalker walker)` Create factory with a specific mapping from token type to Java AST node type.

Method Summary
`protected antlr.collections.AST` `create(Class c)` Actually instantiate the AST node.
`protected antlr.collections.AST` `createUsingCtor(antlr.Token token, String className)`
`Class` `getASTNodeType(int tokenType)` Returns the class for a given token type (a.k.a.

Methods inherited from class antlr.ASTFactory
`addASTChild, create, create, create, create, create, create, create, create, dup, dupList, dupTree, error, getTokenTypeToASTClassMap, make, make, makeASTRoot, setASTNodeClass, setASTNodeClass, setASTNodeType, setTokenTypeASTNodeType, setTokenTypeToASTClassMap`

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

Constructor Detail

### SqlASTFactory

    public SqlASTFactory(HqlSqlWalker walker)

  Create factory with a specific mapping from token type to Java AST node type. Your subclasses of ASTFactory can override and reuse the map stuff.

Method Detail

### getASTNodeType

    public Class getASTNodeType(int tokenType)

  Returns the class for a given token type (a.k.a. AST node type).

  Overrides:
    `getASTNodeType` in class `antlr.ASTFactory`
  Parameters:
    `tokenType` - The token type.
  Returns:
    Class - The AST node class to instantiate.

### createUsingCtor

    protected antlr.collections.AST createUsingCtor(antlr.Token token,
                                                    String className)

  Overrides:
    `createUsingCtor` in class `antlr.ASTFactory`

### create

    protected antlr.collections.AST create(Class c)

  Actually instantiate the AST node.

  Overrides:
    `create` in class `antlr.ASTFactory`
  Parameters:
    `c` - The class to instantiate.
  Returns:
    The instantiated and initialized node.

Copyright © 2001-2012 Red Hat, Inc. All Rights Reserved.