# Hierarchy For All Packages

Package Hierarchies:

- adql.db,
- adql.db.exception,
- adql.parser,
- adql.query,
- adql.query.constraint,
- adql.query.from,
- adql.query.operand,
- adql.query.operand.function,
- adql.query.operand.function.geometry,
- adql.search,
- adql.translator,
- cds.utils

## Class Hierarchy

- java.lang.Object
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractList<E> (implements java.util.List<E>)
      - java.util.ArrayList<E> (implements java.lang.Cloneable, java.util.List<E>, java.util.RandomAccess, java.io.Serializable)
        - cds.utils.TextualSearchList<E>
          - adql.db.SearchColumnList
          - adql.db.SearchTableList (implements adql.db.SearchTableApi)
  - adql.query.operand.ADQLColumn (implements adql.query.operand.ADQLOperand, adql.query.operand.UnknownType)
  - adql.query.operand.function.ADQLFunction (implements adql.query.operand.ADQLOperand)
    - adql.query.operand.function.geometry.GeometryFunction
      - adql.query.operand.function.geometry.AreaFunction
      - adql.query.operand.function.geometry.BoxFunction
      - adql.query.operand.function.geometry.CentroidFunction
      - adql.query.operand.function.geometry.CircleFunction
      - adql.query.operand.function.geometry.ContainsFunction
      - adql.query.operand.function.geometry.DistanceFunction
      - adql.query.operand.function.geometry.ExtractCoord
      - adql.query.operand.function.geometry.ExtractCoordSys
      - adql.query.operand.function.geometry.IntersectsFunction
      - adql.query.operand.function.geometry.PointFunction
      - adql.query.operand.function.geometry.PolygonFunction
      - adql.query.operand.function.geometry.RegionFunction
    - adql.query.operand.function.MathFunction
    - adql.query.operand.function.SQLFunction
    - adql.query.operand.function.UserDefinedFunction (implements adql.query.operand.UnknownType)
      - adql.query.operand.function.DefaultUDF
  - adql.query.operand.function.ADQLFunction.ParameterIterator (implements java.util.Iterator<E>)
  - adql.query.from.ADQLJoin (implements adql.query.ADQLObject, adql.query.from.FromContent)
    - adql.query.from.CrossJoin
    - adql.query.from.InnerJoin
      - adql.query.from.SQLServer_InnerJoin
    - adql.query.from.OuterJoin
      - adql.query.from.SQLServer_OuterJoin
  - adql.query.ADQLList<T> (implements adql.query.ADQLObject, java.lang.Iterable<T>)
    - adql.query.ClauseADQL<T>
      - adql.query.ClauseConstraints
        - adql.query.constraint.ConstraintsGroup (implements adql.query.constraint.ADQLConstraint)
      - adql.query.ClauseSelect
    - adql.query.operand.Concatenation (implements adql.query.operand.ADQLOperand)
  - adql.query.ADQLList.ADQLListIterator (implements adql.query.ADQLIterator)
  - adql.parser.ADQLParser (implements adql.parser.ADQLParserConstants)
  - adql.parser.ADQLParserTokenManager (implements adql.parser.ADQLParserConstants)
  - adql.query.ADQLQuery (implements adql.query.ADQLObject)
  - adql.parser.ADQLQueryFactory
    - adql.parser.SQLServer_ADQLQueryFactory
  - adql.query.from.ADQLTable (implements adql.query.ADQLObject, adql.query.from.FromContent)
  - adql.query.constraint.Between (implements adql.query.constraint.ADQLConstraint)
  - adql.query.ColumnReference (implements adql.query.ADQLObject)
    - adql.query.ADQLOrder
  - adql.query.constraint.Comparison (implements adql.query.constraint.ADQLConstraint)
  - adql.db.DBChecker (implements adql.parser.QueryChecker)
  - adql.db.DBChecker.BinarySearch<T,​S>
  - adql.db.DBCommonColumn (implements adql.db.DBColumn)
  - adql.db.DBType
  - adql.db.DefaultDBColumn (implements adql.db.DBColumn)
  - adql.db.DefaultDBTable (implements adql.db.DBTable)
    - adql.db.DBTableAlias
  - adql.query.constraint.Exists (implements adql.query.constraint.ADQLConstraint)
  - adql.db.FunctionDef (implements java.lang.Comparable<T>)
  - adql.db.FunctionDef.FunctionParam
  - adql.query.operand.function.geometry.GeometryFunction.GeometryValue<F> (implements adql.query.operand.ADQLOperand)
  - adql.parser.IdentifierItems
  - adql.parser.IdentifierItems.IdentifierItem
  - adql.query.constraint.In (implements adql.query.constraint.ADQLConstraint)
  - adql.query.constraint.IsNull (implements adql.query.constraint.ADQLConstraint)
  - adql.translator.JDBCTranslator (implements adql.translator.ADQLTranslator)
    - adql.translator.MySQLTranslator
    - adql.translator.PostgreSQLTranslator
      - adql.translator.PgSphereTranslator
    - adql.translator.SQLServerTranslator
  - adql.query.operand.NegativeOperand (implements adql.query.operand.ADQLOperand)
  - adql.query.constraint.NotConstraint (implements adql.query.constraint.ADQLConstraint)
  - adql.query.NullADQLIterator (implements adql.query.ADQLIterator)
  - adql.query.operand.NumericConstant (implements adql.query.operand.ADQLOperand)
  - adql.query.operand.Operation (implements adql.query.operand.ADQLOperand)
  - adql.translator.PgSphereTranslator.PgSphereGeometryParser
  - adql.query.SelectItem (implements adql.query.ADQLObject)
    - adql.query.SelectAllColumns
  - adql.parser.SimpleCharStream
  - adql.search.SimpleSearchHandler (implements adql.search.ISearchHandler)
    - adql.search.SearchColumnHandler
    - adql.search.SimpleReplaceHandler (implements adql.search.IReplaceHandler)
      - adql.search.RemoveHandler
  - adql.db.STCS
  - adql.db.STCS.CoordSys
  - adql.db.STCS.Region
  - adql.query.operand.StringConstant (implements adql.query.operand.ADQLOperand)
  - adql.query.TextPosition
  - cds.utils.TextualSearchList.DefaultKeyExtractor<E> (implements cds.utils.TextualSearchList.KeyExtractor<E>)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Error
      - adql.parser.TokenMgrError
    - java.lang.Exception
      - adql.parser.ParseException
        - adql.db.exception.UnresolvedColumnException
        - adql.db.exception.UnresolvedFunctionException
        - adql.db.exception.UnresolvedIdentifiersException (implements java.lang.Iterable<T>)
        - adql.db.exception.UnresolvedJoinException
        - adql.db.exception.UnresolvedTableException
      - adql.translator.TranslationException
  - adql.parser.Token (implements java.io.Serializable)
  - adql.query.operand.WrappedOperand (implements adql.query.operand.ADQLOperand)

## Interface Hierarchy

- adql.query.ADQLObject
  - adql.query.constraint.ADQLConstraint
  - adql.query.operand.ADQLOperand
    - adql.query.operand.UnknownType
  - adql.query.from.FromContent
- adql.parser.ADQLParserConstants
- adql.translator.ADQLTranslator
- adql.db.DBColumn
- java.lang.Iterable<T>
  - adql.db.DBTable
  - adql.search.ISearchHandler
    - adql.search.IReplaceHandler
- java.util.Iterator<E>
  - adql.query.ADQLIterator
- adql.parser.QueryChecker
- adql.db.SearchTableApi
- cds.utils.TextualSearchList.KeyExtractor<E>

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - adql.parser.ADQLQueryFactory.JoinType
    - adql.query.constraint.ComparisonOperator
    - adql.db.DBType.DBDatatype
    - adql.query.IdentifierField
    - adql.query.operand.function.MathFunctionType
    - adql.query.operand.OperationType
    - adql.query.from.OuterJoin.OuterType
    - adql.query.operand.function.SQLFunctionType
    - adql.db.STCS.Flavor
    - adql.db.STCS.Frame
    - adql.db.STCS.RefPos
    - adql.db.STCS.RegionType