com.akiban.sql.parser
Class IndexColumnList

java.lang.Object
  extended by com.akiban.sql.parser.QueryTreeNode
      extended by com.akiban.sql.parser.QueryTreeNodeList<IndexColumn>
          extended by com.akiban.sql.parser.IndexColumnList
All Implemented Interfaces:
Visitable, Iterable<IndexColumn>

public class IndexColumnList
extends QueryTreeNodeList<IndexColumn>

List of IndexColumns. Also notes application of up to one function to a consecutive list of IndexColumns.


Nested Class Summary
static class IndexColumnList.FunctionType
           
 
Field Summary
 
Fields inherited from class com.akiban.sql.parser.QueryTreeNode
AUTOINCREMENT_CREATE_MODIFY, AUTOINCREMENT_INC_INDEX, AUTOINCREMENT_IS_AUTOINCREMENT_INDEX, AUTOINCREMENT_START_INDEX
 
Constructor Summary
IndexColumnList()
           
 
Method Summary
 void applyFunction(Object functionType, int firstArgumentPosition, int nArguments)
           
 void copyFrom(QueryTreeNode node)
          Fill this node with a deep copy of the given node.
 int firstFunctionArg()
           
 IndexColumnList.FunctionType functionType()
           
 int lastFunctionArg()
           
 String toString()
          Format this node as a string Each sub-class of QueryTreeNode should implement its own toString() method.
 
Methods inherited from class com.akiban.sql.parser.QueryTreeNodeList
add, add, addAll, clear, destructiveAddAll, get, getList, indexOf, isEmpty, iterator, printSubNodes, remove, remove, set, size
 
Methods inherited from class com.akiban.sql.parser.QueryTreeNode
accept, convertDefaultNode, debugFlush, debugPrint, formatNodeString, getBeginOffset, getDebugOutput, getEndOffset, getNodeFactory, getNodeType, getNullNode, getParserContext, getStatementType, getUserData, init, init, init, init, init, init, init, init, init, init, init, init, init, init, isInstanceOf, makeTableName, makeTableName, nodeHeader, printLabel, setBeginOffset, setDebugOutput, setEndOffset, setNodeType, setParserContext, setUserData, stackPrint, treePrint, treePrint, treePrint
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

IndexColumnList

public IndexColumnList()
Method Detail

applyFunction

public void applyFunction(Object functionType,
                          int firstArgumentPosition,
                          int nArguments)
                   throws StandardException
Throws:
StandardException

firstFunctionArg

public int firstFunctionArg()

lastFunctionArg

public int lastFunctionArg()

functionType

public IndexColumnList.FunctionType functionType()

copyFrom

public void copyFrom(QueryTreeNode node)
              throws StandardException
Description copied from class: QueryTreeNodeList
Fill this node with a deep copy of the given node.

Overrides:
copyFrom in class QueryTreeNodeList<IndexColumn>
Throws:
StandardException

toString

public String toString()
Description copied from class: QueryTreeNode
Format this node as a string Each sub-class of QueryTreeNode should implement its own toString() method. In each case, toString() should format the class members that are not sub-types of QueryTreeNode (printSubNodes() takes care of following the references to sub-nodes, and toString() takes care of all members that are not sub-nodes). Newlines should be used liberally - one good way to do this is to have a newline at the end of each formatted member. It's also a good idea to put the name of each member in front of the formatted value. For example, the code might look like: "memberName: " + memberName + "\n" + ... List members containing subclasses of QueryTreeNode should subclass QueryTreeNodeList. Such subclasses form a special case: These classes should not implement printSubNodes, since there is generic handling in QueryTreeNodeList. They should only implement toString if they contain additional members.

Overrides:
toString in class QueryTreeNode
Returns:
This node formatted as a String


Copyright © 2013 Akiban Technologies, Inc. All rights reserved.