Package org.rumbledb.types
Class ArrayItemType
java.lang.Object
org.rumbledb.types.ArrayItemType
- All Implemented Interfaces:
com.esotericsoftware.kryo.KryoSerializable
,Serializable
,ItemType
public class ArrayItemType
extends Object
implements ItemType, com.esotericsoftware.kryo.KryoSerializable
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionstatic ItemType
void
boolean
Tests for itemType equality.getName()
Returns the SparkSQL type of the item type for use in a query.int
boolean
hasName()
Tests for QName.boolean
boolean
isCompatibleWithDataFrames
(RumbleRuntimeConfiguration configuration) Checks compatibility with DataFrames.boolean
boolean
boolean
void
void
read
(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) void
resolve
(DynamicContext context, ExceptionMetadata metadata) void
resolve
(StaticContext context, ExceptionMetadata metadata) toString()
void
write
(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.rumbledb.types.ItemType
canBePromotedTo, findLeastCommonSuperTypeWith, getClosedFacet, getConstraintsFacet, getExplicitTimezoneFacet, getFractionDigitsFacet, getLengthFacet, getMaxExclusiveFacet, getMaxInclusiveFacet, getMinExclusiveFacet, getMinInclusiveFacet, getObjectContentFacet, getSignature, getTotalDigitsFacet, getUnionContentFacet, isAtomicItemType, isEqualTo, isFunctionItemType, isJsonItemType, isNumeric, isObjectItemType, isStaticallyCastableAs, isSubtypeOf, isTopmostItemType, isUnionType
-
Method Details
-
arrayOf
-
equals
Description copied from interface:ItemType
Tests for itemType equality. -
isArrayItemType
public boolean isArrayItemType()- Specified by:
isArrayItemType
in interfaceItemType
- Returns:
- true it [this] is an array item type.
-
hasName
public boolean hasName()Description copied from interface:ItemType
Tests for QName. -
getName
-
getTypeTreeDepth
public int getTypeTreeDepth()- Specified by:
getTypeTreeDepth
in interfaceItemType
- Returns:
- an int representing the depth of the item type in the type tree ('item' is the root with depth 0)
-
isUserDefined
public boolean isUserDefined()- Specified by:
isUserDefined
in interfaceItemType
- Returns:
- [true] if it is a user-defined type, false otherwise
-
isPrimitive
public boolean isPrimitive()- Specified by:
isPrimitive
in interfaceItemType
- Returns:
- [true] if it is a primitive type
-
getPrimitiveType
- Specified by:
getPrimitiveType
in interfaceItemType
- Returns:
- the primitive type for a derived type, throw an error for primitive types
-
getBaseType
- Specified by:
getBaseType
in interfaceItemType
- Returns:
- the base type for a type, return null for the topmost item type
-
getAllowedFacets
- Specified by:
getAllowedFacets
in interfaceItemType
- Returns:
- a set containing the allowed facets for restricting the type
-
getEnumerationFacet
- Specified by:
getEnumerationFacet
in interfaceItemType
- Returns:
- the list of possible values for [this] item type or null if the enumeration facet is not set
-
getMinLengthFacet
- Specified by:
getMinLengthFacet
in interfaceItemType
- Returns:
- the minimum length facet value for [this] item type or null if the restriction is not set
-
getMaxLengthFacet
- Specified by:
getMaxLengthFacet
in interfaceItemType
- Returns:
- the maximum length facet value for [this] item type or null if the restriction is not set
-
getArrayContentFacet
- Specified by:
getArrayContentFacet
in interfaceItemType
- Returns:
- content facet value for array item types
-
getIdentifierString
- Specified by:
getIdentifierString
in interfaceItemType
- Returns:
- a String that uniquely identify an item type
-
toString
-
processBaseType
public void processBaseType() -
resolve
-
resolve
-
isResolved
public boolean isResolved()- Specified by:
isResolved
in interfaceItemType
-
checkSubtypeConsistency
public void checkSubtypeConsistency() -
isCompatibleWithDataFrames
Description copied from interface:ItemType
Checks compatibility with DataFrames.- Specified by:
isCompatibleWithDataFrames
in interfaceItemType
- Returns:
- true if compatible with DataFrames and false otherwise.
-
getSparkSQLType
Description copied from interface:ItemType
Returns the SparkSQL type of the item type for use in a query.- Specified by:
getSparkSQLType
in interfaceItemType
- Returns:
- String representing the SparkSQL type of the item type.
-
write
public void write(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Output output) - Specified by:
write
in interfacecom.esotericsoftware.kryo.KryoSerializable
-
read
public void read(com.esotericsoftware.kryo.Kryo kryo, com.esotericsoftware.kryo.io.Input input) - Specified by:
read
in interfacecom.esotericsoftware.kryo.KryoSerializable
-