@PublicEvolving public enum LogicalTypeRoot extends Enum<LogicalTypeRoot>
A root is an essential description of a LogicalType
without additional parameters. For
example, a parameterized logical type DECIMAL(12,3)
possesses all characteristics of its
root DECIMAL
. Additionally, a logical type root enables efficient comparison during the
evaluation of types.
The enumeration is very close to the SQL standard in terms of naming and completeness.
However, it reflects just a subset of the evolving standard and contains some extensions (such as
NULL
, SYMBOL
, or RAW
).
See the type-implementing classes for a more detailed description of each type.
Note to implementers: Whenever we perform a match against a type root (e.g. using a switch/case statement), it is recommended to:
DISTINCT_TYPE
: return myMethod(((DistinctType) type).getSourceType)
Enum Constant and Description |
---|
ARRAY |
BIGINT |
BINARY |
BOOLEAN |
CHAR |
DATE |
DECIMAL |
DISTINCT_TYPE |
DOUBLE |
FLOAT |
INTEGER |
INTERVAL_DAY_TIME |
INTERVAL_YEAR_MONTH |
MAP |
MULTISET |
NULL |
RAW |
ROW |
SMALLINT |
STRUCTURED_TYPE |
SYMBOL |
TIME_WITHOUT_TIME_ZONE |
TIMESTAMP_WITH_LOCAL_TIME_ZONE |
TIMESTAMP_WITH_TIME_ZONE |
TIMESTAMP_WITHOUT_TIME_ZONE |
TINYINT |
UNRESOLVED |
VARBINARY |
VARCHAR |
Modifier and Type | Method and Description |
---|---|
Set<LogicalTypeFamily> |
getFamilies() |
static LogicalTypeRoot |
valueOf(String name)
Returns the enum constant of this type with the specified name.
|
static LogicalTypeRoot[] |
values()
Returns an array containing the constants of this enum type, in
the order they are declared.
|
public static final LogicalTypeRoot CHAR
public static final LogicalTypeRoot VARCHAR
public static final LogicalTypeRoot BOOLEAN
public static final LogicalTypeRoot BINARY
public static final LogicalTypeRoot VARBINARY
public static final LogicalTypeRoot DECIMAL
public static final LogicalTypeRoot TINYINT
public static final LogicalTypeRoot SMALLINT
public static final LogicalTypeRoot INTEGER
public static final LogicalTypeRoot BIGINT
public static final LogicalTypeRoot FLOAT
public static final LogicalTypeRoot DOUBLE
public static final LogicalTypeRoot DATE
public static final LogicalTypeRoot TIME_WITHOUT_TIME_ZONE
public static final LogicalTypeRoot TIMESTAMP_WITHOUT_TIME_ZONE
public static final LogicalTypeRoot TIMESTAMP_WITH_TIME_ZONE
public static final LogicalTypeRoot TIMESTAMP_WITH_LOCAL_TIME_ZONE
public static final LogicalTypeRoot INTERVAL_YEAR_MONTH
public static final LogicalTypeRoot INTERVAL_DAY_TIME
public static final LogicalTypeRoot ARRAY
public static final LogicalTypeRoot MULTISET
public static final LogicalTypeRoot MAP
public static final LogicalTypeRoot ROW
public static final LogicalTypeRoot DISTINCT_TYPE
public static final LogicalTypeRoot STRUCTURED_TYPE
public static final LogicalTypeRoot NULL
public static final LogicalTypeRoot RAW
public static final LogicalTypeRoot SYMBOL
public static final LogicalTypeRoot UNRESOLVED
public static LogicalTypeRoot[] values()
for (LogicalTypeRoot c : LogicalTypeRoot.values()) System.out.println(c);
public static LogicalTypeRoot valueOf(String name)
name
- the name of the enum constant to be returned.IllegalArgumentException
- if this enum type has no constant with the specified nameNullPointerException
- if the argument is nullpublic Set<LogicalTypeFamily> getFamilies()
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.