Autonomy Software C++ 24.5.1
Welcome to the Autonomy Software repository of the Mars Rover Design Team (MRDT) at Missouri University of Science and Technology (Missouri S&T)! API reference contains the source code and other resources for the development of the autonomy software for our Mars rover. The Autonomy Software project aims to compete in the University Rover Challenge (URC) by demonstrating advanced autonomous capabilities and robust navigation algorithms.
Loading...
Searching...
No Matches
duckdb Namespace Reference

The SelectStatement of the view. More...

Classes

struct  AccessModeSetting
 
struct  ActiveCheckpointWrapper
 
struct  ActiveTimer
 
struct  AddColumnInfo
 
struct  AddConstraintInfo
 
struct  AddFieldInfo
 
class  AdditionalAuthenticatedData
 
struct  AddOperator
 
struct  AddOperatorOverflowCheck
 
struct  AddScalarFunctionOverloadInfo
 
struct  AddTableFunctionOverloadInfo
 
struct  AddTimeOperator
 
struct  aggregate_state_t
 
struct  AggregateBinaryInput
 
class  AggregateExecutor
 
class  AggregateExpressionMatcher
 
struct  AggregateFilterData
 
struct  AggregateFilterDataSet
 
struct  AggregateFinalizeData
 
class  AggregateFunction
 
class  AggregateFunctionCatalogEntry
 An aggregate function in the catalog. More...
 
struct  AggregateFunctionInfo
 
class  AggregateFunctionSet
 
struct  AggregateInputData
 
struct  AggregateObject
 
struct  AggregateStateType
 
struct  AggregateStateTypeInfo
 
struct  AggregateStatisticsInput
 
struct  AggregateUnaryInput
 
class  AllocatedData
 
class  Allocator
 
struct  AllocatorBackgroundThreadsSetting
 
struct  AllocatorBulkDeallocationFlushThresholdSetting
 
struct  AllocatorDebugInfo
 
struct  AllocatorFlushThresholdSetting
 
struct  AllowCommunityExtensionsSetting
 
struct  AllowedConfigsSetting
 
struct  AllowedDirectoriesSetting
 
struct  AllowedPathsSetting
 
struct  AllowExtensionsMetadataMismatchSetting
 
struct  AllowParserOverrideExtensionSetting
 
struct  AllowPersistentSecretsSetting
 
struct  AllowUnredactedSecretsSetting
 
struct  AllowUnsignedExtensionsSetting
 
class  AlterBinder
 The AlterBinder binds expressions in ALTER statements. More...
 
struct  AlterDatabaseInfo
 
struct  AlterEntryData
 
struct  AlterForeignKeyInfo
 
struct  AlterInfo
 
struct  AlterScalarFunctionInfo
 
struct  AlterTableFunctionInfo
 
struct  AlterTableInfo
 
struct  AlterViewInfo
 
struct  AlwaysFalse
 
struct  AnalyzeState
 
struct  AnyType
 
struct  AnyTypeInfo
 
class  Appender
 
struct  AppenderWrapper
 
struct  arena_deleter
 Call destructor without attempting to free the memory. More...
 
class  arena_stl_allocator
 
class  ArenaAllocator
 
struct  ArenaChunk
 
class  ArenaLinkedList
 
class  array_ptr
 array_ptr is a non-owning (optionally) bounds-checked pointer to an array More...
 
class  array_ptr_iterator
 
struct  ArrayCatFun
 
struct  ArrayConcatFun
 
struct  ArrayLengthFun
 
struct  ArrayType
 
struct  ArrayTypeInfo
 
struct  ArrayValue
 
struct  ArrayVector
 
union  arrow_string_view_t
 
struct  ArrowAppendData
 
class  ArrowAppender
 The ArrowAppender class can be used to incrementally construct an arrow array by appending data chunks into it. More...
 
struct  ArrowArrayInfo
 
struct  ArrowArrayScanState
 
class  ArrowArrayStreamWrapper
 
class  ArrowArrayWrapper
 
class  ArrowBatchGlobalState
 
class  ArrowBatchTask
 
struct  ArrowBignum
 
struct  ArrowBit
 
struct  ArrowBool8
 
struct  ArrowBoolData
 
struct  ArrowBuffer
 
struct  ArrowCollectorGlobalState
 
struct  ArrowCollectorLocalState
 
struct  ArrowConverter
 
struct  ArrowDateTimeInfo
 
struct  ArrowDecimalInfo
 
struct  ArrowEnumData
 
struct  ArrowExtensionMetadata
 
struct  ArrowFixedSizeListData
 
struct  ArrowGeometry
 
struct  ArrowInterval
 
struct  ArrowIntervalConverter
 
struct  ArrowJson
 
struct  ArrowLargeBufferSizeSetting
 
struct  ArrowListData
 
struct  ArrowListInfo
 
struct  ArrowListViewData
 
struct  ArrowLosslessConversionSetting
 
struct  ArrowMapData
 
class  ArrowMergeEvent
 
struct  ArrowNullData
 
struct  ArrowOutputListViewSetting
 
struct  ArrowOutputVersionSetting
 
struct  ArrowProjectedColumns
 
class  ArrowQueryResult
 
struct  ArrowResultWrapper
 
struct  ArrowRunEndEncodingState
 
struct  ArrowScalarBaseData
 
struct  ArrowScalarConverter
 
struct  ArrowScalarData
 
struct  ArrowScanFunctionData
 
struct  ArrowScanGlobalState
 
struct  ArrowScanLocalState
 
class  ArrowSchemaMetadata
 
class  ArrowSchemaWrapper
 
struct  ArrowStreamParameters
 
struct  ArrowStringInfo
 
struct  ArrowStringViewConstants
 
struct  ArrowStructData
 
struct  ArrowStructInfo
 
struct  ArrowTableFunction
 
struct  ArrowTableSchema
 
struct  ArrowTimeTzConverter
 
struct  ArrowToDuckDBConversion
 
class  ArrowType
 
class  ArrowTypeExtension
 
class  ArrowTypeExtensionData
 
struct  ArrowTypeExtensionSet
 The set of encoding functions. More...
 
struct  ArrowTypeInfo
 
struct  ArrowUnionData
 
class  ArrowUtil
 
struct  ArrowUUIDBlobConverter
 
struct  ArrowUUIDConverter
 
struct  ArrowVarcharConverter
 
struct  ArrowVarcharData
 
struct  ArrowVarcharToStringViewData
 
class  ART
 
class  ARTKey
 
class  ARTScanner
 ARTScanner scans the entire ART and processes each node. More...
 
struct  AsofLoopJoinThresholdSetting
 
class  AsyncResult
 
class  AsyncTask
 
class  atomic_ptr
 
class  AttachedDatabase
 The AttachedDatabase represents an attached database instance. More...
 
struct  AttachInfo
 
struct  AttachOptions
 
struct  AutoCheckpointSkipWalThresholdSetting
 
struct  AutoinstallExtensionRepositorySetting
 
struct  AutoinstallKnownExtensionsSetting
 
class  AutoloadException
 
struct  AutoloadKnownExtensionsSetting
 
class  BaseAppender
 The Appender class can be used to append elements to a table. More...
 
class  BaseColumnPruner
 
class  BaseExpression
 
class  BaseFileReader
 
class  BaseFileReaderOptions
 Parent class of file reader options. More...
 
class  BaseNode
 
class  BasePipelineEvent
 A BasePipelineEvent is used as the basis of any event that belongs to a specific pipeline. More...
 
class  BaseProfiler
 Profiler class to measure the elapsed time. More...
 
class  BaseQueryResult
 
struct  BaseRequest
 
class  BaseReservoirSampling
 Resevoir sampling is based on the 2005 paper "Weighted Random Sampling" by Efraimidis and Spirakis. More...
 
class  BaseResultRenderer
 
class  BaseScalarFunction
 
class  BaseSecret
 Base class from which BaseSecret classes can be made. More...
 
class  BaseStatistics
 
class  BaseUnionData
 
class  BaseUUID
 The BaseUUID class contains UUID related common and util functions. More...
 
class  basic_stringstream
 
class  BatchCollectionChunkScanState
 
class  BatchCollectorGlobalState
 
class  BatchCollectorLocalState
 
struct  BatchedChunkIteratorRange
 
struct  BatchedChunkScanState
 
class  BatchedDataCollection
 
class  BFTableFilter
 
struct  BFTableFilterState
 
struct  BigIntValue
 
class  Bignum
 The Bignum class is a static class that holds helper functions for the Bignum type. More...
 
struct  bignum_t
 
struct  BignumCastToVarchar
 
struct  BignumIntermediate
 
struct  BignumToDoubleCast
 
struct  BignumToIntCast
 
class  BinaryDeserializer
 
struct  BinaryExecutor
 
struct  BinaryLambdaWrapper
 
struct  BinaryLambdaWrapperWithNulls
 
class  BinarySerializer
 
struct  BinarySingleArgumentOperatorWrapper
 
struct  BinaryStandardOperatorWrapper
 
struct  BindCastFunction
 
struct  BindCastInfo
 Extra data that can be attached to a bind function of a cast, and is available during binding. More...
 
struct  BindCastInput
 
class  BindContext
 
class  Binder
 Bind the parsed query tree to the actual columns present in the catalog. More...
 
class  BinderException
 
struct  BindInfo
 
struct  Binding
 A Binding represents a binding to a table, table-producing function or subquery with a specified table index. More...
 
struct  BindingAlias
 
struct  BindLogicalTypeInput
 
struct  BindPreparedStatementCallbackInfo
 
struct  BindResult
 
class  Bit
 The Bit class is a static class that holds helper functions for the BIT type. More...
 
struct  BitLengthFun
 
class  Blob
 The Blob class is a static class that holds helper functions for the Blob type. More...
 
class  Block
 
class  block_iterator_t
 Iterator for data spread out over multiple blocks. More...
 
class  BlockAllocator
 
struct  BlockAllocatorMemorySetting
 
class  BlockHandle
 
struct  BlockIdVisitor
 
struct  BlockIndexManager
 
class  BlockingSample
 
class  BlockIteratorState
 
class  BlockIteratorState< BlockIteratorStateType::EXTERNAL >
 
class  BlockIteratorState< BlockIteratorStateType::IN_MEMORY >
 
class  BlockIteratorStateBase
 
class  BlockManager
 
class  BlockMemory
 
struct  BlockMetaData
 
struct  BlockPointer
 
class  BloomFilter
 
struct  BooleanValue
 
class  BoundAtClause
 The AT clause specifies which version of a table to read. More...
 
struct  BoundCastData
 Extra data that can be returned by the bind of a cast, and is available during execution of a cast. More...
 
class  BoundCastExpression
 
struct  BoundCastInfo
 
class  BoundCheckConstraint
 
struct  BoundColumnReferenceInfo
 
class  BoundColumnRefExpression
 
class  BoundConstantExpression
 
class  BoundConstraint
 Bound equivalent of Constraint. More...
 
struct  BoundCreateTableInfo
 
class  BoundDistinctModifier
 
class  BoundExpression
 
class  BoundForeignKeyConstraint
 
class  BoundFunctionExpression
 Represents a function call that has been bound to a base function. More...
 
class  BoundIndex
 The index is an abstract base class that serves as the basis for indexes. More...
 
class  BoundLambdaExpression
 
class  BoundLimitModifier
 
struct  BoundLimitNode
 
class  BoundNotNullConstraint
 
struct  BoundOrderByNode
 
class  BoundOrderModifier
 
struct  BoundParameterData
 
struct  BoundParameterMap
 
class  BoundReferenceExpression
 A BoundReferenceExpression represents a physical index into a DataChunk. More...
 
class  BoundResultModifier
 A ResultModifier. More...
 
struct  BoundStatement
 
class  BoundUniqueConstraint
 
class  BoxRenderer
 
struct  BoxRendererConfig
 
struct  BoxRendererFooter
 
struct  BoxRendererImplementation
 
struct  BoxRendererState
 
struct  BoxRenderRow
 
struct  BoxRenderValue
 
class  buffer_handle_map_t
 
struct  BufferAllocator
 
class  BufferedData
 
class  BufferedFileWriter
 
struct  BufferedIndexReplays
 
class  BufferHandle
 
class  BufferingLogStorage
 
class  BufferManager
 
struct  BufferPoolPayload
 
struct  BufferPoolReservation
 
class  BuiltinFunctions
 
struct  CachedFileInformation
 
struct  CachedGlobalSettings
 
class  CachingOperatorState
 Contains state for the CachingPhysicalOperator. More...
 
class  CachingPhysicalOperator
 
class  CardinalityEstimator
 
class  CardinalityHelper
 
class  CaseExpressionMatcher
 
struct  CaseInsensitiveStringCompare
 
struct  CaseInsensitiveStringEquality
 
struct  CaseInsensitiveStringHashFunction
 
struct  Cast
 
class  CastExpression
 CastExpression represents a type cast from one SQL type to another SQL type. More...
 
class  CastExpressionMatcher
 
struct  CastFromBitToBlob
 
struct  CastFromBitToNumeric
 
struct  CastFromBitToString
 
struct  CastFromBlob
 
struct  CastFromBlobToBit
 
struct  CastFromPointer
 
struct  CastFromTimeNS
 
struct  CastFromTimestampMS
 
struct  CastFromTimestampNS
 
struct  CastFromTimestampSec
 
struct  CastFromType
 
struct  CastFromUUID
 
struct  CastFromUUIDToBlob
 
class  CastFunctionSet
 
struct  CastLocalStateParameters
 
struct  CastParameters
 
struct  CastTimestampMsToDate
 
struct  CastTimestampMsToNs
 
struct  CastTimestampMsToTime
 
struct  CastTimestampMsToUs
 
struct  CastTimestampNsToDate
 
struct  CastTimestampNsToTime
 
struct  CastTimestampNsToTimeNs
 
struct  CastTimestampNsToUs
 
struct  CastTimestampSecToDate
 
struct  CastTimestampSecToMs
 
struct  CastTimestampSecToNs
 
struct  CastTimestampSecToTime
 
struct  CastTimestampSecToUs
 
struct  CastTimestampUsToMs
 
struct  CastTimestampUsToNs
 
struct  CastTimestampUsToSec
 
class  Catalog
 The Catalog object represents the catalog of the database. More...
 
class  CatalogEntry
 Abstract base class of an entry in the catalog. More...
 
struct  CatalogEntryEquality
 
struct  CatalogEntryHashFunction
 
struct  CatalogEntryInfo
 
struct  CatalogEntryLookup
 Return value of Catalog::LookupEntry. More...
 
class  CatalogEntryMap
 
class  CatalogEntryRetriever
 
struct  CatalogErrorMaxSchemasSetting
 
class  CatalogException
 
struct  CatalogLookup
 
struct  CatalogSearchEntry
 
class  CatalogSearchPath
 The schema search path, in order by which entries are searched if no schema entry is provided. More...
 
class  CatalogSet
 The Catalog Set stores (key, value) map of a set of CatalogEntries. More...
 
struct  CatalogTransaction
 
struct  CClientArrowOptionsWrapper
 
struct  CClientContextWrapper
 
class  CGroups
 
struct  ChangeColumnTypeInfo
 
struct  ChangeOwnershipInfo
 
struct  CharacterLengthFun
 
struct  CharLengthFun
 
class  CheckConstraint
 
class  CheckpointLock
 
class  CheckpointLogType
 
struct  CheckpointOptions
 
struct  CheckpointThresholdSetting
 
class  ChunkConstantInfo
 
class  ChunkInfo
 
struct  ChunkManagementState
 
class  ChunkScanState
 Abstract chunk fetcher. More...
 
class  ChunkVectorInfo
 
struct  CleanupBufferPool
 
struct  ClientConfig
 
class  ClientContext
 
class  ClientContextLock
 
class  ClientContextState
 
class  ClientContextWrapper
 
struct  ClientData
 
struct  ClientProperties
 A set of properties from the client context that can be used to interpret the query result. More...
 
struct  CMIntegralCompressFun
 
struct  CMIntegralDecompressFun
 
struct  CMStringCompressFun
 
struct  CMStringDecompressFun
 
struct  CMUtils
 
class  CollateCatalogEntry
 A collation catalog entry. More...
 
class  CollectionScanState
 
struct  ColumnBinding
 
struct  ColumnBindingEquality
 
struct  ColumnBindingHashFunction
 
class  ColumnBindingReplacer
 The ColumnBindingReplacer updates column bindings (e.g., after changing the operator plan), utility for optimizers. More...
 
struct  ColumnCheckpointInfo
 
class  ColumnData
 
class  ColumnDataAllocator
 
struct  ColumnDataAppendState
 
class  ColumnDataChunkIterationHelper
 
class  ColumnDataCollection
 
struct  ColumnDataLocalScanState
 
struct  ColumnDataParallelScanState
 
class  ColumnDataRow
 
class  ColumnDataRowCollection
 The ColumnDataRowCollection represents a set of materialized rows, as obtained from the ColumnDataCollection. More...
 
class  ColumnDataRowIterationHelper
 
struct  ColumnDataScanState
 
class  ColumnDefinition
 A column of a table. More...
 
class  ColumnDependencyManager
 Dependency Manager local to a table, responsible for keeping track of generated column dependencies. More...
 
struct  ColumnFetchState
 
struct  ColumnIndex
 
struct  ColumnIndexEquality
 
struct  ColumnIndexHashFunction
 
class  ColumnList
 A set of column definitions. More...
 
struct  ColumnPartitionData
 
class  ColumnRefExpression
 
struct  ColumnScanState
 
class  ColumnSegment
 TableFilter represents a filter pushed down into the table scan. More...
 
struct  ColumnSegmentInfo
 Column segment information. More...
 
struct  ColumnSegmentState
 
class  ColumnSegmentTree
 
class  ColumnStatistics
 
struct  CombinedListData
 
struct  CommitInfo
 
struct  CommonTableExpressionInfo
 
class  CommonTableExpressionMap
 
class  ComparisonExpressionMatcher
 
class  ComparisonExpressionTypeMatcher
 The ComparisonExpressionTypeMatcher class matches a comparison expression. More...
 
struct  ComparisonOperationWrapper
 
struct  ComparisonOperationWrapper< DistinctFrom >
 
struct  ComparisonOperationWrapper< NotDistinctFrom >
 
struct  compatible_with_t
 
struct  ComplexJSON
 Custom struct to handle both strings and nested JSON objects. More...
 
class  CompressedFile
 
class  CompressedFileSystem
 
struct  CompressedSegmentState
 
struct  CompressionAppendState
 
struct  CompressionAvailabilityResult
 
class  CompressionFunction
 
struct  CompressionFunctionSet
 The set of compression functions. More...
 
class  CompressionInfo
 
struct  CompressionState
 
struct  ConcatFun
 
struct  ConcatOperatorFun
 
struct  ConcatWsFun
 
struct  ConfigurationAlias
 
struct  ConfigurationOption
 
class  ConflictInfo
 ConflictInfo contains information to match indexes to ON CONFLICT DO targets. More...
 
class  ConflictManager
 
class  ConjunctionAndFilter
 
struct  ConjunctionAndFilterState
 
class  ConjunctionExpressionMatcher
 
class  ConjunctionFilter
 
class  ConjunctionOrFilter
 
struct  ConjunctionOrFilterState
 
class  Connection
 
class  ConnectionException
 
class  ConnectionManager
 
struct  ConsecutiveChildListInfo
 
class  ConstantExpression
 ConstantExpression represents a constant value in the query. More...
 
class  ConstantExpressionMatcher
 
class  ConstantFilter
 
struct  ConstantVector
 
class  Constraint
 Constraint is the base class of any type of table constraint. More...
 
class  ConstraintException
 
struct  ContainsFun
 
struct  ContainsFunctor
 
class  ContinuousIdSet
 
class  ConversionException
 
struct  ConvertToString
 
class  CoordinateReferenceSystem
 
class  CoordinateSystemCatalogEntry
 A coordinate system catalog entry. More...
 
struct  CopyFromFunctionBindInput
 
class  CopyFunction
 
struct  CopyFunctionBindInput
 
class  CopyFunctionCatalogEntry
 A table function in the catalog. More...
 
struct  CopyFunctionFileStatistics
 
struct  CopyFunctionInfo
 
struct  CopyInfo
 
struct  CopyOption
 
struct  CopyOptionsInput
 
class  CopyStatement
 
struct  CopyToSelectInput
 
struct  CorrelatedColumnInfo
 
struct  CorrelatedColumns
 
struct  CountZeros
 
struct  CountZeros< hugeint_t >
 
struct  CountZeros< uhugeint_t >
 
struct  CountZeros< uint32_t >
 
struct  CountZeros< uint64_t >
 
struct  CreateAggregateFunctionInfo
 
struct  CreateCollationInfo
 
struct  CreateCoordinateSystemInfo
 
struct  CreateCopyFunctionInfo
 
struct  CreateFunctionInfo
 
struct  CreateIndexInfo
 
struct  CreateIndexInput
 
class  CreateIndexScanState
 
struct  CreateInfo
 
struct  CreateMacroInfo
 
struct  CreatePragmaFunctionInfo
 
struct  CreateScalarFunctionInfo
 
struct  CreateSchemaInfo
 
class  CreateSecretFunction
 A CreateSecretFunction is a function adds a provider for a secret type. More...
 
class  CreateSecretFunctionSet
 
struct  CreateSecretInfo
 
struct  CreateSecretInput
 Input passed to a CreateSecretFunction. More...
 
struct  CreateSequenceInfo
 
class  CreateStatement
 
struct  CreateTableFunctionInfo
 
struct  CreateTableInfo
 
struct  CreateTypeInfo
 
struct  CreateViewInfo
 
class  CSVBuffer
 
class  CSVBufferHandle
 
class  CSVEncoder
 
struct  CSVEncoderBuffer
 Struct that holds encoder buffers. More...
 
class  CSVFileHandle
 
class  CSVLogStorage
 
struct  CSVOption
 
struct  CSVReaderOptions
 
struct  CSVStateMachineOptions
 
class  CSVWriter
 
struct  CSVWriterOptions
 
struct  CSVWriterState
 
struct  CTEBinding
 
struct  CTEBindState
 
class  CTERefPruner
 
struct  CurrentTransactionInvalidationPolicySetting
 
struct  CustomExtensionRepositorySetting
 
struct  CustomProfilingSettingsSetting
 
struct  CustomUserAgentSetting
 
struct  DatabaseCacheEntry
 
class  DatabaseFilePathManager
 The DatabaseFilePathManager is used to ensure we only ever open a single database file once. More...
 
struct  DatabaseHeader
 
class  DatabaseInstance
 
class  DatabaseManager
 The DatabaseManager is a class that sits at the root of all attached databases. More...
 
struct  DatabaseModificationType
 
struct  DatabasePathInfo
 
struct  DatabaseSize
 
struct  DatabaseWrapper
 
class  DataChunk
 A Data Chunk represents a set of vectors. More...
 
struct  DataPointer
 
class  DataTable
 DataTable represents a physical table on disk. More...
 
struct  DataTableInfo
 
class  Date
 The Date class is a static class that holds helper functions for the Date type. More...
 
struct  date_t
 Type used to represent dates (days since 1970-01-01) More...
 
struct  DateSpecial
 
struct  DateToStringCast
 
struct  DateValue
 
struct  DBConfig
 
struct  DBConfigOptions
 
class  DBInstanceCache
 
struct  DBInstanceCacheWrapper
 
struct  DConstants
 
struct  DebugAsofIejoinSetting
 
struct  DebugCheckpointAbortSetting
 
struct  DebugCheckpointSleepMsSetting
 
struct  DebugEvictionQueueSleepMicroSecondsSetting
 
struct  DebugForceExternalSetting
 
struct  DebugForceNoCrossProductSetting
 
struct  DebugPhysicalTableScanExecutionStrategySetting
 
struct  DebugSkipCheckpointOnCommitSetting
 
struct  DebugVerifyBlocksSetting
 
struct  DebugVerifyVectorSetting
 
struct  DebugWindowModeSetting
 
class  Decimal
 The Decimal class is a static class that holds helper functions for the Decimal type. More...
 
struct  DecimalAddOverflowCheck
 
struct  DecimalCastData
 
struct  DecimalCastOperation
 
struct  DecimalCastTraits
 
struct  DecimalCastTraits< hugeint_t >
 
struct  DecimalCastTraits< uhugeint_t >
 
struct  DecimalMultiplyOverflowCheck
 
struct  DecimalSubtractOverflowCheck
 
struct  DecimalToString
 
struct  DecimalType
 
struct  DecimalTypeInfo
 
struct  DecimalWidth
 
struct  DecimalWidth< hugeint_t >
 
struct  DecimalWidth< int16_t >
 
struct  DecimalWidth< int32_t >
 
struct  DecimalWidth< int64_t >
 
struct  DefaultBlockSizeSetting
 
struct  DefaultCasts
 
struct  DefaultCollationSetting
 
class  DefaultCoordinateSystemGenerator
 
struct  DefaultExtension
 
class  DefaultFunctionGenerator
 
class  DefaultGenerator
 
class  DefaultLogType
 
struct  DefaultMacro
 
struct  DefaultNamedParameter
 
struct  DefaultNullCheckOperator
 
struct  DefaultNullOrderSetting
 
struct  DefaultOptimizerType
 
struct  DefaultOrderSetting
 
struct  DefaultPayload
 
struct  DefaultSchema
 
class  DefaultSchemaGenerator
 
struct  DefaultSecretStorageSetting
 
class  DefaultTableFunctionGenerator
 
struct  DefaultTableMacro
 
class  DefaultTypeGenerator
 
struct  DefaultView
 
class  DefaultViewGenerator
 
class  DeleteFilter
 
struct  DeleteIndexInfo
 
struct  DeleteRequestInfo
 
class  DelimGetRef
 
struct  DeltaOnlyVariantEncodingEnabledSetting
 
struct  DenomInfo
 
struct  Dependency
 
class  DependencyCatalogSet
 This class mocks the CatalogSet interface, but does not actually store CatalogEntries. More...
 
struct  DependencyDependent
 
class  DependencyDependentEntry
 
struct  DependencyDependentFlags
 
class  DependencyEntry
 
struct  DependencyEquality
 
class  DependencyException
 
struct  DependencyFlags
 
struct  DependencyHashFunction
 
struct  DependencyInfo
 
class  DependencyItem
 
class  DependencyManager
 The DependencyManager is in charge of managing dependencies between catalog entries. More...
 
struct  DependencySubject
 
class  DependencySubjectEntry
 
struct  DependencySubjectFlags
 
struct  DeprecatedUsingKeySyntaxSetting
 
class  deque
 
class  Deserializer
 
struct  DialectOptions
 
class  DictionaryBuffer
 The DictionaryBuffer holds a selection vector. More...
 
struct  DictionaryVector
 
struct  DisableDatabaseInvalidationSetting
 
struct  DisabledCompressionMethodsSetting
 
struct  DisabledFilesystemsSetting
 
struct  DisabledLogTypes
 
struct  DisabledOptimizersSetting
 
struct  DisableTimestamptzCastsSetting
 
struct  DistinctCount
 
struct  DistinctFrom
 
struct  DistinctGreaterThan
 
struct  DistinctGreaterThanEquals
 
struct  DistinctGreaterThanNullsFirst
 
struct  DistinctLessThan
 
struct  DistinctLessThanEquals
 
struct  DistinctLessThanNullsFirst
 
class  DistinctModifier
 
class  DistinctStatistics
 
struct  double_na_equal
 
struct  DoubleValue
 
class  DPJoinNode
 
struct  DropInfo
 
struct  DropNotNullInfo
 
struct  DroppedFieldMapping
 
struct  dtime_ns_t
 Type used to represent TIME_NS. dtime_ns_t holds the nanoseconds since midnight. More...
 
struct  dtime_t
 Type used to represent time (microseconds) More...
 
struct  dtime_tz_t
 
class  DuckCatalog
 The Catalog object represents the catalog of the database. More...
 
struct  DuckCleanupInfo
 
class  DuckDB
 
struct  DuckDBAdbcConnectionWrapper
 
struct  DuckDBAPISetting
 
struct  DuckDBArrowSchemaHolder
 
struct  DuckDBResultData
 
class  DuckIndexEntry
 A duck index entry. More...
 
class  DuckSchemaEntry
 A schema in the catalog. More...
 
class  DuckTableEntry
 A table catalog entry. More...
 
class  DuckTransaction
 
class  DuckTransactionManager
 
struct  DummyBinding
 
class  DynamicFilter
 
struct  DynamicFilterData
 
struct  DynamicOrFilterThresholdSetting
 
class  DynamicTableFilterSet
 
class  enable_shared_from_this
 
struct  EnabledLogTypes
 
struct  EnableExternalAccessSetting
 
struct  EnableExternalFileCacheSetting
 
struct  EnableFSSTVectorsSetting
 
struct  EnableHTTPLoggingSetting
 
struct  EnableHTTPMetadataCacheSetting
 
struct  EnableLogging
 
struct  EnableMacroDependenciesSetting
 
struct  EnableObjectCacheSetting
 
struct  EnableProfilingSetting
 
struct  EnableProgressBarPrintSetting
 
struct  EnableProgressBarSetting
 
struct  EnableViewDependenciesSetting
 
class  EncodingFunction
 
struct  EncodingFunctionSet
 The set of encoding functions. More...
 
struct  EncodingUtil
 
struct  EncryptionCanary
 
class  EncryptionEngine
 
class  EncryptionKey
 
class  EncryptionKeyManager
 
struct  EncryptionNonce
 
class  EncryptionState
 
struct  EncryptionStateMetadata
 
struct  EncryptionTag
 
class  EncryptionTypes
 
class  EncryptionUtil
 
struct  EndsWithFun
 
struct  EntryBinding
 
struct  EntryLookupInfo
 
struct  EnumClassHash
 
struct  EnumType
 
struct  EnumTypeInfo
 
struct  EnumTypeInfoTemplated
 
struct  EnumUtil
 
struct  Equals
 
class  ErrorData
 
struct  ErrorDataWrapper
 
class  ErrorManager
 
struct  ErrorsAsJSONSetting
 
class  Event
 
class  Exception
 
struct  ExceptionEntry
 
struct  ExceptionFormatValue
 
struct  ExecuteFunctionState
 
class  ExecutionContext
 
class  Executor
 
class  ExecutorException
 
class  ExecutorTask
 
struct  ExpandDirectory
 
struct  ExperimentalMetadataReuseSetting
 
struct  ExplainOutputSetting
 
class  ExplainStatement
 
class  Expression
 The Expression class represents a bound Expression with a return type. More...
 
class  ExpressionBinder
 
struct  ExpressionBinding
 
struct  ExpressionEquality
 
class  ExpressionEqualityMatcher
 The ExpressionEqualityMatcher matches on equality with another (given) expression. More...
 
class  ExpressionExecutor
 ExpressionExecutor is responsible for executing a set of expressions and storing the result in a data chunk. More...
 
struct  ExpressionExecutorState
 
class  ExpressionFilter
 
struct  ExpressionFilterState
 
struct  ExpressionHashFunction
 
class  ExpressionIterator
 
class  ExpressionMatcher
 The ExpressionMatcher class contains a set of matchers that can be used to pattern match Expressions. More...
 
class  ExpressionRewriter
 The ExpressionRewriter performs a set of fixed rewrite rules on the expressions that occur in a SQL statement. More...
 
struct  ExpressionState
 
class  ExpressionTypeMatcher
 The ExpressionTypeMatcher class contains a set of matchers that can be used to pattern match ExpressionTypes. More...
 
struct  ExpressionWrapper
 
struct  ExtendedOpenFileInfo
 
class  Extension
 The Extension class is the base class used to define extensions. More...
 
class  ExtensionActiveLoad
 
struct  ExtensionAlias
 
struct  ExtensionDirectoriesSetting
 
struct  ExtensionDirectorySetting
 
struct  ExtensionEntry
 
struct  ExtensionFunctionEntry
 
struct  ExtensionFunctionOverloadEntry
 
class  ExtensionHelper
 
class  ExtensionInfo
 
struct  ExtensionInitResult
 
class  ExtensionInstallInfo
 
struct  ExtensionInstallOptions
 
struct  ExtensionLoadedInfo
 
class  ExtensionLoader
 
class  ExtensionManager
 
struct  ExtensionOption
 
struct  ExtensionRepository
 
struct  ExtensionTypeInfo
 
struct  ExtensionUpdateResult
 
class  ExternalDependency
 
struct  ExternalThreadsSetting
 
struct  ExtraBoundInfo
 
struct  ExtractStatementsWrapper
 
struct  ExtraDropInfo
 
struct  ExtraDropSecretInfo
 
class  ExtraOperatorInfo
 
class  ExtraPersistentColumnData
 
struct  ExtraTypeInfo
 
class  FastMod
 
class  FatalException
 
class  FileBuffer
 The FileBuffer represents a buffer that can be read or written to a Direct IO FileHandle. More...
 
class  FileFlags
 
struct  FileGlobInput
 
struct  FileHandle
 
class  FileLogStorage
 
struct  FileMetadata
 
class  FilenamePattern
 
struct  FileNameSegment
 
class  FileOpener
 Abstract type that provide client-specific context to FileSystem. More...
 
struct  FileOpenerInfo
 
class  FileOpenFlags
 
struct  FileSearchPathSetting
 
class  FileSystem
 
class  FileSystemLogType
 
class  FilterCombiner
 
class  FilterInfoWithTotalDomains
 
class  fixed_size_map_iterator
 
class  fixed_size_map_t
 Alternative to perfect_map_t when min/max keys are integral, small, and known. More...
 
class  FixedSizeAllocator
 
struct  FixedSizeAllocatorInfo
 Information to serialize a FixedSizeAllocator, which holds the index data. More...
 
class  FixedSizeBuffer
 
struct  FixedSizeUncompressed
 
struct  FixedSortKey
 
struct  FlatVector
 
struct  float_na_equal
 
struct  FloatValue
 
class  FoldableConstantMatcher
 
struct  ForceBitpackingModeSetting
 
struct  ForceCompressionSetting
 
struct  ForceMbedtlsUnsafeSetting
 
struct  ForceVariantShredding
 
class  ForeignKeyConstraint
 
struct  ForeignKeyInfo
 
struct  FrameBounds
 
struct  FrameDelta
 
class  FSSTPrimitives
 
struct  FSSTVector
 
class  Function
 Function is the base class used for any type of function (scalar, aggregate or simple function) More...
 
struct  FunctionBindExpressionInput
 
struct  FunctionData
 
struct  FunctionDataWrapper
 
struct  FunctionDescription
 
class  FunctionEntry
 A function in the catalog. More...
 
class  FunctionExpression
 Represents a function call. More...
 
class  FunctionExpressionMatcher
 
struct  FunctionList
 
struct  FunctionLocalState
 
class  FunctionMatcher
 The FunctionMatcher class contains a set of matchers that can be used to pattern match specific functions. More...
 
struct  FunctionModifiedDatabasesInput
 
struct  FunctionParameters
 
class  FunctionSet
 
struct  FunctionStatisticsInput
 
struct  GeneratedSettingInfo
 
struct  GenericSetting
 
struct  GenericUnaryWrapper
 
class  Geometry
 
class  GeometryExtent
 
struct  GeometryMinimumShreddingSize
 
class  GeometryPersistentColumnData
 
struct  GeometryStats
 
struct  GeometryStatsData
 
class  GeometryStatsFlags
 
class  GeometryTypeSet
 
struct  GeoType
 
struct  GeoTypeInfo
 
struct  GetCastFunctionInput
 
struct  GetPartitionStatsInput
 
struct  GetRequestInfo
 
struct  GlobalBinderState
 GlobalBinderState is state shared over the ENTIRE query, including subqueries, views, etc. More...
 
struct  GlobalFunctionData
 
class  GlobalHivePartitionState
 
class  GlobalOperatorState
 
class  GlobalSinkState
 
class  GlobalSourceState
 
struct  GlobalTableFunctionState
 
struct  GlobalUserSettings
 
class  GlobMultiFileList
 MultiFileList that takes a list of globs and resolves all of the globs lazily into files. More...
 
struct  GlobPatternFun
 
struct  GraphemeCluster
 
class  GraphemeIterator
 
struct  GreaterThan
 
struct  GreaterThanEquals
 
class  GroupByNode
 
class  GZipFile
 
class  GZipFileSystem
 
struct  HandleCastError
 
struct  has_deserialize
 
struct  has_deserialize< T, typename std::enable_if< std::is_same< decltype(T::Deserialize), shared_ptr< T >(Deserializer &)>::value, T >::type >
 
struct  has_deserialize< T, typename std::enable_if< std::is_same< decltype(T::Deserialize), std::shared_ptr< T >(Deserializer &)>::value, T >::type >
 
struct  has_deserialize< T, typename std::enable_if< std::is_same< decltype(T::Deserialize), T(Deserializer &)>::value, T >::type >
 
struct  has_deserialize< T, typename std::enable_if< std::is_same< decltype(T::Deserialize), unique_ptr< T >(Deserializer &)>::value, T >::type >
 
struct  has_serialize
 
struct  has_serialize< T, typename std::enable_if< std::is_same< decltype(std::declval< T >().Serialize(std::declval< Serializer & >())), void >::value, T >::type >
 
struct  HashArrowTypeExtension
 
struct  HashTypeInfo
 
struct  HeadRequestInfo
 
struct  HighlightingAnnotation
 
struct  HistogramAggState
 
class  HivePartitionedColumnData
 
class  HivePartitioning
 
struct  HivePartitioningFilterInfo
 
struct  HivePartitioningIndex
 
struct  HivePartitionKey
 
struct  HomeDirectorySetting
 
class  HTTPClient
 
class  HTTPException
 
struct  HTTPHeaders
 
struct  HTTPLoggingOutputSetting
 
class  HTTPLogType
 
struct  HTTPLogWriter
 
struct  HTTPParams
 
struct  HTTPProxyPasswordSetting
 
struct  HTTPProxySetting
 
struct  HTTPProxyUsernameSetting
 
struct  HTTPResponse
 
class  HTTPUtil
 
class  Hugeint
 The Hugeint class contains static operations for the INT128 type. More...
 
struct  hugeint_t
 
struct  HugeintCastToBignum
 --------------------------------— (u)HugeInt Cast --------------------------------— // More...
 
struct  HugeIntValue
 
class  HyperLogLog
 
struct  IeeeFloatingPointOpsSetting
 
struct  IgnoreUnknownCrsSetting
 
struct  IlikeEscapeFun
 
struct  ILikeFun
 
struct  ImmediateTransactionModeSetting
 
class  InCatalogEntry
 
class  InClauseExpressionMatcher
 
class  Index
 The index is an abstract base class that serves as the basis for indexes. More...
 
class  IndexAppendInfo
 
class  IndexBinder
 The IndexBinder binds indexes and expressions within index statements. More...
 
struct  IndexBufferInfo
 Information to serialize an index buffer to the WAL. More...
 
struct  IndexBuildBindData
 
struct  IndexBuildBindInput
 
struct  IndexBuildCombineInput
 
struct  IndexBuildFinalizeInput
 
struct  IndexBuildGlobalState
 
struct  IndexBuildInitGlobalStateInput
 
struct  IndexBuildInitLocalStateInput
 
struct  IndexBuildLocalState
 
struct  IndexBuildSinkInput
 
struct  IndexBuildSortInput
 
class  IndexCatalogEntry
 An index catalog entry. More...
 
struct  IndexDataTableInfo
 Wrapper class to allow copying a DuckIndexEntry (for altering the DuckIndexEntry metadata such as comments) More...
 
struct  IndexEntry
 IndexEntry contains an atomic in addition to the index to ensure correct binding. More...
 
struct  IndexInfo
 Additional index information for tables. More...
 
class  IndexPointer
 
struct  IndexScanMaxCountSetting
 
struct  IndexScanPercentageSetting
 
struct  IndexScanState
 
struct  IndexSerializationInfo
 
struct  IndexSerializationResult
 
struct  IndexStorageInfo
 Index (de)serialization information. More...
 
class  IndexType
 A index "type". More...
 
struct  IndexTypeInfo
 
class  IndexTypeSet
 
class  IndexVector
 
class  InFilter
 
class  InMemoryLogStorage
 
class  InMemoryLogStorageScanState
 State for scanning the in memory buffers. More...
 
class  InsertionOrderPreservingMap
 
class  InsertStatement
 
struct  IntCastToBignum
 --------------------------------— (u)Integral Cast --------------------------------— // More...
 
struct  IntegerCastData
 
struct  IntegerCastOperation
 
struct  IntegerDecimalCastData
 
struct  IntegerDecimalCastData< uint64_t >
 
struct  IntegerDecimalCastOperation
 
struct  IntegerDivisionSetting
 
struct  IntegerLiteral
 
struct  IntegerLiteralTypeInfo
 
class  IntegerTypeMatcher
 The IntegerTypeMatcher class matches only integer types (INTEGER, SMALLINT, TINYINT, BIGINT) More...
 
struct  IntegerValue
 
struct  IntegralValue
 
class  InternalAppender
 
class  InternalException
 
struct  InterruptDoneSignalState
 Synchronization primitive used to await a callback in InterruptMode::BLOCKING. More...
 
class  InterruptException
 
class  InterruptState
 State required to make the callback after some asynchronous operation within an operator source / sink. More...
 
class  Interval
 
struct  interval_t
 
struct  IntervalToStringCast
 
struct  IntervalValue
 
class  InvalidConfigurationException
 
class  InvalidInputException
 
class  InvalidTypeException
 
class  IOException
 
struct  is_atomic
 
struct  is_atomic< std::atomic< T > >
 
struct  is_insertion_preserving_map
 
struct  is_insertion_preserving_map< typename duckdb::InsertionOrderPreservingMap< Args... > >
 
struct  is_map
 
struct  is_map< typename duckdb::map< Args... > >
 
struct  is_optional_ptr
 
struct  is_optional_ptr< optional_ptr< T > >
 
struct  is_optionally_owned_ptr
 
struct  is_optionally_owned_ptr< optionally_owned_ptr< T > >
 
struct  is_pair
 
struct  is_pair< std::pair< T, U > >
 
struct  is_queue
 
struct  is_queue< typename std::priority_queue< T > >
 
struct  is_set
 
struct  is_set< duckdb::set< Args... > >
 
struct  is_shared_ptr
 
struct  is_shared_ptr< shared_ptr< T > >
 
struct  is_shared_ptr< std::shared_ptr< T > >
 
struct  is_unique_ptr
 
struct  is_unique_ptr< unique_ptr< T > >
 
struct  is_unordered_map
 
struct  is_unordered_map< typename duckdb::unordered_map< Args... > >
 
struct  is_unordered_set
 
struct  is_unordered_set< duckdb::unordered_set< Args... > >
 
struct  is_unsafe_vector
 
struct  is_unsafe_vector< typename duckdb::unsafe_vector< T > >
 
struct  is_vector
 
struct  is_vector< typename duckdb::vector< T > >
 
class  IsNotNullFilter
 
class  IsNullFilter
 
class  Iterator
 
struct  IteratorEntry
 Keeps track of the byte leading to the currently active child of the node. More...
 
class  IteratorKey
 Keeps track of the current key in the iterator leading down to the top node in the stack. More...
 
struct  JoinCondition
 JoinCondition represents a left-right comparison join condition. More...
 
struct  JoinRelationSet
 Set of relations, used in the join graph. More...
 
class  JoinRelationSetManager
 
class  JoinSide
 
struct  JSONComponent
 
struct  JSONFormatter
 
struct  JSONHighlighter
 
struct  JSONParser
 
struct  KeyRowIdOutput
 Output policy for scanning keys and row IDs. More...
 
class  KeyValueSecret
 
class  KeyValueSecretReader
 
class  KeywordHelper
 
class  LambdaExpression
 
class  LambdaRefExpression
 Represents a reference to a lambda parameter. More...
 
struct  LambdaSyntaxSetting
 
struct  LateMaterializationMaxRowsSetting
 
class  LazyMultiFileList
 Lazily expanded MultiFileList. More...
 
struct  LcaseFun
 
class  Leaf
 
struct  LegacyFilenamePattern
 
struct  LenFun
 
struct  LengthFun
 
struct  LengthGraphemeFun
 
struct  LessThan
 
struct  LessThanEquals
 
struct  LikeEscapeFun
 
struct  LikeFun
 
class  LimitModifier
 
class  LimitPercentModifier
 
struct  list_entry_t
 
struct  ListArgFunctor
 
struct  ListCatFun
 
struct  ListConcatFun
 
struct  ListType
 
struct  ListTypeInfo
 
struct  ListValue
 
struct  ListVector
 
struct  LoadInfo
 
class  LocalFileSystem
 
struct  LocalFunctionData
 
struct  LocalGlobResult
 
class  LocalSinkState
 
class  LocalSourceState
 
class  LocalStorage
 The LocalStorage class holds appends that have not been committed yet. More...
 
struct  LocalTableFunctionState
 
class  LocalTableManager
 
class  LocalTableStorage
 
struct  LocalUserSettings
 
struct  LockConfigurationSetting
 
struct  LogConfig
 
class  Logger
 Main logging interface. More...
 
struct  LoggingContext
 
struct  LoggingLevel
 
struct  LoggingMode
 
struct  LoggingStorage
 
struct  LogicalDependency
 
struct  LogicalDependencyEquality
 
struct  LogicalDependencyHashFunction
 
class  LogicalDependencyList
 The LogicalDependencyList containing LogicalDependency objects, not looked up in the catalog yet. More...
 
class  LogicalGet
 LogicalGet represents a scan operation from a data source. More...
 
struct  LogicalIndex
 
struct  LogicalIndexHashFunction
 
class  LogicalOperator
 
class  LogicalOperatorMatcher
 The LogicalOperatorMatcher class contains a set of matchers that can be used to match LogicalOperators. More...
 
class  LogicalOperatorVisitor
 
class  LogicalProjection
 LogicalProjection represents the projection list in a SELECT clause. More...
 
struct  LogicalType
 
struct  LogicalTypeModifier
 
class  LogicalUpdate
 
class  LogManager
 
struct  LogQueryPathSetting
 
class  LogStorage
 
class  LogStorageScanState
 
class  LogType
 
struct  LowerFun
 
struct  MacroBindResult
 
class  MacroCatalogEntry
 A macro function in the catalog. More...
 
class  MacroFunction
 
class  MagicBytes
 
class  MainHeader
 
struct  MakeSigned
 
struct  MakeSigned< hugeint_t >
 
struct  MakeSigned< uhugeint_t >
 
struct  MakeUnsigned
 
struct  MakeUnsigned< hugeint_t >
 
struct  MakeUnsigned< uhugeint_t >
 
class  ManagedResultSet
 
class  ManagedVectorBuffer
 The ManagedVectorBuffer holds a buffer handle. More...
 
struct  MangledDependencyName
 
struct  MangledEntryName
 
class  ManyExpressionTypeMatcher
 The ManyExpressionTypeMatcher class matches a set of ExpressionTypes. More...
 
class  ManyFunctionMatcher
 The ManyFunctionMatcher class matches a set of functions. More...
 
struct  map_entry_encoding
 Encoding Map Entry Struct used for byte replacement. More...
 
struct  MapType
 
struct  MapUtil
 
struct  MapValue
 
struct  MapVector
 
struct  MaterializedCTEInfo
 
class  MaterializedQueryResult
 
struct  MaxExpressionDepthSetting
 
struct  MaxMemorySetting
 
struct  MaxTempDirectorySizeSetting
 
struct  MaxVacuumTasksSetting
 
class  MD5Context
 
struct  MD5Fun
 
struct  MD5NumberFun
 
struct  MemoryInformation
 
struct  MemorySafety
 
class  MemoryStream
 
struct  MergeJoinThresholdSetting
 
struct  MergeSortTraits
 
struct  MergeSortTraits< std::pair< T... > >
 
struct  MergeSortTraits< std::tuple< T... > >
 
struct  MergeSortTree
 
struct  MetaBlockPointer
 
struct  MetadataBlock
 
struct  MetadataBlockInfo
 
struct  MetadataHandle
 
class  MetadataManager
 
struct  MetadataPointer
 
class  MetadataWriter
 
class  MetaPipeline
 MetaPipeline represents a set of pipelines that all have the same sink. More...
 
class  MetaTransaction
 The MetaTransaction manages multiple transactions for different attached databases. More...
 
class  MetricsLogType
 
class  MetricsUtils
 
struct  MetricTypeHashFunction
 
struct  MiniZStream
 
struct  MiniZStreamWrapper
 
class  MissingExtensionException
 
struct  MultiFileBindData
 
struct  MultiFileColumnDefinition
 
class  MultiFileColumnMapper
 
struct  MultiFileConstantEntry
 
struct  MultiFileConstantMap
 
struct  MultiFileConstantMapIndex
 index used to access the constant map More...
 
struct  MultiFileCount
 
struct  MultiFileFilterEntry
 
struct  MultiFileFilterMap
 
struct  MultiFileGlobalIndex
 
struct  MultiFileGlobalState
 
class  MultiFileList
 
class  MultiFileListIterationHelper
 
struct  MultiFileListScanData
 
struct  MultiFileLocalColumnId
 
struct  MultiFileLocalColumnIds
 fwd declare More...
 
struct  MultiFileLocalIndex
 
struct  MultiFileLocalState
 
struct  MultiFileOptions
 
struct  MultiFilePushdownInfo
 
struct  MultiFileReader
 The MultiFileReader class provides a set of helper methods to handle scanning from multiple files. More...
 
struct  MultiFileReaderBindData
 The bind data for the multi-file reader, obtained through MultiFileReader::BindReader. More...
 
struct  MultiFileReaderData
 Per-file data for the multi file reader. More...
 
struct  MultiFileReaderGlobalState
 Global state for MultiFileReads. More...
 
struct  MultiplyOperator
 
struct  MultiplyOperatorOverflowCheck
 
class  MutableLogger
 
struct  NeighborInfo
 
struct  NestedLoopJoinThresholdSetting
 
struct  NextUnsigned
 
struct  NextUnsigned< uint16_t >
 
struct  NextUnsigned< uint32_t >
 
struct  NextUnsigned< uint64_t >
 
struct  NextUnsigned< uint8_t >
 
struct  NFCNormalizeFun
 
class  Node
 
class  Node16
 
class  Node256
 Node256 holds up to 256 children. They are indexed by their key byte. More...
 
class  Node4
 Node4 holds up to four children sorted by their key byte. More...
 
class  Node48
 
struct  NodeChildren
 
class  NodeHandle
 
class  NodeStatistics
 
class  NopLogger
 
struct  NotDistinctFrom
 
struct  NotEquals
 
struct  NotIlikeEscapeFun
 
struct  NotILikeFun
 
class  NotImplementedException
 
struct  NotLikeEscapeFun
 
struct  NotLikeFun
 
class  NotNullConstraint
 
struct  NumericCastImpl
 
struct  NumericCastImpl< TO, FROM, false >
 
struct  NumericCastImpl< TO, FROM, true >
 
class  NumericHelper
 NumericHelper is a static class that holds helper functions for integers/doubles. More...
 
struct  NumericLimits
 
struct  NumericLimits< hugeint_t >
 
struct  NumericLimits< uhugeint_t >
 
struct  NumericStats
 
struct  NumericStatsData
 
class  NumericTypeMatcher
 The NumericTypeMatcher class matches any numeric type (DECIMAL, INTEGER, etc...) More...
 
struct  NumericValueUnion
 
class  ObjectCache
 
class  ObjectCacheEntry
 ObjectCache is the base class for objects caches in DuckDB. More...
 
struct  OctetLengthFun
 
struct  OffsetPruningResult
 
struct  OldImplicitCastingSetting
 
class  OnConflictInfo
 
struct  OpenFileInfo
 
struct  OperatorFinalizeInput
 
struct  OperatorInformation
 
struct  OperatorPartitionData
 
struct  OperatorPartitionInfo
 
class  OperatorProfiler
 
struct  OperatorSinkCombineInput
 
struct  OperatorSinkFinalizeInput
 
struct  OperatorSinkInput
 
struct  OperatorSinkNextBatchInput
 
struct  OperatorSourceInput
 
class  OperatorState
 
class  OptimisticDataWriter
 
struct  OptimisticWriteCollection
 
class  Optimizer
 
class  optional_idx
 
class  optional_ptr
 
class  OptionalFilter
 
class  optionally_owned_ptr
 
class  OptionalSelection
 
struct  OrderByNode
 Single node in ORDER BY statement. More...
 
struct  OrderByNonIntegerLiteralSetting
 
struct  OrderedAggregateThresholdSetting
 
class  OrderModifier
 
class  OutOfMemoryException
 
class  OutOfRangeException
 
struct  ParallelCollectionScanState
 
struct  ParallelTableScanState
 
class  ParameterExpression
 
class  ParameterNotAllowedException
 
class  ParameterNotResolvedException
 
class  ParsedExpression
 
class  ParsedExpressionIterator
 
struct  ParsedExtensionMetaData
 The parsed extension metadata footer. More...
 
struct  ParseInfo
 
class  Parser
 
class  ParserException
 
class  ParserExtension
 
struct  ParserExtensionInfo
 
struct  ParserExtensionParseData
 
struct  ParserExtensionParseResult
 
struct  ParserExtensionPlanResult
 
struct  ParserKeyword
 
struct  ParserOptions
 
struct  ParserOverrideResult
 
struct  PartialBlock
 
struct  PartialBlockAllocation
 
struct  PartialBlockForIndex
 
class  PartialBlockManager
 
struct  PartialBlockState
 The current state of a partial block. More...
 
struct  PartitionColumnDataAllocators
 Shared allocators for parallel partitioning. More...
 
class  PartitionedColumnData
 
struct  PartitionedColumnDataAppendState
 Local state for parallel partitioning. More...
 
class  PartitionedTupleData
 
struct  PartitionedTupleDataAppendState
 Local state for parallel partitioning. More...
 
struct  PartitionedWriteFlushThresholdSetting
 
struct  PartitionedWriteMaxOpenFilesSetting
 
struct  PartitioningColumnValue
 
struct  PartitionRowGroup
 
struct  PartitionStatistics
 
struct  PasswordSetting
 
class  Path
 
struct  PathSplit
 
struct  PendingQueryParameters
 
class  PendingQueryResult
 
struct  PendingStatementWrapper
 
struct  PerfectEquality
 
struct  PerfectHash
 
struct  PerfectHtThresholdSetting
 
class  PermissionException
 
struct  PersistentCollectionData
 
struct  PersistentColumnData
 
struct  PersistentRowGroupData
 
class  PersistentTableData
 
class  PhysicalArrowBatchCollector
 
class  PhysicalArrowCollector
 
class  PhysicalBatchCollector
 
struct  PhysicalIndex
 
struct  PhysicalIndexHashFunction
 
class  PhysicalOperator
 PhysicalOperator is the base class of the physical operators present in the execution plan. More...
 
class  PhysicalOperatorLogType
 
class  PhysicalPlan
 
class  PhysicalPlanGenerator
 The physical plan generator generates a physical execution plan from a logical query plan. More...
 
class  PhysicalResultCollector
 PhysicalResultCollector is an abstract class that is used to generate the final result of a query. More...
 
struct  PinThreadsSetting
 
class  Pipeline
 The Pipeline class represents an execution pipeline starting at a. More...
 
class  PipelineBuildState
 
class  PipelineTask
 
struct  PivotFilterThresholdSetting
 
struct  PivotLimitSetting
 
struct  PlanIndexInput
 
struct  PositionFunctor
 
class  PostIncrement
 Used to increment counters that need to be exception-proof. More...
 
struct  PostRequestInfo
 
class  PragmaFunction
 
class  PragmaFunctionCatalogEntry
 A pragma function in the catalog. More...
 
class  PragmaFunctionSet
 
struct  PragmaInfo
 
struct  PreferRangeJoinsSetting
 
struct  PrefetchState
 
class  Prefix
 
struct  PrefixFun
 
struct  PreparedBatchData
 
class  PreparedStatement
 A prepared statement. More...
 
struct  PreparedStatementCallbackInfo
 
class  PreparedStatementData
 
struct  PreparedStatementWrapper
 
struct  PreserveIdentifierCaseSetting
 
struct  PreserveInsertionOrderSetting
 
class  Printer
 Printer is a static class that allows printing to logs or stdout/stderr. More...
 
struct  PrivateAllocatorData
 
struct  ProduceArrowStringViewSetting
 
struct  ProducerToken
 
struct  ProfileOutputSetting
 
struct  ProfilingCoverageSetting
 
class  ProfilingInfo
 
struct  ProfilingModeSetting
 
class  ProfilingNode
 Recursive tree mirroring the operator tree. More...
 
class  ProfilingUtils
 
class  ProgressBar
 
class  ProgressBarDisplay
 
struct  ProgressBarTimeSetting
 
struct  ProgressData
 
struct  PushedDownExpressionState
 
struct  PutRequestInfo
 
struct  QualifiedColumnEquality
 
struct  QualifiedColumnHashFunction
 
struct  QualifiedColumnName
 
struct  QualifiedName
 
class  QueryAppender
 
struct  QueryBinderState
 
class  QueryContext
 
class  QueryErrorContext
 
class  QueryGraphEdges
 The QueryGraph contains edges between relations and allows edges to be created/queried. More...
 
class  QueryLogType
 
struct  QueryMetrics
 
class  QueryNode
 
struct  QueryParameters
 
class  QueryProfiler
 QueryProfiler collects the profiling metrics of a query. More...
 
struct  QueryProgress
 
class  QueryResult
 
class  QueryResultChunkScanState
 
class  queue
 
struct  Radix
 
class  RandomEngine
 
class  ReadStream
 
struct  RecursiveUnifiedVectorFormat
 
class  ReferencedColumn
 
struct  ReferencedExtractComponent
 
struct  ReferencedStructExtract
 
struct  ReferenceEquality
 
struct  ReferenceHashFunction
 
struct  RegexpEscapeFun
 
struct  RegexpExtractAllFun
 
struct  RegexpExtractFun
 
struct  RegexpFun
 
struct  RegexpMatchesFun
 
struct  RegexpReplaceFun
 
struct  RegexpSplitToArrayFun
 
struct  RegisteredLoggingContext
 
class  RegisteredStateManager
 
class  Relation
 
class  RelationContextWrapper
 
class  RelationManager
 
struct  RelationsSetToStats
 
class  RelationStatisticsHelper
 
struct  RelationStats
 
struct  RemapStructFun
 
struct  RemoveColumnInfo
 
struct  RemoveFieldInfo
 
class  RemoveUnusedColumns
 The RemoveUnusedColumns optimizer traverses the logical operator tree and removes any columns that are not required. More...
 
struct  RenameColumnInfo
 
struct  RenameDatabaseInfo
 
struct  RenameFieldInfo
 
struct  RenameTableInfo
 
struct  RenameViewInfo
 
struct  RenderDataCollection
 
struct  ReplacementBinding
 
struct  ReplacementScan
 
struct  ReplacementScanData
 
struct  ReplacementScanInput
 
struct  ReplayRange
 
class  ReservoirChunk
 
class  ReservoirRNG
 
class  ReservoirSample
 
class  ReservoirSamplePercentage
 The reservoir sample sample_size class maintains a streaming sample of variable size. More...
 
struct  ResetTableOptionsInfo
 
struct  ResizeInfo
 This is a helper data structure. It contains all fields necessary to resize a vector. More...
 
class  ResultArrowArrayStreamWrapper
 
class  ResultModifier
 A ResultModifier. More...
 
class  ResultSetManager
 
struct  RowFun
 
class  RowGroup
 
class  RowGroupCollection
 
class  RowGroupIterationHelper
 
struct  RowGroupOrderOptions
 
struct  RowGroupPointer
 
class  RowGroupReorderer
 
class  RowGroupSegmentTree
 
struct  RowGroupWriteData
 
struct  RowGroupWriteInfo
 
struct  RowIdSetOutput
 Output policy for scanning row IDs only into a set. More...
 
class  Rule
 
class  SampleOptions
 
class  ScalarFunction
 
struct  ScalarFunctionBindInput
 
class  ScalarFunctionCatalogEntry
 A scalar function in the catalog. More...
 
struct  ScalarFunctionInfo
 
class  ScalarFunctionSet
 
class  ScalarMacroCatalogEntry
 A macro function in the catalog. More...
 
class  ScalarMacroFunction
 
struct  ScalarSubqueryErrorOnMultipleRowsSetting
 
struct  ScanFilter
 
class  ScanFilterInfo
 
struct  ScanOptions
 
struct  ScanSamplingInfo
 
struct  SchedulerProcessPartialSetting
 
class  SchemaCatalogEntry
 A schema in the catalog. More...
 
struct  SchemaSetting
 
struct  ScopedConfigSetting
 
struct  SearchPathSetting
 
struct  SecretDirectorySetting
 
struct  SecretType
 Secret types contain the base settings of a secret. More...
 
class  SegmentBase
 
class  SegmentHandle
 
struct  SegmentLock
 
struct  SegmentNode
 
struct  SegmentScanState
 
class  SegmentStatistics
 
class  SegmentTree
 
struct  SelCache
 Selection vector cache used for caching vector slices. More...
 
struct  SelectionData
 
struct  SelectionVector
 
struct  SelectionVectorHelper
 
class  SelectivityOptionalFilter
 
struct  SelectivityOptionalFilterState
 
class  SelectStatement
 SelectStatement is a typical SELECT clause. More...
 
class  SequenceCatalogEntry
 A sequence catalog entry. More...
 
struct  SequenceData
 
class  SequenceException
 
struct  SequenceValue
 
struct  SequenceVector
 
class  SerializationCompatibility
 
struct  SerializationData
 
struct  SerializationDefaultValue
 
class  SerializationException
 
class  SerializationOptions
 
struct  SerializedStringSegmentState
 
class  Serializer
 
struct  SetColumnCommentInfo
 
struct  SetColumns
 
struct  SetCommentInfo
 
struct  SetDefaultInfo
 
class  SetMatcher
 
struct  SetNotNullInfo
 
struct  SetPartitionedByInfo
 
struct  SetSortedByInfo
 
struct  SetTableOptionsInfo
 
struct  SettingCallbackInfo
 
struct  SettingLookupResult
 
struct  Settings
 
class  SetTypesMatcher
 The SpecificTypeMatcher class matches only a type out of a set of types. More...
 
struct  SHA1Fun
 
struct  SHA256Fun
 
class  shared_ptr
 
class  SharedLruCache
 
class  ShowRef
 Represents a SHOW/DESCRIBE/SUMMARIZE statement. More...
 
struct  SimilarCatalogEntry
 Return value of SimilarEntryInSchemas. More...
 
class  SimpleBufferedData
 
class  SimpleFunction
 
class  SimpleMultiFileList
 
class  SimpleNamedParameterFunction
 
struct  SimplifiedToken
 
class  SingleFileStorageManager
 Stores the database in a single file. More...
 
struct  SingleJoinRelation
 Represents a single relation and any metadata accompanying that relation. More...
 
struct  SmallIntValue
 
class  Sort
 Class that sorts the data, follows the PhysicalOperator interface. More...
 
struct  sort_key_ptr_t
 Forces a pointer size of 8 bytes (even on 32-bit) More...
 
struct  SortKey
 
struct  SortKey< SortKeyType::NO_PAYLOAD_FIXED_16 >
 
struct  SortKey< SortKeyType::NO_PAYLOAD_FIXED_24 >
 
struct  SortKey< SortKeyType::NO_PAYLOAD_FIXED_32 >
 
struct  SortKey< SortKeyType::NO_PAYLOAD_FIXED_8 >
 
struct  SortKey< SortKeyType::NO_PAYLOAD_VARIABLE_32 >
 
struct  SortKey< SortKeyType::PAYLOAD_FIXED_16 >
 
struct  SortKey< SortKeyType::PAYLOAD_FIXED_24 >
 
struct  SortKey< SortKeyType::PAYLOAD_FIXED_32 >
 
struct  SortKey< SortKeyType::PAYLOAD_VARIABLE_32 >
 
struct  SortKeyNoPayload
 
struct  SortKeyPayload
 
struct  SortKeyPayloadState
 
struct  SortKeyUtils
 
struct  SortProjectionColumn
 
struct  SourcePartitionInfo
 
class  SpecificExpressionTypeMatcher
 The SpecificExpressionTypeMatcher class matches a single specified Expression type. More...
 
class  SpecificFunctionMatcher
 The SpecificFunctionMatcher class matches a single specified function name. More...
 
class  SpecificLogicalTypeMatcher
 The SpecificLogicalTypeMatcher class matches only a single specified LogicalOperatorType. More...
 
class  SpecificTypeMatcher
 The SpecificTypeMatcher class matches only a single specified type. More...
 
struct  SplitFun
 
class  SQLIdentifier
 
class  SQLStatement
 SQLStatement is the base class of any type of SQL statement. More...
 
class  SQLString
 
class  StableExpressionMatcher
 The stable expression matcher matches only stable expressions (non-volatile) More...
 
class  StackChecker
 
class  StackTrace
 
class  StandardEntry
 A StandardEntry is a catalog entry that is a member of a schema. More...
 
class  StarExpression
 Represents a * expression in the SELECT clause. More...
 
struct  StatementProperties
 A struct containing various properties of a SQL statement. More...
 
class  StatementVerifier
 
class  StateWithBlockableTasks
 
struct  StaticFunctionDefinition
 
class  StatisticsPropagator
 
class  StdOutLogStorage
 
struct  Storage
 
struct  StorageBlockPrefetchSetting
 
class  StorageCommitState
 
struct  StorageCompatibilityVersionSetting
 
struct  StorageIndex
 
class  StorageLock
 
class  StorageLockKey
 
class  StorageManager
 StorageManager is responsible for managing the physical storage of a persistent database. More...
 
struct  StorageOptions
 
struct  StoredDatabasePath
 
struct  StreamData
 
struct  StreamingBufferSizeSetting
 
class  StreamQueryResult
 
struct  StreamWrapper
 
struct  StrfTimeFormat
 
class  String
 
struct  string_t
 
struct  StringCastFromDecimal
 
struct  StringCIEquality
 
struct  StringCIHash
 
struct  StringDictionaryContainer
 
struct  StringEquality
 
struct  StringHash
 
class  StringHeap
 
class  StringResultRenderer
 
struct  StringScanState
 
struct  StringSplitFun
 
struct  StringSplitRegexFun
 
struct  StringStats
 
struct  StringStatsData
 
struct  StringToArrayFun
 
struct  StringType
 
struct  StringTypeInfo
 
struct  StringUncompressed
 
class  StringUtil
 
struct  StringValue
 
struct  StringVector
 
struct  StripAccentsFun
 
struct  StrlenFun
 
struct  StrpTimeFormat
 
struct  StrSplitFun
 
struct  StrSplitRegexFun
 
struct  StrTimeFormat
 
struct  StructConcatFun
 
struct  StructContainsFun
 
struct  StructExtractAtFun
 
struct  StructExtractFun
 
class  StructFilter
 
struct  StructHasFun
 
struct  StructIndexofFun
 
struct  StructMappingInfo
 
struct  StructPackFun
 
struct  StructPositionFun
 
struct  StructType
 
struct  StructTypeInfo
 
struct  StructValue
 
struct  StructVector
 
struct  Subgraph2Denominator
 
struct  SubstrFun
 
struct  SubstringFun
 
struct  SubstringGraphemeFun
 
struct  SubtractOperator
 
struct  SubtractOperatorOverflowCheck
 
struct  SubtractTimeOperator
 
struct  SuffixFun
 
class  SyntaxException
 
struct  TableBinding
 
class  TableCatalogEntry
 A table catalog entry. More...
 
struct  TableColumn
 
class  TableDescription
 
struct  TableDescriptionWrapper
 
class  TableFilter
 TableFilter represents a filter pushed down into the table scan. More...
 
class  TableFilterSet
 
struct  TableFilterState
 Thread-local state for executing a table filter. More...
 
class  TableFunction
 
struct  TableFunctionBindInput
 
class  TableFunctionCatalogEntry
 A table function in the catalog. More...
 
struct  TableFunctionData
 
struct  TableFunctionDynamicToStringInput
 
struct  TableFunctionGetPartitionInput
 
struct  TableFunctionGetStatisticsInput
 
struct  TableFunctionInfo
 
struct  TableFunctionInitInput
 
struct  TableFunctionInput
 
struct  TableFunctionPartitionInput
 
class  TableFunctionSet
 
struct  TableFunctionToStringInput
 
class  TableIndexIterationHelper
 
class  TableIndexList
 
class  TableIOManager
 
class  TableMacroCatalogEntry
 A macro function in the catalog. More...
 
class  TableMacroFunction
 
class  TableRef
 Represents a generic expression that returns a table. More...
 
struct  TableScanBindData
 
struct  TableScanFunction
 The table scan function represents a sequential or index scan over one of DuckDB's base tables. More...
 
struct  TableScanOptions
 
class  TableScanState
 
class  TableStatistics
 
class  TableStatisticsLock
 
class  TableStorageInfo
 Table storage information. More...
 
class  Task
 Generic parallel task. More...
 
class  TaskErrorManager
 
class  TaskScheduler
 The TaskScheduler is responsible for managing tasks and threads. More...
 
struct  TempBufferPoolReservation
 
struct  TempDirectorySetting
 
struct  TempFileEncryptionSetting
 
struct  TemplatedMapGetter
 A helper functor so we can template functions to use either a perfect map or a fixed size map. More...
 
struct  TemplatedUniqueIf
 
struct  TemplatedUniqueIf< DATA_TYPE[N]>
 
struct  TemplatedValidityData
 
struct  TemplatedValidityMask
 Type used for validity masks. More...
 
struct  TemplateType
 
struct  TemplateTypeInfo
 
class  TemporaryDirectoryHandle
 
class  TemporaryFileCompressionAdaptivity
 
class  TemporaryFileHandle
 
struct  TemporaryFileIdentifier
 
struct  TemporaryFileIndex
 
struct  TemporaryFileInformation
 
class  TemporaryFileManager
 
class  TemporaryFileMap
 
struct  TernaryExecutor
 
struct  TernaryLambdaWrapper
 
struct  TernaryLambdaWrapperWithNulls
 
struct  TernaryStandardOperatorWrapper
 
class  ThreadContext
 The ThreadContext holds thread-local info for parallel usage. More...
 
class  ThreadLocalLogger
 
class  ThreadSafeLogger
 
struct  ThreadsSetting
 
struct  ThreadUtil
 
class  Time
 
class  Timestamp
 The static Timestamp class holds helper functions for the timestamp types. More...
 
struct  timestamp_ms_t
 Type used to represent TIMESTAMP_MS. timestamp_ms_t holds the milliseconds since 1970-01-01. More...
 
struct  timestamp_ns_t
 Type used to represent TIMESTAMP_NS. timestamp_ns_t holds the nanoseconds since 1970-01-01. More...
 
struct  timestamp_sec_t
 Type used to represent TIMESTAMP_S. timestamp_sec_t holds the seconds since 1970-01-01. More...
 
struct  timestamp_t
 Type used to represent a TIMESTAMP. timestamp_t holds the microseconds since 1970-01-01. More...
 
struct  timestamp_tz_t
 
struct  TimestampComponents
 
struct  TimestampMSValue
 
struct  TimestampNSValue
 
struct  TimestampSValue
 
struct  TimestampTZValue
 
struct  TimestampValue
 
struct  TimeToStringCast
 
struct  TimeValue
 
struct  TinyIntValue
 
struct  ToStringOptions
 Options for ToString printing functions. More...
 
class  Transaction
 
class  TransactionContext
 
struct  TransactionData
 
class  TransactionException
 
struct  TransactionInfo
 
class  TransactionLogType
 
class  TransactionManager
 
struct  TransactionReference
 
class  TransformToDeprecatedState
 State for TransformToDeprecated operations. More...
 
struct  TryAddOperator
 
struct  TryCast
 
struct  TryCastBlobToUUID
 
struct  TryCastErrorMessage
 
struct  TryCastErrorMessageCommaSeparated
 
struct  TryCastFromDecimal
 
struct  TryCastToBignum
 
struct  TryCastToBit
 
struct  TryCastToBlob
 
struct  TryCastToDecimal
 
struct  TryCastToDecimalCommaSeparated
 
struct  TryCastToGeometry
 
struct  TryCastToTimeNS
 
struct  TryCastToTimestampMS
 
struct  TryCastToTimestampNS
 
struct  TryCastToTimestampSec
 
struct  TryCastToUUID
 
struct  TryDecimalAdd
 
struct  TryDecimalMultiply
 
struct  TryDecimalSubtract
 
struct  TryMultiplyOperator
 
struct  TrySubtractOperator
 
class  TupleDataAllocator
 
struct  TupleDataAppendState
 
struct  TupleDataBlock
 
struct  TupleDataChunk
 
struct  TupleDataChunkPart
 
struct  TupleDataChunkState
 
class  TupleDataCollection
 
struct  TupleDataGatherFunction
 
class  TupleDataLayout
 
struct  TupleDataParallelScanState
 
struct  TupleDataPinState
 
struct  TupleDataScanState
 
struct  TupleDataScatterFunction
 
struct  TupleDataSegment
 
struct  TupleDataVectorFormat
 
class  TypeArgument
 
class  TypeCatalogEntry
 A type catalog entry. More...
 
class  TypeExpression
 
struct  TypeInfo
 
class  TypeManager
 
class  TypeMatcher
 The TypeMatcher class contains a set of matchers that can be used to pattern match TypeIds for Rules. More...
 
class  TypeMismatchException
 
struct  TypeValue
 
struct  TypeVisitor
 
struct  UBigIntValue
 
struct  UcaseFun
 
struct  UDFWrapper
 
class  Uhugeint
 The uhugeint class contains static operations for the UINT128 type. More...
 
struct  uhugeint_t
 
struct  UhugeintToStringCast
 
struct  UhugeIntValue
 
struct  UIntegerValue
 
struct  UnaryExecutor
 
struct  UnaryLambdaWrapper
 
struct  UnaryLambdaWrapperWithNulls
 
struct  UnaryOperatorWrapper
 
struct  UnaryStringOperator
 
class  UnboundIndex
 
struct  UnboundType
 
struct  UnboundTypeInfo
 
struct  UncompressedFunctions
 
struct  UncompressedStringStorage
 
class  UndoBuffer
 
struct  UndoBufferAllocator
 
struct  UndoBufferEntry
 
struct  UndoBufferPointer
 
struct  UndoBufferProperties
 
struct  UndoBufferReference
 
struct  UnifiedVariantVector
 
struct  UnifiedVariantVectorData
 
struct  UnifiedVectorFormat
 
struct  UninitializedRegion
 Regions that require zero-initialization to avoid leaking memory. More...
 
struct  UnionType
 
struct  UnionValue
 
struct  UnionVector
 
class  unique_ptr
 
class  unique_ptr< DATA_TYPE[], DELETER, SAFE >
 
class  unique_ptr< DATA_TYPE[], DELETER, true >
 
class  UniqueConstraint
 
struct  UnixFileHandle
 
class  UpdateSetInfo
 
class  UpdateStatement
 
struct  UpperFun
 
struct  UsernameSetting
 
struct  UserSettingsMap
 
struct  UsingColumnSet
 
struct  USmallIntValue
 
class  Utf8Proc
 
struct  UTinyIntValue
 
class  UUID
 The UUIDv4 class contains static operations for the UUIDv4 type. More...
 
class  UUIDv7
 The UUIDv7 class contains static operations for the UUIDv7 type. More...
 
struct  VacuumRebuildIndexesSetting
 
struct  ValidateExternalFileCacheSetting
 
class  ValidChecker
 
struct  ValidityArray
 
struct  ValidityData
 
struct  ValidityMask
 
struct  ValidityUncompressed
 
class  Value
 
struct  ValueOperations
 
struct  VariableReturnBindData
 
struct  VariableSortKey
 
struct  Variant
 
struct  VariantCasts
 
struct  VariantDecimalData
 
struct  VariantMinimumShreddingSizeSetting
 
struct  VariantNestedData
 
struct  VariantPathComponent
 
class  VariantPersistentColumnData
 
struct  VariantShreddedStats
 
struct  VariantStats
 
struct  VariantStatsData
 
struct  VariantValue
 
struct  VariantVector
 
struct  VariantVectorData
 
class  vector
 
class  Vector
 Vector of values of a specified PhysicalType. More...
 
class  VectorArrayBuffer
 
struct  VectorAuxiliaryData
 
class  VectorBuffer
 The VectorBuffer is a class used by the vector to hold its data. More...
 
class  VectorCache
 
class  VectorChildBuffer
 The VectorChildBuffer holds a child Vector. More...
 
class  VectorFSSTStringBuffer
 
class  VectorListBuffer
 
struct  VectorOperations
 
class  VectorStringBuffer
 
class  VectorStructBuffer
 
struct  VersioningUtils
 
struct  VertexXY
 
struct  VertexXYM
 
struct  VertexXYZ
 
struct  VertexXYZM
 
class  ViewCatalogEntry
 A view catalog entry. More...
 
struct  ViewColumnInfo
 
struct  WalAutocheckpointEntriesSetting
 
struct  WarningsAsErrorsSetting
 
class  weak_ptr
 
class  WindowExpression
 
struct  WindowFunctionDefinition
 
class  WindowMergeSortTree
 
class  WindowMergeSortTreeLocalState
 
struct  WindowPartitionInput
 
class  WriteAheadLog
 
struct  WriteBufferRowGroupCountSetting
 
class  WriteStream
 
struct  ZstdMinStringLengthSetting
 

Typedefs

using qualified_column_set_t = unordered_set< QualifiedColumnName, QualifiedColumnHashFunction, QualifiedColumnEquality >
 
template<class T >
using qualified_column_map_t = unordered_map< QualifiedColumnName, T, QualifiedColumnHashFunction, QualifiedColumnEquality >
 
using catalog_entry_callback_t = std::function< void(CatalogEntry &)>
 
template<typename T >
using logical_index_map_t = unordered_map< LogicalIndex, T, LogicalIndexHashFunction >
 
using logical_index_set_t = unordered_set< LogicalIndex, LogicalIndexHashFunction >
 
template<typename T >
using physical_index_map_t = unordered_map< PhysicalIndex, T, PhysicalIndexHashFunction >
 
using physical_index_set_t = unordered_set< PhysicalIndex, PhysicalIndexHashFunction >
 
using thread_id = std::thread::id
 
typedef ParserExtensionParseResult(* parse_function_t) (ParserExtensionInfo *info, const string &query)
 
typedef ParserExtensionPlanResult(* plan_function_t) (ParserExtensionInfo *info, ClientContext &context, unique_ptr< ParserExtensionParseData > parse_data)
 
typedef ParserOverrideResult(* parser_override_function_t) (ParserExtensionInfo *info, const string &query, ParserOptions &options)
 
typedef ScalarFunction(* get_scalar_function_t) ()
 
typedef ScalarFunctionSet(* get_scalar_function_set_t) ()
 
typedef AggregateFunction(* get_aggregate_function_t) ()
 
typedef AggregateFunctionSet(* get_aggregate_function_set_t) ()
 
typedef unique_ptr< ArrowArrayStreamWrapper >(* stream_factory_produce_t) (uintptr_t stream_factory_ptr, ArrowStreamParameters &parameters)
 
typedef void(* stream_factory_get_schema_t) (ArrowArrayStream *stream_factory_ptr, ArrowSchema &schema)
 
using bitstring_t = duckdb::string_t
 
typedef void(* initialize_t) (ArrowAppendData &result, const LogicalType &type, idx_t capacity)
 
typedef void(* append_vector_t) (ArrowAppendData &append_data, Vector &input, idx_t from, idx_t to, idx_t input_size)
 
typedef void(* finalize_t) (ArrowAppendData &append_data, const LogicalType &type, ArrowArray *result)
 
using batch_map_t = map< idx_t, unique_ptr< ColumnDataCollection > >
 
using batch_iterator_t = typename batch_map_t::iterator
 
using digit_t = uint32_t
 
using twodigit_t = uint64_t
 
using CipherType = EncryptionTypes::CipherType
 
using Version = EncryptionTypes::EncryptionVersion
 
template<class T >
using arena_vector = vector< T, true, arena_stl_allocator< T > >
 
template<class T >
using unsafe_arena_vector = vector< T, false, arena_stl_allocator< T > >
 
using TupleDataLocalScanState = TupleDataScanState
 
typedef void(* tuple_data_scatter_function_t) (const Vector &source, const TupleDataVectorFormat &source_format, const SelectionVector &append_sel, const idx_t append_count, const TupleDataLayout &layout, const Vector &row_locations, Vector &heap_locations, const idx_t col_idx, const UnifiedVectorFormat &list_format, const vector< TupleDataScatterFunction > &child_functions)
 
typedef void(* tuple_data_gather_function_t) (const TupleDataLayout &layout, Vector &row_locations, const idx_t col_idx, const SelectionVector &scan_sel, const idx_t scan_count, Vector &target, const SelectionVector &target_sel, optional_ptr< Vector > list_vector, const vector< TupleDataGatherFunction > &child_functions)
 
using InMemoryBlockIteratorState = BlockIteratorState< BlockIteratorStateType::IN_MEMORY >
 
using ExternalBlockIteratorState = BlockIteratorState< BlockIteratorStateType::EXTERNAL >
 
template<class T >
using column_index_map = unordered_map< ColumnIndex, T, ColumnIndexHashFunction, ColumnIndexEquality >
 
using column_index_set = unordered_set< ColumnIndex, ColumnIndexHashFunction, ColumnIndexEquality >
 
template<typename T >
using string_map_t = unordered_map< string_t, T, StringHash, StringEquality >
 
using string_set_t = unordered_set< string_t, StringHash, StringEquality >
 
template<typename T >
using case_insensitive_string_map_t = unordered_map< string_t, T, StringCIHash, StringCIEquality >
 
using case_insensitive_string_set_t = unordered_set< string_t, StringCIHash, StringCIEquality >
 
typedef unordered_map< block_id_t, BufferHandlebuffer_handle_set_t
 
typedef basic_stringstream< charstringstream
 
typedef uint64_t idx_t
 a saner size_t for loop indices etc
 
typedef int64_t row_t
 The type used for row identifiers.
 
typedef uint64_t hash_t
 The type used for hashes.
 
typedef uint8_t data_t
 data pointers
 
typedef data_tdata_ptr_t
 
typedef const data_tconst_data_ptr_t
 
typedef uint32_t sel_t
 Type used for the selection vector.
 
typedef idx_t transaction_t
 Type used for transaction timestamps.
 
typedef idx_t connection_t
 Type used to identify connections.
 
typedef idx_t column_t
 Type used for column identifiers.
 
typedef idx_t storage_t
 Type used for storage (column) identifiers.
 
template<typename T >
using unique_array = unique_ptr< T[], std::default_delete< T[]>, true >
 
template<typename T >
using unsafe_unique_array = unique_ptr< T[], std::default_delete< T[]>, false >
 
template<typename T >
using unsafe_unique_ptr = unique_ptr< T, std::default_delete< T >, false >
 
template<typename T >
using unsafe_shared_ptr = shared_ptr< T, false >
 
template<typename T >
using unsafe_weak_ptr = weak_ptr< T, false >
 
template<typename T >
using reference = std::reference_wrapper< T >
 
template<typename T >
using const_reference = std::reference_wrapper< const T >
 
template<typename T >
using unsafe_vector = vector< T, false >
 
template<typename T >
using unsafe_optional_ptr = optional_ptr< T, false >
 
template<class T >
using child_list_t = vector< std::pair< std::string, T > >
 
template<class T >
using buffer_ptr = shared_ptr< T >
 FIXME: this should be a single_thread_ptr.
 
using union_tag_t = uint8_t
 
template<typename T >
using case_insensitive_map_t = unordered_map< string, T, CaseInsensitiveStringHashFunction, CaseInsensitiveStringEquality >
 
using case_insensitive_set_t = unordered_set< string, CaseInsensitiveStringHashFunction, CaseInsensitiveStringEquality >
 
template<typename T >
using case_insensitive_tree_t = map< string, T, CaseInsensitiveStringCompare >
 
template<typename T , typename TGT >
using reference_map_t = unordered_map< reference< T >, TGT, ReferenceHashFunction< T >, ReferenceEquality< T > >
 
template<typename T >
using reference_set_t = unordered_set< reference< T >, ReferenceHashFunction< T >, ReferenceEquality< T > >
 
typedef data_ptr_t(* allocate_function_ptr_t) (PrivateAllocatorData *private_data, idx_t size)
 
typedef void(* free_function_ptr_t) (PrivateAllocatorData *private_data, data_ptr_t pointer, idx_t size)
 
typedef data_ptr_t(* reallocate_function_ptr_t) (PrivateAllocatorData *private_data, data_ptr_t pointer, idx_t old_size, idx_t size)
 
using validity_t = uint64_t
 
template<class T >
using arena_ptr = unique_ptr< T, arena_deleter< T > >
 
template<class T >
using unsafe_arena_ptr = unique_ptr< T, arena_deleter< T >, false >
 
using block_id_t = int64_t
 
using named_parameter_type_map_t = case_insensitive_map_t< LogicalType >
 
using named_parameter_map_t = case_insensitive_map_t< Value >
 
using dependency_scan_t = std::function< void(const string &name, shared_ptr< DependencyItem > item)>
 
template<typename T >
using unsafe_array_ptr = array_ptr< T, false >
 
typedef std::function< void(DataChunk &, ExpressionState &, Vector &)> scalar_function_t
 The scalar function type.
 
typedef unique_ptr< FunctionData >(* bind_scalar_function_t) (ClientContext &context, ScalarFunction &bound_function, vector< unique_ptr< Expression > > &arguments)
 The type to bind the scalar function and to create the function data.
 
typedef unique_ptr< FunctionData >(* bind_scalar_function_extended_t) (ScalarFunctionBindInput &bind_input, ScalarFunction &bound_function, vector< unique_ptr< Expression > > &arguments)
 
typedef unique_ptr< FunctionLocalState >(* init_local_state_t) (ExpressionState &state, const BoundFunctionExpression &expr, FunctionData *bind_data)
 The type to initialize a thread local state for the scalar function.
 
typedef unique_ptr< BaseStatistics >(* function_statistics_t) (ClientContext &context, FunctionStatisticsInput &input)
 The type to propagate statistics for this scalar function.
 
typedef LogicalType(* bind_lambda_function_t) (ClientContext &context, const vector< LogicalType > &function_child_types, idx_t parameter_idx)
 The type to bind lambda-specific parameter types.
 
typedef void(* get_modified_databases_t) (ClientContext &context, FunctionModifiedDatabasesInput &input)
 The type to bind lambda-specific parameter types.
 
typedef void(* function_serialize_t) (Serializer &serializer, const optional_ptr< FunctionData > bind_data, const ScalarFunction &function)
 
typedef unique_ptr< FunctionData >(* function_deserialize_t) (Deserializer &deserializer, ScalarFunction &function)
 
typedef unique_ptr< Expression >(* function_bind_expression_t) (FunctionBindExpressionInput &input)
 The type to bind lambda-specific parameter types.
 
using SubFrames = vector< FrameBounds >
 
using GroupingSet = set< idx_t >
 
using FrameStats = array< FrameDelta, 2 >
 The half-open ranges of frame boundary values relative to the current row.
 
typedef idx_t(* aggregate_size_t) (const AggregateFunction &function)
 The type used for sizing hashed aggregate function states.
 
typedef void(* aggregate_initialize_t) (const AggregateFunction &function, data_ptr_t state)
 The type used for initializing hashed aggregate function states.
 
typedef void(* aggregate_update_t) (Vector inputs[], AggregateInputData &aggr_input_data, idx_t input_count, Vector &state, idx_t count)
 The type used for updating hashed aggregate functions.
 
typedef void(* aggregate_combine_t) (Vector &state, Vector &combined, AggregateInputData &aggr_input_data, idx_t count)
 The type used for combining hashed aggregate states.
 
typedef void(* aggregate_finalize_t) (Vector &state, AggregateInputData &aggr_input_data, Vector &result, idx_t count, idx_t offset)
 The type used for finalizing hashed aggregate function payloads.
 
typedef unique_ptr< BaseStatistics >(* aggregate_statistics_t) (ClientContext &context, BoundAggregateExpression &expr, AggregateStatisticsInput &input)
 The type used for propagating statistics in aggregate functions (optional)
 
typedef unique_ptr< FunctionData >(* bind_aggregate_function_t) (ClientContext &context, AggregateFunction &function, vector< unique_ptr< Expression > > &arguments)
 Binds the scalar function and creates the function data.
 
typedef void(* aggregate_destructor_t) (Vector &state, AggregateInputData &aggr_input_data, idx_t count)
 The type used for the aggregate destructor method. NOTE: this method is used in destructors and MAY NOT throw.
 
typedef void(* aggregate_simple_update_t) (Vector inputs[], AggregateInputData &aggr_input_data, idx_t input_count, data_ptr_t state, idx_t count)
 The type used for updating simple (non-grouped) aggregate functions.
 
typedef void(* aggregate_window_t) (AggregateInputData &aggr_input_data, const WindowPartitionInput &partition, const_data_ptr_t g_state, data_ptr_t l_state, const SubFrames &subframes, Vector &result, idx_t rid)
 The type used for computing complex/custom windowed aggregate functions (optional)
 
typedef void(* aggregate_wininit_t) (AggregateInputData &aggr_input_data, const WindowPartitionInput &partition, data_ptr_t g_state)
 The type used for initializing shared complex/custom windowed aggregate state (optional)
 
typedef void(* aggregate_serialize_t) (Serializer &serializer, const optional_ptr< FunctionData > bind_data, const AggregateFunction &function)
 
typedef unique_ptr< FunctionData >(* aggregate_deserialize_t) (Deserializer &deserializer, AggregateFunction &function)
 
template<typename T >
using column_binding_map_t = unordered_map< ColumnBinding, T, ColumnBindingHashFunction, ColumnBindingEquality >
 
using column_binding_set_t = unordered_set< ColumnBinding, ColumnBindingHashFunction, ColumnBindingEquality >
 
template<typename T >
using expression_map_t = unordered_map< reference< Expression >, T, ExpressionHashFunction< Expression >, ExpressionEquality< Expression > >
 
using expression_set_t = unordered_set< reference< Expression >, ExpressionHashFunction< Expression >, ExpressionEquality< Expression > >
 
template<typename T >
using parsed_expression_map_t = unordered_map< reference< ParsedExpression >, T, ExpressionHashFunction< ParsedExpression >, ExpressionEquality< ParsedExpression > >
 
using parsed_expression_set_t = unordered_set< reference< ParsedExpression >, ExpressionHashFunction< ParsedExpression >, ExpressionEquality< ParsedExpression > >
 
using virtual_column_map_t = unordered_map< column_t, TableColumn >
 
typedef unique_ptr< FunctionData >(* table_function_bind_t) (ClientContext &context, TableFunctionBindInput &input, vector< LogicalType > &return_types, vector< string > &names)
 
typedef unique_ptr< TableRef >(* table_function_bind_replace_t) (ClientContext &context, TableFunctionBindInput &input)
 
typedef unique_ptr< LogicalOperator >(* table_function_bind_operator_t) (ClientContext &context, TableFunctionBindInput &input, idx_t bind_index, vector< string > &return_names)
 
typedef unique_ptr< GlobalTableFunctionState >(* table_function_init_global_t) (ClientContext &context, TableFunctionInitInput &input)
 
typedef unique_ptr< LocalTableFunctionState >(* table_function_init_local_t) (ExecutionContext &context, TableFunctionInitInput &input, GlobalTableFunctionState *global_state)
 
typedef unique_ptr< BaseStatistics >(* table_statistics_t) (ClientContext &context, const FunctionData *bind_data, column_t column_index)
 
typedef unique_ptr< BaseStatistics >(* table_statistics_extended_t) (ClientContext &context, TableFunctionGetStatisticsInput &input)
 
typedef void(* table_function_t) (ClientContext &context, TableFunctionInput &data, DataChunk &output)
 
typedef OperatorResultType(* table_in_out_function_t) (ExecutionContext &context, TableFunctionInput &data, DataChunk &input, DataChunk &output)
 
typedef OperatorFinalizeResultType(* table_in_out_function_final_t) (ExecutionContext &context, TableFunctionInput &data, DataChunk &output)
 
typedef OperatorPartitionData(* table_function_get_partition_data_t) (ClientContext &context, TableFunctionGetPartitionInput &input)
 
typedef BindInfo(* table_function_get_bind_info_t) (const optional_ptr< FunctionData > bind_data)
 
typedef unique_ptr< MultiFileReader >(* table_function_get_multi_file_reader_t) (const TableFunction &)
 
typedef bool(* table_function_supports_pushdown_type_t) (const FunctionData &bind_data, idx_t col_idx)
 
typedef bool(* table_function_supports_pushdown_extract_t) (const FunctionData &bind_data, const LogicalIndex &col_idx)
 
typedef double(* table_function_progress_t) (ClientContext &context, const FunctionData *bind_data, const GlobalTableFunctionState *global_state)
 
typedef void(* table_function_dependency_t) (LogicalDependencyList &dependencies, const FunctionData *bind_data)
 
typedef unique_ptr< NodeStatistics >(* table_function_cardinality_t) (ClientContext &context, const FunctionData *bind_data)
 
typedef idx_t(* table_function_rows_scanned_t) (GlobalTableFunctionState &global_state, LocalTableFunctionState &local_state)
 
typedef void(* table_function_pushdown_complex_filter_t) (ClientContext &context, LogicalGet &get, FunctionData *bind_data, vector< unique_ptr< Expression > > &filters)
 
typedef bool(* table_function_pushdown_expression_t) (ClientContext &context, const LogicalGet &get, Expression &expr)
 
typedef InsertionOrderPreservingMap< string >(* table_function_to_string_t) (TableFunctionToStringInput &input)
 
typedef InsertionOrderPreservingMap< string >(* table_function_dynamic_to_string_t) (TableFunctionDynamicToStringInput &input)
 
typedef void(* table_function_serialize_t) (Serializer &serializer, const optional_ptr< FunctionData > bind_data, const TableFunction &function)
 
typedef unique_ptr< FunctionData >(* table_function_deserialize_t) (Deserializer &deserializer, TableFunction &function)
 
typedef void(* table_function_type_pushdown_t) (ClientContext &context, optional_ptr< FunctionData > bind_data, const unordered_map< idx_t, LogicalType > &new_column_types)
 
typedef TablePartitionInfo(* table_function_get_partition_info_t) (ClientContext &context, TableFunctionPartitionInput &input)
 
typedef vector< PartitionStatistics >(* table_function_get_partition_stats_t) (ClientContext &context, GetPartitionStatsInput &input)
 
typedef virtual_column_map_t(* table_function_get_virtual_columns_t) (ClientContext &context, optional_ptr< FunctionData > bind_data)
 
typedef vector< column_t >(* table_function_get_row_id_columns) (ClientContext &context, optional_ptr< FunctionData > bind_data)
 
typedef void(* table_function_set_scan_order) (unique_ptr< RowGroupOrderOptions > order_options, optional_ptr< FunctionData > bind_data)
 
using catalog_entry_set_t = unordered_set< reference< CatalogEntry >, CatalogEntryHashFunction, CatalogEntryEquality >
 
template<typename T >
using catalog_entry_map_t = unordered_map< reference< CatalogEntry >, T, CatalogEntryHashFunction, CatalogEntryEquality >
 
using catalog_entry_vector_t = vector< reference< CatalogEntry > >
 
using dependency_set_t = unordered_set< Dependency, DependencyHashFunction, DependencyEquality >
 
template<typename T >
using unsafe_deque = deque< T, false >
 
using Profiler = BaseProfiler< steady_clock >
 
typedef std::function< unique_ptr< ProgressBarDisplay >()> progress_bar_display_create_func_t
 
typedef unordered_set< MetricType, MetricTypeHashFunctionprofiler_settings_t
 
typedef unordered_map< MetricType, Value, MetricTypeHashFunctionprofiler_metrics_t
 
typedef void(* set_callback_t) (SettingCallbackInfo &info, Value &parameter)
 
typedef void(* set_global_function_t) (DatabaseInstance *db, DBConfig &config, const Value &parameter)
 
typedef void(* set_local_function_t) (ClientContext &context, const Value &parameter)
 
typedef void(* reset_global_function_t) (DatabaseInstance *db, DBConfig &config)
 
typedef void(* reset_local_function_t) (ClientContext &context)
 
typedef Value(* get_setting_function_t) (const ClientContext &context)
 
typedef void(* set_option_callback_t) (ClientContext &context, SetScope scope, Value &parameter)
 
typedef std::function< unique_ptr< PhysicalOperator >(ClientContext &context, PreparedStatementData &data)> get_result_collector_t
 
typedef void(* cast_arrow_duck_t) (ClientContext &context, Vector &source, Vector &result, idx_t count)
 
typedef void(* cast_duck_arrow_t) (ClientContext &context, Vector &source, Vector &result, idx_t count)
 
using arrow_column_map_t = unordered_map< idx_t, shared_ptr< ArrowType > >
 
typedef void(* populate_arrow_schema_t) (DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientContext &context, const ArrowTypeExtension &extension)
 
typedef unique_ptr< ArrowType >(* get_type_t) (ClientContext &context, const ArrowSchema &schema, const ArrowSchemaMetadata &schema_metadata)
 
typedef unique_ptr< IndexBuildBindData >(* index_build_bind_t) (IndexBuildBindInput &input)
 
typedef bool(* index_build_sort_t) (IndexBuildSortInput &input)
 
typedef unique_ptr< IndexBuildGlobalState >(* index_build_global_init_t) (IndexBuildInitGlobalStateInput &input)
 
typedef unique_ptr< IndexBuildLocalState >(* index_build_local_init_t) (IndexBuildInitLocalStateInput &input)
 
typedef void(* index_build_sink_t) (IndexBuildSinkInput &input, DataChunk &key_chunk, DataChunk &row_chunk)
 
typedef void(* index_build_combine_t) (IndexBuildCombineInput &input)
 
typedef unique_ptr< BoundIndex >(* index_build_finalize_t) (IndexBuildFinalizeInput &input)
 
typedef unique_ptr< BoundIndex >(* index_create_function_t) (CreateIndexInput &input)
 
typedef PhysicalOperator &(* index_build_plan_t) (PlanIndexInput &input)
 
typedef bool(* cast_function_t) (Vector &source, Vector &result, idx_t count, CastParameters &parameters)
 
typedef unique_ptr< FunctionLocalState >(* init_cast_local_state_t) (CastLocalStateParameters &parameters)
 
typedef unique_ptr< TableRef >(* replacement_scan_t) (ClientContext &context, ReplacementScanInput &input, optional_ptr< ReplacementScanData > data)
 
typedef void(* encode_t) (CSVEncoderBuffer &encoded_buffer, char *decoded_buffer, idx_t &decoded_buffer_current_position, const idx_t decoded_buffer_size, char *remaining_bytes_buffer, idx_t &remaining_bytes_size, EncodingFunction *encoding_function)
 Decode function, basically takes information about the decoded and the encoded buffers.
 
template<typename T , typename Container = std::deque<T>>
using unsafe_queue = queue< T, Container, false >
 
typedef void(* line_printer_f) (OutputStream stream, const string &str)
 
typedef void(* warning_callback_t) (std::string)
 
typedef BoundCastInfo(* bind_cast_function_t) (BindCastInput &input, const LogicalType &source, const LogicalType &target)
 
typedef int64_t(* implicit_cast_cost_t) (const LogicalType &from, const LogicalType &to)
 
typedef string(* pragma_query_t) (ClientContext &context, const FunctionParameters &parameters)
 Return a substitute query to execute instead of this pragma statement.
 
typedef void(* pragma_function_t) (ClientContext &context, const FunctionParameters &parameters)
 Execute the main pragma function.
 
using bound_parameter_map_t = case_insensitive_map_t< shared_ptr< BoundParameterData > >
 
typedef uint16_t field_id_t
 
template<class... >
using void_t = void
 
using BlockLock = unique_lock< mutex >
 
template<typename T >
using perfect_map_t = unordered_map< idx_t, T, PerfectHash, PerfectEquality >
 
using perfect_set_t = unordered_set< idx_t, PerfectHash, PerfectEquality >
 
typedef unique_ptr< AnalyzeState >(* compression_init_analyze_t) (ColumnData &col_data, PhysicalType type)
 The system then decides which compression function to use based on the analyzed score (returned from final_analyze)
 
typedef bool(* compression_analyze_t) (AnalyzeState &state, Vector &input, idx_t count)
 
typedef idx_t(* compression_final_analyze_t) (AnalyzeState &state)
 
typedef unique_ptr< CompressionState >(* compression_init_compression_t) (ColumnDataCheckpointData &checkpoint_data, unique_ptr< AnalyzeState > state)
 
typedef void(* compression_compress_data_t) (CompressionState &state, Vector &scan_vector, idx_t count)
 
typedef void(* compression_compress_finalize_t) (CompressionState &state)
 
typedef void(* compression_init_prefetch_t) (ColumnSegment &segment, PrefetchState &prefetch_state)
 
typedef unique_ptr< SegmentScanState >(* compression_init_segment_scan_t) (const QueryContext &context, ColumnSegment &segment)
 
typedef void(* compression_scan_vector_t) (ColumnSegment &segment, ColumnScanState &state, idx_t scan_count, Vector &result)
 Function prototype used for reading an entire vector (STANDARD_VECTOR_SIZE)
 
typedef void(* compression_scan_partial_t) (ColumnSegment &segment, ColumnScanState &state, idx_t scan_count, Vector &result, idx_t result_offset)
 Function prototype used for reading an arbitrary ('scan_count') number of values.
 
typedef void(* compression_select_t) (ColumnSegment &segment, ColumnScanState &state, idx_t vector_count, Vector &result, const SelectionVector &sel, idx_t sel_count)
 Function prototype used for reading a subset of the values of a vector indicated by a selection vector.
 
typedef void(* compression_filter_t) (ColumnSegment &segment, ColumnScanState &state, idx_t vector_count, Vector &result, SelectionVector &sel, idx_t &sel_count, const TableFilter &filter, TableFilterState &filter_state)
 Function prototype used for applying a filter to a vector while scanning that vector.
 
typedef void(* compression_fetch_row_t) (ColumnSegment &segment, ColumnFetchState &state, row_t row_id, Vector &result, idx_t result_idx)
 Function prototype used for reading a single value.
 
typedef void(* compression_skip_t) (ColumnSegment &segment, ColumnScanState &state, idx_t skip_count)
 
typedef unique_ptr< CompressedSegmentState >(* compression_init_segment_t) (ColumnSegment &segment, block_id_t block_id, optional_ptr< ColumnSegmentState > segment_state)
 
typedef unique_ptr< CompressionAppendState >(* compression_init_append_t) (ColumnSegment &segment)
 
typedef idx_t(* compression_append_t) (CompressionAppendState &append_state, ColumnSegment &segment, SegmentStatistics &stats, UnifiedVectorFormat &data, idx_t offset, idx_t count)
 
typedef idx_t(* compression_finalize_append_t) (ColumnSegment &segment, SegmentStatistics &stats)
 
typedef void(* compression_revert_append_t) (ColumnSegment &segment, idx_t new_count)
 
typedef unique_ptr< ColumnSegmentState >(* compression_serialize_state_t) (ColumnSegment &segment)
 Function prototype for serializing the segment state.
 
typedef unique_ptr< ColumnSegmentState >(* compression_deserialize_state_t) (Deserializer &deserializer)
 Function prototype for deserializing the segment state.
 
typedef void(* compression_visit_block_ids_t) (const ColumnSegment &segment, BlockIdVisitor &visitor)
 Function prototype for cleaning up the segment state when the column data is dropped.
 
typedef InsertionOrderPreservingMap< string >(* compression_get_segment_info_t) (QueryContext context, ColumnSegment &segment)
 Function prototype for retrieving segment information straight from the column segment.
 
template<typename T >
using unsafe_atomic_ptr = atomic_ptr< T, false >
 
using column_segment_vector_t = vector< SegmentNode< ColumnSegment > >
 
typedef unordered_map< HivePartitionKey, idx_t, HivePartitionKey::Hash, HivePartitionKey::Equalityhive_partition_map_t
 Maps hive partitions to partition_ids.
 
typedef unique_ptr< BaseSecret >(* secret_deserializer_t) (Deserializer &deserializer, BaseSecret base_secret)
 
typedef unique_ptr< BaseSecret >(* create_secret_function_t) (ClientContext &context, CreateSecretInput &input)
 
typedef LogicalType(* bind_logical_type_function_t) (BindLogicalTypeInput &input)
 The type to bind type modifiers to a type.
 
using UUIDv4 = UUID
 
typedef BoundStatement(* copy_to_plan_t) (Binder &binder, CopyStatement &stmt)
 
typedef void(* copy_options_t) (ClientContext &context, CopyOptionsInput &input)
 
typedef unique_ptr< FunctionData >(* copy_to_bind_t) (ClientContext &context, CopyFunctionBindInput &input, const vector< string > &names, const vector< LogicalType > &sql_types)
 
typedef unique_ptr< LocalFunctionData >(* copy_to_initialize_local_t) (ExecutionContext &context, FunctionData &bind_data)
 
typedef unique_ptr< GlobalFunctionData >(* copy_to_initialize_global_t) (ClientContext &context, FunctionData &bind_data, const string &file_path)
 
typedef void(* copy_to_sink_t) (ExecutionContext &context, FunctionData &bind_data, GlobalFunctionData &gstate, LocalFunctionData &lstate, DataChunk &input)
 
typedef void(* copy_to_combine_t) (ExecutionContext &context, FunctionData &bind_data, GlobalFunctionData &gstate, LocalFunctionData &lstate)
 
typedef void(* copy_to_finalize_t) (ClientContext &context, FunctionData &bind_data, GlobalFunctionData &gstate)
 
typedef void(* copy_to_serialize_t) (Serializer &serializer, const FunctionData &bind_data, const CopyFunction &function)
 
typedef unique_ptr< FunctionData >(* copy_to_deserialize_t) (Deserializer &deserializer, CopyFunction &function)
 
typedef unique_ptr< FunctionData >(* copy_from_bind_t) (ClientContext &context, CopyFromFunctionBindInput &info, vector< string > &expected_names, vector< LogicalType > &expected_types)
 
typedef CopyFunctionExecutionMode(* copy_to_execution_mode_t) (bool preserve_insertion_order, bool supports_batch_index)
 
typedef unique_ptr< PreparedBatchData >(* copy_prepare_batch_t) (ClientContext &context, FunctionData &bind_data, GlobalFunctionData &gstate, unique_ptr< ColumnDataCollection > collection)
 
typedef void(* copy_flush_batch_t) (ClientContext &context, FunctionData &bind_data, GlobalFunctionData &gstate, PreparedBatchData &batch)
 
typedef idx_t(* copy_desired_batch_size_t) (ClientContext &context, FunctionData &bind_data)
 
typedef bool(* copy_rotate_files_t) (FunctionData &bind_data, const optional_idx &file_size_bytes)
 
typedef bool(* copy_rotate_next_file_t) (GlobalFunctionData &gstate, FunctionData &bind_data, const optional_idx &file_size_bytes)
 
typedef void(* copy_to_get_written_statistics_t) (ClientContext &context, FunctionData &bind_data, GlobalFunctionData &gstate, CopyFunctionFileStatistics &statistics)
 
typedef vector< unique_ptr< Expression > >(* copy_to_select_t) (CopyToSelectInput &input)
 
typedef void(* copy_to_initialize_operator_t) (GlobalFunctionData &gstate, const PhysicalOperator &op)
 

Enumerations

enum class  CatalogSetPathType { SET_SCHEMA , SET_SCHEMAS , SET_DIRECTLY }
 
enum class  CollationType { ALL_COLLATIONS , COMBINABLE_COLLATIONS }
 
enum class  BindingType {
  BASE , TABLE , DUMMY , CATALOG_ENTRY ,
  CTE
}
 
enum class  CTEType { CAN_BE_REFERENCED , CANNOT_BE_REFERENCED }
 
enum class  ColumnBindType { EXPAND_GENERATED_COLUMNS , DO_NOT_EXPAND_GENERATED_COLUMNS }
 
enum class  StarExpressionType : uint8_t { STAR , COLUMNS , UNPACKED , NONE }
 
enum class  BindingMode : uint8_t { STANDARD_BINDING , EXTRACT_NAMES , EXTRACT_REPLACEMENT_SCANS , EXTRACT_QUALIFIED_NAMES }
 
enum class  BinderType : uint8_t { REGULAR_BINDER , VIEW_BINDER }
 
enum class  MacroType : uint8_t { VOID_MACRO = 0 , TABLE_MACRO = 1 , SCALAR_MACRO = 2 }
 
enum class  ViewBindState { BOUND , BINDING , UNBOUND }
 
enum class  BindViewAction { BIND_IF_UNBOUND , FORCE_REBIND }
 
enum class  ExtensionLoadResult : uint8_t { LOADED_EXTENSION = 0 , EXTENSION_UNKNOWN = 1 , NOT_LOADED = 2 }
 
enum class  ExtensionUpdateResultTag : uint8_t {
  UNKNOWN = 0 , NO_UPDATE_AVAILABLE = 1 , NOT_A_REPOSITORY = 2 , NOT_INSTALLED = 3 ,
  STATICALLY_LOADED = 4 , MISSING_INSTALL_INFO = 5 , REDOWNLOADED = 254 , UPDATED = 255
}
 
enum class  ExtraDropInfoType : uint8_t { INVALID = 0 , SECRET_INFO = 1 }
 
enum class  DependencyEntryType : uint8_t { SUBJECT , DEPENDENT }
 
enum class  UndoFlags : uint32_t {
  EMPTY_ENTRY = 0 , CATALOG_ENTRY = 1 , INSERT_TUPLE = 2 , DELETE_TUPLE = 3 ,
  UPDATE_TUPLE = 4 , SEQUENCE_VALUE = 5 , ATTACHED_DATABASE = 6
}
 
enum class  ActiveTransactionState { UNSET , OTHER_TRANSACTIONS , NO_OTHER_TRANSACTIONS }
 
enum class  WALType : uint8_t {
  INVALID = 0 , CREATE_TABLE = 1 , DROP_TABLE = 2 , CREATE_SCHEMA = 3 ,
  DROP_SCHEMA = 4 , CREATE_VIEW = 5 , DROP_VIEW = 6 , CREATE_SEQUENCE = 8 ,
  DROP_SEQUENCE = 9 , SEQUENCE_VALUE = 10 , CREATE_MACRO = 11 , DROP_MACRO = 12 ,
  CREATE_TYPE = 13 , DROP_TYPE = 14 , ALTER_INFO = 20 , CREATE_TABLE_MACRO = 21 ,
  DROP_TABLE_MACRO = 22 , CREATE_INDEX = 23 , DROP_INDEX = 24 , USE_TABLE = 25 ,
  INSERT_TUPLE = 26 , DELETE_TUPLE = 27 , UPDATE_TUPLE = 28 , ROW_GROUP_DATA = 29 ,
  WAL_VERSION = 98 , CHECKPOINT = 99 , WAL_FLUSH = 100
}
 
enum class  WALInitState { NO_WAL , UNINITIALIZED , UNINITIALIZED_REQUIRES_TRUNCATE , INITIALIZED }
 
enum class  CompressInMemory { AUTOMATIC , COMPRESS , DO_NOT_COMPRESS }
 
enum class  PartialBlockType { FULL_CHECKPOINT , APPEND_TO_TABLE , IN_MEMORY_CHECKPOINT }
 
enum class  NType : uint8_t {
  PREFIX = 1 , LEAF = 2 , NODE_4 = 3 , NODE_16 = 4 ,
  NODE_48 = 5 , NODE_256 = 6 , LEAF_INLINED = 7 , NODE_7_LEAF = 8 ,
  NODE_15_LEAF = 9 , NODE_256_LEAF = 10
}
 
enum class  GateStatus : uint8_t { GATE_NOT_SET = 0 , GATE_SET = 1 }
 
enum class  VerifyExistenceType : uint8_t { APPEND = 0 , APPEND_FK = 1 , DELETE_FK = 2 }
 
enum class  ARTConflictType : uint8_t { NO_CONFLICT = 0 , CONSTRAINT = 1 , TRANSACTION = 2 }
 
enum class  ARTHandlingResult : uint8_t { CONTINUE = 0 , SKIP = 1 , YIELD = 2 , NONE = 3 }
 
enum class  AlterScalarFunctionType : uint8_t { INVALID = 0 , ADD_FUNCTION_OVERLOADS = 1 }
 
enum class  CoordinateReferenceSystemType : uint8_t {
  INVALID = 0 , SRID = 1 , AUTH_CODE = 2 , PROJJSON = 3 ,
  WKT2_2019 = 4
}
 
enum class  ExtraTypeInfoType : uint8_t {
  INVALID_TYPE_INFO = 0 , GENERIC_TYPE_INFO = 1 , DECIMAL_TYPE_INFO = 2 , STRING_TYPE_INFO = 3 ,
  LIST_TYPE_INFO = 4 , STRUCT_TYPE_INFO = 5 , ENUM_TYPE_INFO = 6 , UNBOUND_TYPE_INFO = 7 ,
  AGGREGATE_STATE_TYPE_INFO = 8 , ARRAY_TYPE_INFO = 9 , ANY_TYPE_INFO = 10 , INTEGER_LITERAL_TYPE_INFO = 11 ,
  TEMPLATE_TYPE_INFO = 12 , GEO_TYPE_INFO = 13
}
 Extra Type Info Type. More...
 
enum  EnumDictType : uint8_t { INVALID = 0 , VECTOR_DICT = 1 }
 
enum class  AlterTableFunctionType : uint8_t { INVALID = 0 , ADD_FUNCTION_OVERLOADS = 1 }
 
enum class  AllowParserOverride : uint8_t { DEFAULT_OVERRIDE , FALLBACK_OVERRIDE , STRICT_OVERRIDE }
 
enum class  ParserExtensionResultType : uint8_t { PARSE_SUCCESSFUL , DISPLAY_ORIGINAL_ERROR , DISPLAY_EXTENSION_ERROR }
 
enum class  ValueRenderAlignment { LEFT , MIDDLE , RIGHT }
 
enum class  RenderMode : uint8_t { ROWS , COLUMNS }
 
enum class  ResultRenderType {
  LAYOUT , COLUMN_NAME , COLUMN_TYPE , VALUE ,
  NULL_VALUE , FOOTER , STRING_LITERAL
}
 
enum class  LargeNumberRendering { NONE = 0 , FOOTER = 1 , ALL = 2 }
 
enum  AbsoluteNumberComparison : uint8_t { EQUAL = 0 , GREATER = 1 , SMALLER = 2 }
 
enum class  UnicodeType { INVALID , ASCII , UTF8 }
 
enum class  UnicodeInvalidReason { BYTE_MISMATCH , INVALID_UNICODE }
 
enum class  RenderRowType { ROW_VALUES , SEPARATOR , DIVIDER , FOOTER }
 
enum class  JSONFormattingMode { STANDARD , COMPACT_VERTICAL , COMPACT_HORIZONTAL }
 
enum class  JSONComponentType {
  BRACKET_OPEN , BRACKET_CLOSE , LITERAL , COLON ,
  COMMA , NULL_VALUE
}
 
enum class  JSONFormattingResult { SUCCESS , TOO_MANY_ROWS , TOO_WIDE }
 
enum class  CSVNewLineMode { WRITE_BEFORE = 0 , WRITE_AFTER = 1 }
 
enum class  AggregateHandling : uint8_t { STANDARD_HANDLING , NO_AGGREGATES_ALLOWED , FORCE_AGGREGATES }
 
enum class  CheckpointAbort : uint8_t {
  NO_ABORT = 0 , DEBUG_ABORT_BEFORE_TRUNCATE = 1 , DEBUG_ABORT_BEFORE_HEADER = 2 , DEBUG_ABORT_AFTER_FREE_LIST_WRITE = 3 ,
  DEBUG_ABORT_BEFORE_WAL_FINISH = 4 , DEBUG_ABORT_BEFORE_MOVING_RECOVERY = 5 , DEBUG_ABORT_BEFORE_DELETING_CHECKPOINT_WAL = 6
}
 
enum class  CopyOverwriteMode : uint8_t { COPY_ERROR_ON_CONFLICT = 0 , COPY_OVERWRITE = 1 , COPY_OVERWRITE_OR_IGNORE = 2 , COPY_APPEND = 3 }
 
enum class  DatePartSpecifier : uint8_t {
  YEAR , MONTH , DAY , DECADE ,
  CENTURY , MILLENNIUM , MICROSECONDS , MILLISECONDS ,
  SECOND , MINUTE , HOUR , DOW ,
  ISODOW , WEEK , ISOYEAR , QUARTER ,
  DOY , YEARWEEK , ERA , TIMEZONE ,
  TIMEZONE_HOUR , TIMEZONE_MINUTE , EPOCH , JULIAN_DAY ,
  INVALID , BEGIN_BIGINT = YEAR , BEGIN_DOUBLE = EPOCH , BEGIN_INVALID = INVALID
}
 
enum class  DeprecatedUsingKeySyntax : uint8_t { DEFAULT = 0 , UNION_AS_UNION_ALL = 1 }
 
enum class  HTTPStatusCode : uint16_t {
  INVALID = 0 , Continue_100 = 100 , SwitchingProtocol_101 = 101 , Processing_102 = 102 ,
  EarlyHints_103 = 103 , OK_200 = 200 , Created_201 = 201 , Accepted_202 = 202 ,
  NonAuthoritativeInformation_203 = 203 , NoContent_204 = 204 , ResetContent_205 = 205 , PartialContent_206 = 206 ,
  MultiStatus_207 = 207 , AlreadyReported_208 = 208 , IMUsed_226 = 226 , MultipleChoices_300 = 300 ,
  MovedPermanently_301 = 301 , Found_302 = 302 , SeeOther_303 = 303 , NotModified_304 = 304 ,
  UseProxy_305 = 305 , unused_306 = 306 , TemporaryRedirect_307 = 307 , PermanentRedirect_308 = 308 ,
  BadRequest_400 = 400 , Unauthorized_401 = 401 , PaymentRequired_402 = 402 , Forbidden_403 = 403 ,
  NotFound_404 = 404 , MethodNotAllowed_405 = 405 , NotAcceptable_406 = 406 , ProxyAuthenticationRequired_407 = 407 ,
  RequestTimeout_408 = 408 , Conflict_409 = 409 , Gone_410 = 410 , LengthRequired_411 = 411 ,
  PreconditionFailed_412 = 412 , PayloadTooLarge_413 = 413 , UriTooLong_414 = 414 , UnsupportedMediaType_415 = 415 ,
  RangeNotSatisfiable_416 = 416 , ExpectationFailed_417 = 417 , ImATeapot_418 = 418 , MisdirectedRequest_421 = 421 ,
  UnprocessableContent_422 = 422 , Locked_423 = 423 , FailedDependency_424 = 424 , TooEarly_425 = 425 ,
  UpgradeRequired_426 = 426 , PreconditionRequired_428 = 428 , TooManyRequests_429 = 429 , RequestHeaderFieldsTooLarge_431 = 431 ,
  UnavailableForLegalReasons_451 = 451 , InternalServerError_500 = 500 , NotImplemented_501 = 501 , BadGateway_502 = 502 ,
  ServiceUnavailable_503 = 503 , GatewayTimeout_504 = 504 , HttpVersionNotSupported_505 = 505 , VariantAlsoNegotiates_506 = 506 ,
  InsufficientStorage_507 = 507 , LoopDetected_508 = 508 , NotExtended_510 = 510 , NetworkAuthenticationRequired_511 = 511
}
 
enum class  MergeActionType : uint8_t {
  MERGE_UPDATE , MERGE_DELETE , MERGE_INSERT , MERGE_DO_NOTHING ,
  MERGE_ERROR
}
 
enum class  MergeActionCondition : uint8_t { WHEN_MATCHED , WHEN_NOT_MATCHED_BY_SOURCE , WHEN_NOT_MATCHED_BY_TARGET }
 
enum class  OrdinalityType : uint8_t { WITHOUT_ORDINALITY = 0 , WITH_ORDINALITY = 1 }
 
enum class  PreserveOrderType : uint8_t { AUTOMATIC = 0 , PRESERVE_ORDER = 1 , DONT_PRESERVE_ORDER = 2 }
 
enum class  QuantileSerializationType : uint8_t {
  NON_DECIMAL = 0 , DECIMAL_DISCRETE , DECIMAL_DISCRETE_LIST , DECIMAL_CONTINUOUS ,
  DECIMAL_CONTINUOUS_LIST
}
 
enum class  SetType : uint8_t { SET = 0 , RESET = 1 }
 
enum class  StorageBlockPrefetch : uint8_t { REMOTE_ONLY = 0 , NEVER = 1 , ALWAYS_PREFETCH = 2 , DEBUG_FORCE_ALWAYS = 3 }
 
enum class  SubqueryType : uint8_t {
  INVALID = 0 , SCALAR = 1 , EXISTS = 2 , NOT_EXISTS = 3 ,
  ANY = 4
}
 
enum class  TupleDataValidityType : uint8_t { CAN_HAVE_NULL_VALUES = 0 , CANNOT_HAVE_NULL_VALUES = 1 }
 
enum class  TupleDataNestednessType : uint8_t { TOP_LEVEL_LAYOUT = 0 , NESTED_STRUCT_LAYOUT = 1 }
 
enum class  WindowAggregationMode : uint32_t { WINDOW = 0 , COMBINE , SEPARATE }
 
enum class  FileNameSegmentType : uint8_t { LITERAL , UUID_V4 , UUID_V7 , OFFSET }
 
enum class  RequestType : uint8_t {
  GET_REQUEST , PUT_REQUEST , HEAD_REQUEST , DELETE_REQUEST ,
  POST_REQUEST
}
 
enum class  MultiFileFileState : uint8_t {
  UNOPENED , OPENING , OPEN , SKIPPED ,
  CLOSED
}
 
enum class  FileExpandResult : uint8_t { NO_FILES , SINGLE_FILE , MULTIPLE_FILES }
 
enum class  MultiFileListScanType { ALWAYS_FETCH , FETCH_IF_AVAILABLE }
 
enum class  FileExpansionType { ALL_FILES_EXPANDED , NOT_ALL_FILES_KNOWN }
 
enum class  ExponentType : uint8_t { NONE , POSITIVE , NEGATIVE }
 
enum class  SortKeyType : uint8_t {
  INVALID = 0 , NO_PAYLOAD_FIXED_8 = 1 , NO_PAYLOAD_FIXED_16 = 2 , NO_PAYLOAD_FIXED_24 = 3 ,
  NO_PAYLOAD_FIXED_32 = 4 , NO_PAYLOAD_VARIABLE_32 = 5 , PAYLOAD_FIXED_16 = 6 , PAYLOAD_FIXED_24 = 7 ,
  PAYLOAD_FIXED_32 = 8 , PAYLOAD_VARIABLE_32 = 9
}
 
enum class  ConflictManagerMode : uint8_t { SCAN , THROW }
 
enum class  LookupResultType : uint8_t { LOOKUP_MISS , LOOKUP_HIT , LOOKUP_NULL }
 
enum class  TupleDataPinProperties : uint8_t {
  INVALID , KEEP_EVERYTHING_PINNED , UNPIN_AFTER_DONE , DESTROY_AFTER_DONE ,
  ALREADY_PINNED
}
 
enum class  BlockIteratorStateType : int8_t { IN_MEMORY , EXTERNAL }
 
enum class  PartitionedTupleDataType : uint8_t { INVALID , RADIX }
 
enum class  VariantValueType : uint8_t { PRIMITIVE , OBJECT , ARRAY , MISSING }
 
enum class  ARTScanHandling : uint8_t { EMPLACE , POP }
 
enum class  ARTScanResult : uint8_t { COMPLETED = 0 , PAUSED = 1 }
 
enum class  CSVState : uint8_t {
  STANDARD = 0 , DELIMITER = 1 , DELIMITER_FIRST_BYTE = 2 , DELIMITER_SECOND_BYTE = 3 ,
  DELIMITER_THIRD_BYTE = 4 , RECORD_SEPARATOR = 5 , CARRIAGE_RETURN = 6 , QUOTED = 7 ,
  UNQUOTED = 8 , ESCAPE = 9 , INVALID = 10 , NOT_SET = 11 ,
  QUOTED_NEW_LINE = 12 , EMPTY_SPACE = 13 , COMMENT = 14 , STANDARD_NEWLINE = 15 ,
  UNQUOTED_ESCAPE = 16 , ESCAPED_RETURN = 17 , MAYBE_QUOTED = 18
}
 All States of CSV parsing. More...
 
enum class  PhysicalTableScanExecutionStrategy : uint8_t { DEFAULT , TASK_EXECUTOR , SYNCHRONOUS , TASK_EXECUTOR_BUT_FORCE_SYNC_CHECKS }
 
enum class  CompressedMaterializationDirection : uint8_t { INVALID = 0 , COMPRESS = 1 , DECOMPRESS = 2 }
 Needed for (de)serialization without binding. More...
 
enum class  WindowMergeSortStage : uint8_t {
  INIT , COMBINE , FINALIZE , SORTED ,
  FINISHED
}
 
enum class  ErrorType : uint16_t {
  UNSIGNED_EXTENSION = 0 , INVALIDATED_TRANSACTION = 1 , INVALIDATED_DATABASE = 2 , ERROR_COUNT ,
  INVALID = 65535
}
 
enum class  PushdownExtractSupport : uint8_t { UNCHECKED , DISABLED , ENABLED }
 
enum class  BaseColumnPrunerMode : uint8_t { DEFAULT , DISABLE_PUSHDOWN_EXTRACT }
 
enum class  MetaPipelineType : uint8_t { REGULAR = 0 , JOIN_BUILD = 1 }
 
enum class  PreparedParamType : uint8_t { AUTO_INCREMENT , POSITIONAL , NAMED , INVALID }
 
enum class  WindowBoundary : uint8_t {
  INVALID = 0 , UNBOUNDED_PRECEDING = 1 , UNBOUNDED_FOLLOWING = 2 , CURRENT_ROW_RANGE = 3 ,
  CURRENT_ROW_ROWS = 4 , EXPR_PRECEDING_ROWS = 5 , EXPR_FOLLOWING_ROWS = 6 , EXPR_PRECEDING_RANGE = 7 ,
  EXPR_FOLLOWING_RANGE = 8 , CURRENT_ROW_GROUPS = 9 , EXPR_PRECEDING_GROUPS = 10 , EXPR_FOLLOWING_GROUPS = 11
}
 
enum class  WindowExcludeMode : uint8_t { NO_OTHER = 0 , CURRENT_ROW = 1 , GROUP = 2 , TIES = 3 }
 Represents the window exclusion mode. More...
 
enum class  AlterDatabaseType : uint8_t { RENAME_DATABASE = 0 }
 
enum class  LoadType : uint8_t { LOAD , INSTALL , FORCE_INSTALL }
 
enum class  OnConflictAction : uint8_t { THROW , NOTHING , UPDATE , REPLACE }
 
enum class  InsertColumnOrder : uint8_t { INSERT_BY_POSITION = 0 , INSERT_BY_NAME = 1 }
 
enum class  ShowType : uint8_t { SUMMARY , DESCRIBE , SHOW_FROM , SHOW_UNQUALIFIED }
 
enum class  DataFileType : uint8_t {
  FILE_DOES_NOT_EXIST , DUCKDB_FILE , SQLITE_FILE , PARQUET_FILE ,
  UNKNOWN_FILE
}
 
enum class  TemporaryBufferSize : uint64_t {
  INVALID = 0 , S32K = 32768 , S64K = 65536 , S96K = 98304 ,
  S128K = 131072 , S160K = 163840 , S192K = 196608 , S224K = 229376 ,
  DEFAULT = DEFAULT_BLOCK_ALLOC_SIZE
}
 
enum class  TemporaryCompressionLevel : int {
  ZSTD_MINUS_FIVE = -5 , ZSTD_MINUS_THREE = -3 , ZSTD_MINUS_ONE = -1 , UNCOMPRESSED = 0 ,
  ZSTD_ONE = 1 , ZSTD_THREE = 3 , ZSTD_FIVE = 5
}
 
enum class  VerificationType : uint8_t {
  ORIGINAL , COPIED , DESERIALIZED , PARSED ,
  UNOPTIMIZED , NO_OPERATOR_CACHING , PREPARED , EXTERNAL ,
  EXPLAIN , FETCH_ROW_AS_SCAN , INVALID
}
 
enum class  FetchType { TRANSACTIONAL_FETCH , FORCE_FETCH }
 
enum class  MiniZStreamType { MINIZ_TYPE_NONE , MINIZ_TYPE_INFLATE , MINIZ_TYPE_DEFLATE }
 
enum class  ReaderInitializeType { INITIALIZED , SKIP_READING_FILE }
 
enum class  ExceptionFormatValueType : uint8_t { FORMAT_VALUE_TYPE_DOUBLE , FORMAT_VALUE_TYPE_INTEGER , FORMAT_VALUE_TYPE_STRING }
 
enum class  ExceptionType : uint8_t {
  INVALID = 0 , OUT_OF_RANGE = 1 , CONVERSION = 2 , UNKNOWN_TYPE = 3 ,
  DECIMAL = 4 , MISMATCH_TYPE = 5 , DIVIDE_BY_ZERO = 6 , OBJECT_SIZE = 7 ,
  INVALID_TYPE = 8 , SERIALIZATION = 9 , TRANSACTION = 10 , NOT_IMPLEMENTED = 11 ,
  EXPRESSION = 12 , CATALOG = 13 , PARSER = 14 , PLANNER = 15 ,
  SCHEDULER = 16 , EXECUTOR = 17 , CONSTRAINT = 18 , INDEX = 19 ,
  STAT = 20 , CONNECTION = 21 , SYNTAX = 22 , SETTINGS = 23 ,
  BINDER = 24 , NETWORK = 25 , OPTIMIZER = 26 , NULL_POINTER = 27 ,
  IO = 28 , INTERRUPT = 29 , FATAL = 30 , INTERNAL = 31 ,
  INVALID_INPUT = 32 , OUT_OF_MEMORY = 33 , PERMISSION = 34 , PARAMETER_NOT_RESOLVED = 35 ,
  PARAMETER_NOT_ALLOWED = 36 , DEPENDENCY = 37 , HTTP = 38 , MISSING_EXTENSION = 39 ,
  AUTOLOAD = 40 , SEQUENCE = 41 , INVALID_CONFIGURATION
}
 
enum class  ProfilerPrintFormat : uint8_t {
  QUERY_TREE , JSON , QUERY_TREE_OPTIMIZER , NO_OUTPUT ,
  HTML , GRAPHVIZ , MERMAID
}
 
enum class  CatalogType : uint8_t {
  INVALID = 0 , TABLE_ENTRY = 1 , SCHEMA_ENTRY = 2 , VIEW_ENTRY = 3 ,
  INDEX_ENTRY = 4 , PREPARED_STATEMENT = 5 , SEQUENCE_ENTRY = 6 , COLLATION_ENTRY = 7 ,
  TYPE_ENTRY = 8 , DATABASE_ENTRY = 9 , COORDINATE_SYSTEM_ENTRY = 10 , TABLE_FUNCTION_ENTRY = 25 ,
  SCALAR_FUNCTION_ENTRY = 26 , AGGREGATE_FUNCTION_ENTRY = 27 , PRAGMA_FUNCTION_ENTRY = 28 , COPY_FUNCTION_ENTRY = 29 ,
  MACRO_ENTRY = 30 , TABLE_MACRO_ENTRY = 31 , DELETED_ENTRY = 51 , RENAMED_ENTRY = 52 ,
  SECRET_ENTRY = 71 , SECRET_TYPE_ENTRY = 72 , SECRET_FUNCTION_ENTRY = 73 , DEPENDENCY_ENTRY = 100
}
 
enum class  PhysicalType : uint8_t {
  BOOL = 1 , UINT8 = 2 , INT8 = 3 , UINT16 = 4 ,
  INT16 = 5 , UINT32 = 6 , INT32 = 7 , UINT64 = 8 ,
  INT64 = 9 , FLOAT = 11 , DOUBLE = 12 , INTERVAL = 21 ,
  LIST = 23 , STRUCT = 24 , ARRAY = 29 , VARCHAR = 200 ,
  UINT128 = 203 , INT128 = 204 , UNKNOWN = 205 , BIT = 206 ,
  INVALID = 255
}
 
enum class  LogicalTypeId : uint8_t {
  INVALID = 0 , SQLNULL = 1 , UNKNOWN = 2 , ANY = 3 ,
  UNBOUND = 4 , TEMPLATE = 5 , TYPE = 6 , BOOLEAN = 10 ,
  TINYINT = 11 , SMALLINT = 12 , INTEGER = 13 , BIGINT = 14 ,
  DATE = 15 , TIME = 16 , TIMESTAMP_SEC = 17 , TIMESTAMP_MS = 18 ,
  TIMESTAMP = 19 , TIMESTAMP_NS = 20 , DECIMAL = 21 , FLOAT = 22 ,
  DOUBLE = 23 , CHAR = 24 , VARCHAR = 25 , BLOB = 26 ,
  INTERVAL = 27 , UTINYINT = 28 , USMALLINT = 29 , UINTEGER = 30 ,
  UBIGINT = 31 , TIMESTAMP_TZ = 32 , TIME_TZ = 34 , TIME_NS = 35 ,
  BIT = 36 , STRING_LITERAL = 37 , INTEGER_LITERAL = 38 , BIGNUM = 39 ,
  UHUGEINT = 49 , HUGEINT = 50 , POINTER = 51 , VALIDITY = 53 ,
  UUID = 54 , GEOMETRY = 60 , STRUCT = 100 , LIST = 101 ,
  MAP = 102 , TABLE = 103 , ENUM = 104 , AGGREGATE_STATE = 105 ,
  LAMBDA = 106 , UNION = 107 , ARRAY = 108 , VARIANT = 109
}
 
enum class  ComplexJSONType : uint8_t { VALUE = 0 , OBJECT = 1 , ARRAY = 2 }
 
enum class  TimestampCastResult : uint8_t {
  SUCCESS , ERROR_INCORRECT_FORMAT , ERROR_NON_UTC_TIMEZONE , ERROR_RANGE ,
  STRICT_UTC
}
 
enum class  DateCastResult : uint8_t { SUCCESS , ERROR_INCORRECT_FORMAT , ERROR_RANGE }
 
enum class  CatalogLookupBehavior : uint8_t { STANDARD = 0 , LOWER_PRIORITY = 1 , NEVER_LOOKUP = 2 }
 Enum used for indicating lookup behavior of specific catalog types. More...
 
enum class  OnEntryNotFound : uint8_t { THROW_EXCEPTION = 0 , RETURN_NULL = 1 }
 
enum class  FileCompressionType : uint8_t { AUTO_DETECT = 0 , UNCOMPRESSED = 1 , GZIP = 2 , ZSTD = 3 }
 
enum class  FileGlobOptions : uint8_t { DISALLOW_EMPTY = 0 , ALLOW_EMPTY = 1 , FALLBACK_GLOB = 2 }
 
enum class  DebugInitialize : uint8_t { NO_INITIALIZE = 0 , DEBUG_ZERO_INITIALIZE = 1 , DEBUG_ONE_INITIALIZE = 2 }
 
enum class  FileBufferType : uint8_t { BLOCK = 1 , MANAGED_BUFFER = 2 , TINY_BUFFER = 3 , EXTERNAL_FILE = 4 }
 
enum class  CachingMode : uint8_t { ALWAYS_CACHE = 0 , CACHE_REMOTE_ONLY = 1 , NO_CACHING = 2 }
 
enum class  FileLockType : uint8_t { NO_LOCK = 0 , READ_LOCK = 1 , WRITE_LOCK = 2 }
 
enum class  FileType {
  FILE_TYPE_REGULAR , FILE_TYPE_DIR , FILE_TYPE_FIFO , FILE_TYPE_SOCKET ,
  FILE_TYPE_LINK , FILE_TYPE_BLOCKDEV , FILE_TYPE_CHARDEV , FILE_TYPE_INVALID
}
 
enum class  VectorType : uint8_t {
  FLAT_VECTOR , FSST_VECTOR , CONSTANT_VECTOR , DICTIONARY_VECTOR ,
  SEQUENCE_VECTOR
}
 
enum class  AllocatorFreeType { REQUIRES_FREE , DOES_NOT_REQUIRE_FREE }
 
enum class  VectorBufferType : uint8_t {
  STANDARD_BUFFER , DICTIONARY_BUFFER , VECTOR_CHILD_BUFFER , STRING_BUFFER ,
  FSST_BUFFER , STRUCT_BUFFER , LIST_BUFFER , MANAGED_BUFFER ,
  OPAQUE_BUFFER , ARRAY_BUFFER
}
 
enum class  VectorAuxiliaryDataType : uint8_t { ARROW_AUXILIARY }
 
enum class  MapInvalidReason : uint8_t {
  VALID , NULL_KEY , DUPLICATE_KEY , NOT_ALIGNED ,
  INVALID_PARAMS
}
 
enum class  UnionInvalidReason : uint8_t {
  VALID , TAG_OUT_OF_RANGE , NO_MEMBERS , VALIDITY_OVERLAP ,
  TAG_MISMATCH , NULL_TAG
}
 
enum class  FunctionErrors : uint8_t { CANNOT_ERROR = 0 , CAN_THROW_RUNTIME_ERROR = 1 }
 Whether or not a function can throw an error or not. More...
 
enum class  ExpressionType : uint8_t {
  INVALID = 0 , OPERATOR_CAST = 12 , OPERATOR_NOT = 13 , OPERATOR_IS_NULL = 14 ,
  OPERATOR_IS_NOT_NULL = 15 , OPERATOR_UNPACK = 16 , COMPARE_EQUAL = 25 , COMPARE_BOUNDARY_START = COMPARE_EQUAL ,
  COMPARE_NOTEQUAL = 26 , COMPARE_LESSTHAN = 27 , COMPARE_GREATERTHAN = 28 , COMPARE_LESSTHANOREQUALTO = 29 ,
  COMPARE_GREATERTHANOREQUALTO = 30 , COMPARE_IN = 35 , COMPARE_NOT_IN = 36 , COMPARE_DISTINCT_FROM = 37 ,
  COMPARE_BETWEEN = 38 , COMPARE_NOT_BETWEEN = 39 , COMPARE_NOT_DISTINCT_FROM = 40 , COMPARE_BOUNDARY_END = COMPARE_NOT_DISTINCT_FROM ,
  CONJUNCTION_AND = 50 , CONJUNCTION_OR = 51 , VALUE_CONSTANT = 75 , VALUE_PARAMETER = 76 ,
  VALUE_TUPLE = 77 , VALUE_TUPLE_ADDRESS = 78 , VALUE_NULL = 79 , VALUE_VECTOR = 80 ,
  VALUE_SCALAR = 81 , VALUE_DEFAULT = 82 , AGGREGATE = 100 , BOUND_AGGREGATE = 101 ,
  GROUPING_FUNCTION = 102 , WINDOW_AGGREGATE = 110 , WINDOW_RANK = 120 , WINDOW_RANK_DENSE = 121 ,
  WINDOW_NTILE = 122 , WINDOW_PERCENT_RANK = 123 , WINDOW_CUME_DIST = 124 , WINDOW_ROW_NUMBER = 125 ,
  WINDOW_FIRST_VALUE = 130 , WINDOW_LAST_VALUE = 131 , WINDOW_LEAD = 132 , WINDOW_LAG = 133 ,
  WINDOW_NTH_VALUE = 134 , WINDOW_FILL = 135 , FUNCTION = 140 , BOUND_FUNCTION = 141 ,
  CASE_EXPR = 150 , OPERATOR_NULLIF = 151 , OPERATOR_COALESCE = 152 , ARRAY_EXTRACT = 153 ,
  ARRAY_SLICE = 154 , STRUCT_EXTRACT = 155 , ARRAY_CONSTRUCTOR = 156 , ARROW = 157 ,
  OPERATOR_TRY = 158 , SUBQUERY = 175 , STAR = 200 , TABLE_STAR = 201 ,
  PLACEHOLDER = 202 , COLUMN_REF = 203 , FUNCTION_REF = 204 , TABLE_REF = 205 ,
  LAMBDA_REF = 206 , TYPE = 207 , CAST = 225 , BOUND_REF = 227 ,
  BOUND_COLUMN_REF = 228 , BOUND_UNNEST = 229 , COLLATE = 230 , LAMBDA = 231 ,
  POSITIONAL_REFERENCE = 232 , BOUND_LAMBDA_REF = 233 , BOUND_EXPANDED = 234
}
 
enum class  ExpressionClass : uint8_t {
  INVALID = 0 , AGGREGATE = 1 , CASE = 2 , CAST = 3 ,
  COLUMN_REF = 4 , COMPARISON = 5 , CONJUNCTION = 6 , CONSTANT = 7 ,
  DEFAULT = 8 , FUNCTION = 9 , OPERATOR = 10 , STAR = 11 ,
  SUBQUERY = 13 , WINDOW = 14 , PARAMETER = 15 , COLLATE = 16 ,
  LAMBDA = 17 , POSITIONAL_REFERENCE = 18 , BETWEEN = 19 , LAMBDA_REF = 20 ,
  TYPE = 21 , BOUND_AGGREGATE = 25 , BOUND_CASE = 26 , BOUND_CAST = 27 ,
  BOUND_COLUMN_REF = 28 , BOUND_COMPARISON = 29 , BOUND_CONJUNCTION = 30 , BOUND_CONSTANT = 31 ,
  BOUND_DEFAULT = 32 , BOUND_FUNCTION = 33 , BOUND_OPERATOR = 34 , BOUND_PARAMETER = 35 ,
  BOUND_REF = 36 , BOUND_SUBQUERY = 37 , BOUND_WINDOW = 38 , BOUND_BETWEEN = 39 ,
  BOUND_UNNEST = 40 , BOUND_LAMBDA = 41 , BOUND_LAMBDA_REF = 42 , BOUND_EXPRESSION = 50 ,
  BOUND_EXPANDED = 51
}
 
enum class  SimplifiedTokenType : uint8_t {
  SIMPLIFIED_TOKEN_IDENTIFIER , SIMPLIFIED_TOKEN_NUMERIC_CONSTANT , SIMPLIFIED_TOKEN_STRING_CONSTANT , SIMPLIFIED_TOKEN_OPERATOR ,
  SIMPLIFIED_TOKEN_KEYWORD , SIMPLIFIED_TOKEN_COMMENT , SIMPLIFIED_TOKEN_ERROR , SIMPLIFIED_TOKEN_ERROR_EMPHASIS ,
  SIMPLIFIED_TOKEN_ERROR_SUGGESTION
}
 
enum class  KeywordCategory : uint8_t {
  KEYWORD_RESERVED , KEYWORD_UNRESERVED , KEYWORD_TYPE_FUNC , KEYWORD_COL_NAME ,
  KEYWORD_NONE
}
 
enum class  CompressionType : uint8_t {
  COMPRESSION_AUTO = 0 , COMPRESSION_UNCOMPRESSED = 1 , COMPRESSION_CONSTANT = 2 , COMPRESSION_RLE = 3 ,
  COMPRESSION_DICTIONARY = 4 , COMPRESSION_PFOR_DELTA = 5 , COMPRESSION_BITPACKING = 6 , COMPRESSION_FSST = 7 ,
  COMPRESSION_CHIMP = 8 , COMPRESSION_PATAS = 9 , COMPRESSION_ALP = 10 , COMPRESSION_ALPRD = 11 ,
  COMPRESSION_ZSTD = 12 , COMPRESSION_ROARING = 13 , COMPRESSION_EMPTY = 14 , COMPRESSION_DICT_FSST = 15 ,
  COMPRESSION_COUNT
}
 
enum class  TableColumnType : uint8_t { STANDARD = 0 , GENERATED = 1 }
 
enum class  FunctionNullHandling : uint8_t { DEFAULT_NULL_HANDLING = 0 , SPECIAL_HANDLING = 1 }
 The default null handling is NULL in, NULL out. More...
 
enum class  FunctionStability : uint8_t { CONSISTENT = 0 , VOLATILE = 1 , CONSISTENT_WITHIN_QUERY = 2 }
 
enum class  FunctionCollationHandling : uint8_t { PROPAGATE_COLLATIONS = 0 , PUSH_COMBINABLE_COLLATIONS = 1 , IGNORE_COLLATIONS = 2 }
 
enum class  ColumnIndexType : uint8_t { INVALID , FULL_READ , PUSHDOWN_EXTRACT }
 
enum class  StorageIndexType : uint8_t { FULL_READ , PUSHDOWN_EXTRACT }
 
enum class  FilterPropagateResult : uint8_t {
  NO_PRUNING_POSSIBLE = 0 , FILTER_ALWAYS_TRUE = 1 , FILTER_ALWAYS_FALSE = 2 , FILTER_TRUE_OR_NULL = 3 ,
  FILTER_FALSE_OR_NULL = 4
}
 
enum class  GeometryType : uint8_t {
  INVALID = 0 , POINT = 1 , LINESTRING = 2 , POLYGON = 3 ,
  MULTIPOINT = 4 , MULTILINESTRING = 5 , MULTIPOLYGON = 6 , GEOMETRYCOLLECTION = 7
}
 
enum class  VertexType : uint8_t { XY = 0 , XYZ = 1 , XYM = 2 , XYZM = 3 }
 
enum class  GeometryStorageType : uint8_t {
  SPATIAL = 0 , WKB = 1 , POINT_XY = 17 , LINESTRING_XY = 18 ,
  POLYGON_XY = 19 , MULTIPOINT_XY = 20 , MULTILINESTRING_XY = 21 , MULTIPOLYGON_XY = 22 ,
  POINT_XYZ = 33 , LINESTRING_XYZ = 34 , POLYGON_XYZ = 35 , MULTIPOINT_XYZ = 36 ,
  MULTILINESTRING_XYZ = 37 , MULTIPOLYGON_XYZ = 38 , POINT_XYM = 65 , LINESTRING_XYM = 66 ,
  POLYGON_XYM = 67 , MULTIPOINT_XYM = 68 , MULTILINESTRING_XYM = 69 , MULTIPOLYGON_XYM = 70 ,
  POINT_XYZM = 97 , LINESTRING_XYZM = 98 , POLYGON_XYZM = 99 , MULTIPOINT_XYZM = 100 ,
  MULTILINESTRING_XYZM = 101 , MULTIPOLYGON_XYZM = 102
}
 
enum class  VariantChildLookupMode : uint8_t { INVALID , BY_KEY , BY_INDEX }
 
enum class  VariantLogicalType : uint8_t {
  VARIANT_NULL = 0 , BOOL_TRUE = 1 , BOOL_FALSE = 2 , INT8 = 3 ,
  INT16 = 4 , INT32 = 5 , INT64 = 6 , INT128 = 7 ,
  UINT8 = 8 , UINT16 = 9 , UINT32 = 10 , UINT64 = 11 ,
  UINT128 = 12 , FLOAT = 13 , DOUBLE = 14 , DECIMAL = 15 ,
  VARCHAR = 16 , BLOB = 17 , UUID = 18 , DATE = 19 ,
  TIME_MICROS = 20 , TIME_NANOS = 21 , TIMESTAMP_SEC = 22 , TIMESTAMP_MILIS = 23 ,
  TIMESTAMP_MICROS = 24 , TIMESTAMP_NANOS = 25 , TIME_MICROS_TZ = 26 , TIMESTAMP_MICROS_TZ = 27 ,
  INTERVAL = 28 , OBJECT = 29 , ARRAY = 30 , BIGNUM = 31 ,
  BITSTRING = 32 , GEOMETRY = 33 , ENUM_SIZE
}
 
enum class  VariantStatsShreddingState : uint8_t { UNINITIALIZED , NOT_SHREDDED , SHREDDED , INCONSISTENT }
 
enum class  StatsInfo : uint8_t {
  CAN_HAVE_NULL_VALUES = 0 , CANNOT_HAVE_NULL_VALUES = 1 , CAN_HAVE_VALID_VALUES = 2 , CANNOT_HAVE_VALID_VALUES = 3 ,
  CAN_HAVE_NULL_AND_VALID_VALUES = 4
}
 
enum class  StatisticsType : uint8_t {
  NUMERIC_STATS , STRING_STATS , LIST_STATS , STRUCT_STATS ,
  BASE_STATS , ARRAY_STATS , GEOMETRY_STATS , VARIANT_STATS
}
 
enum class  AggregateType : uint8_t { NON_DISTINCT = 1 , DISTINCT = 2 }
 
enum class  AggregateOrderDependent : uint8_t { ORDER_DEPENDENT = 1 , NOT_ORDER_DEPENDENT = 2 }
 Whether or not the input order influences the result of the aggregate. More...
 
enum class  AggregateDistinctDependent : uint8_t { DISTINCT_DEPENDENT = 1 , NOT_DISTINCT_DEPENDENT = 2 }
 Whether or not the input distinctness influences the result of the aggregate. More...
 
enum class  AggregateCombineType : uint8_t { PRESERVE_INPUT = 1 , ALLOW_DESTRUCTIVE = 2 }
 Whether or not the combiner needs to preserve the source. More...
 
enum class  OrderType : uint8_t { INVALID = 0 , ORDER_DEFAULT = 1 , ASCENDING = 2 , DESCENDING = 3 }
 
enum class  OrderByNullType : uint8_t { INVALID = 0 , ORDER_DEFAULT = 1 , NULLS_FIRST = 2 , NULLS_LAST = 3 }
 
enum class  DefaultOrderByNullType : uint8_t {
  INVALID = 0 , NULLS_FIRST = 2 , NULLS_LAST = 3 , NULLS_FIRST_ON_ASC_LAST_ON_DESC = 4 ,
  NULLS_LAST_ON_ASC_FIRST_ON_DESC = 5
}
 
enum class  ResultModifierType : uint8_t { LIMIT_MODIFIER = 1 , ORDER_MODIFIER = 2 , DISTINCT_MODIFIER = 3 , LIMIT_PERCENT_MODIFIER = 4 }
 
enum class  SetOperationType : uint8_t {
  NONE = 0 , UNION = 1 , EXCEPT = 2 , INTERSECT = 3 ,
  UNION_BY_NAME = 4
}
 
enum class  LimitNodeType : uint8_t {
  UNSET = 0 , CONSTANT_VALUE = 1 , CONSTANT_PERCENTAGE = 2 , EXPRESSION_VALUE = 3 ,
  EXPRESSION_PERCENTAGE = 4
}
 
enum class  DistinctType : uint8_t { DISTINCT = 0 , DISTINCT_ON = 1 }
 
enum class  AggregateDestructorType { STANDARD , LEGACY }
 
enum class  ColumnDataAllocatorType : uint8_t { BUFFER_MANAGER_ALLOCATOR , IN_MEMORY_ALLOCATOR , HYBRID }
 
enum class  ColumnDataScanProperties : uint8_t { INVALID , ALLOW_ZERO_COPY , DISALLOW_ZERO_COPY }
 
enum class  ColumnDataCollectionLifetime { REGULAR , THROW_ERROR_AFTER_DATABASE_CLOSES }
 
enum class  QueryResultOutputType : uint8_t { FORCE_MATERIALIZED , ALLOW_STREAMING }
 
enum class  QueryResultMemoryType : uint8_t { IN_MEMORY , BUFFER_MANAGED }
 
enum class  StatementType : uint8_t {
  INVALID_STATEMENT , SELECT_STATEMENT , INSERT_STATEMENT , UPDATE_STATEMENT ,
  CREATE_STATEMENT , DELETE_STATEMENT , PREPARE_STATEMENT , EXECUTE_STATEMENT ,
  ALTER_STATEMENT , TRANSACTION_STATEMENT , COPY_STATEMENT , ANALYZE_STATEMENT ,
  VARIABLE_SET_STATEMENT , CREATE_FUNC_STATEMENT , EXPLAIN_STATEMENT , DROP_STATEMENT ,
  EXPORT_STATEMENT , PRAGMA_STATEMENT , VACUUM_STATEMENT , CALL_STATEMENT ,
  SET_STATEMENT , LOAD_STATEMENT , RELATION_STATEMENT , EXTENSION_STATEMENT ,
  LOGICAL_PLAN_STATEMENT , ATTACH_STATEMENT , DETACH_STATEMENT , MULTI_STATEMENT ,
  COPY_DATABASE_STATEMENT , UPDATE_EXTENSIONS_STATEMENT , MERGE_INTO_STATEMENT
}
 
enum class  StatementReturnType : uint8_t { QUERY_RESULT , CHANGED_ROWS , NOTHING }
 
enum class  ArrowOffsetSize : uint8_t { REGULAR , LARGE }
 
enum class  ArrowFormatVersion : uint8_t {
  V1_0 = 10 , V1_1 = 11 , V1_2 = 12 , V1_3 = 13 ,
  V1_4 = 14 , V1_5 = 15
}
 
enum class  QueryResultType : uint8_t { MATERIALIZED_RESULT , STREAM_RESULT , PENDING_RESULT , ARROW_RESULT }
 
enum class  PendingExecutionResult : uint8_t {
  RESULT_READY , RESULT_NOT_READY , EXECUTION_ERROR , BLOCKED ,
  NO_TASKS_AVAILABLE , EXECUTION_FINISHED
}
 
enum class  ExplainFormat : uint8_t {
  DEFAULT , TEXT , JSON , HTML ,
  GRAPHVIZ , YAML , MERMAID
}
 
enum class  OperatorResultType : uint8_t { NEED_MORE_INPUT , HAVE_MORE_OUTPUT , FINISHED , BLOCKED }
 
enum class  OperatorFinalizeResultType : uint8_t { HAVE_MORE_OUTPUT , FINISHED }
 
enum class  OperatorFinalResultType : uint8_t { FINISHED , BLOCKED }
 OperatorFinalResultType is used for the final call. More...
 
enum class  SourceResultType : uint8_t { HAVE_MORE_OUTPUT , FINISHED , BLOCKED }
 
enum class  AsyncResultType : uint8_t {
  INVALID , IMPLICIT , HAVE_MORE_OUTPUT , FINISHED ,
  BLOCKED
}
 AsyncResultType is used to indicate the result of a AsyncResult, in the context of a wider operation being executed. More...
 
enum class  SinkResultType : uint8_t { NEED_MORE_INPUT , FINISHED , BLOCKED }
 
enum class  SinkCombineResultType : uint8_t { FINISHED , BLOCKED }
 
enum class  SinkFinalizeType : uint8_t { READY , NO_OUTPUT_POSSIBLE , BLOCKED }
 
enum class  SinkNextBatchType : uint8_t { READY , BLOCKED }
 
enum class  OrderPreservationType : uint8_t { NO_ORDER , INSERTION_ORDER , FIXED_ORDER }
 
enum class  PhysicalOperatorType : uint8_t {
  INVALID , ORDER_BY , LIMIT , STREAMING_LIMIT ,
  LIMIT_PERCENT , TOP_N , WINDOW , UNNEST ,
  UNGROUPED_AGGREGATE , HASH_GROUP_BY , PERFECT_HASH_GROUP_BY , PARTITIONED_AGGREGATE ,
  FILTER , PROJECTION , COPY_TO_FILE , BATCH_COPY_TO_FILE ,
  RESERVOIR_SAMPLE , STREAMING_SAMPLE , STREAMING_WINDOW , PIVOT ,
  COPY_DATABASE , TABLE_SCAN , DUMMY_SCAN , COLUMN_DATA_SCAN ,
  CHUNK_SCAN , RECURSIVE_CTE_SCAN , RECURSIVE_RECURRING_CTE_SCAN , CTE_SCAN ,
  DELIM_SCAN , EXPRESSION_SCAN , POSITIONAL_SCAN , BLOCKWISE_NL_JOIN ,
  NESTED_LOOP_JOIN , HASH_JOIN , CROSS_PRODUCT , PIECEWISE_MERGE_JOIN ,
  IE_JOIN , LEFT_DELIM_JOIN , RIGHT_DELIM_JOIN , POSITIONAL_JOIN ,
  ASOF_JOIN , UNION , RECURSIVE_CTE , RECURSIVE_KEY_CTE ,
  CTE , INSERT , BATCH_INSERT , DELETE_OPERATOR ,
  UPDATE , MERGE_INTO , CREATE_TABLE , CREATE_TABLE_AS ,
  BATCH_CREATE_TABLE_AS , CREATE_INDEX , ALTER , CREATE_SEQUENCE ,
  CREATE_VIEW , CREATE_SCHEMA , CREATE_MACRO , DROP ,
  PRAGMA , TRANSACTION , CREATE_TYPE , ATTACH ,
  DETACH , EXPLAIN , EXPLAIN_ANALYZE , EMPTY_RESULT ,
  EXECUTE , PREPARE , VACUUM , EXPORT ,
  SET , SET_VARIABLE , LOAD , INOUT_FUNCTION ,
  RESULT_COLLECTOR , RESET , EXTENSION , VERIFY_VECTOR ,
  UPDATE_EXTENSIONS , CREATE_SECRET
}
 
enum class  PartitionInfo { NONE , REQUIRES_BATCH_INDEX }
 
enum class  TableFilterType : uint8_t {
  CONSTANT_COMPARISON = 0 , IS_NULL = 1 , IS_NOT_NULL = 2 , CONJUNCTION_OR = 3 ,
  CONJUNCTION_AND = 4 , STRUCT_EXTRACT = 5 , OPTIONAL_FILTER = 6 , IN_FILTER = 7 ,
  DYNAMIC_FILTER = 8 , EXPRESSION_FILTER = 9 , BLOOM_FILTER = 10
}
 
enum class  LogicalOperatorType : uint8_t {
  LOGICAL_INVALID = 0 , LOGICAL_PROJECTION = 1 , LOGICAL_FILTER = 2 , LOGICAL_AGGREGATE_AND_GROUP_BY = 3 ,
  LOGICAL_WINDOW = 4 , LOGICAL_UNNEST = 5 , LOGICAL_LIMIT = 6 , LOGICAL_ORDER_BY = 7 ,
  LOGICAL_TOP_N = 8 , LOGICAL_COPY_TO_FILE = 10 , LOGICAL_DISTINCT = 11 , LOGICAL_SAMPLE = 12 ,
  LOGICAL_PIVOT = 14 , LOGICAL_COPY_DATABASE = 15 , LOGICAL_GET = 25 , LOGICAL_CHUNK_GET = 26 ,
  LOGICAL_DELIM_GET = 27 , LOGICAL_EXPRESSION_GET = 28 , LOGICAL_DUMMY_SCAN = 29 , LOGICAL_EMPTY_RESULT = 30 ,
  LOGICAL_CTE_REF = 31 , LOGICAL_JOIN = 50 , LOGICAL_DELIM_JOIN = 51 , LOGICAL_COMPARISON_JOIN = 52 ,
  LOGICAL_ANY_JOIN = 53 , LOGICAL_CROSS_PRODUCT = 54 , LOGICAL_POSITIONAL_JOIN = 55 , LOGICAL_ASOF_JOIN = 56 ,
  LOGICAL_DEPENDENT_JOIN = 57 , LOGICAL_UNION = 75 , LOGICAL_EXCEPT = 76 , LOGICAL_INTERSECT = 77 ,
  LOGICAL_RECURSIVE_CTE = 78 , LOGICAL_MATERIALIZED_CTE = 79 , LOGICAL_INSERT = 100 , LOGICAL_DELETE = 101 ,
  LOGICAL_UPDATE = 102 , LOGICAL_MERGE_INTO = 103 , LOGICAL_ALTER = 125 , LOGICAL_CREATE_TABLE = 126 ,
  LOGICAL_CREATE_INDEX = 127 , LOGICAL_CREATE_SEQUENCE = 128 , LOGICAL_CREATE_VIEW = 129 , LOGICAL_CREATE_SCHEMA = 130 ,
  LOGICAL_CREATE_MACRO = 131 , LOGICAL_DROP = 132 , LOGICAL_PRAGMA = 133 , LOGICAL_TRANSACTION = 134 ,
  LOGICAL_CREATE_TYPE = 135 , LOGICAL_ATTACH = 136 , LOGICAL_DETACH = 137 , LOGICAL_EXPLAIN = 150 ,
  LOGICAL_PREPARE = 175 , LOGICAL_EXECUTE = 176 , LOGICAL_EXPORT = 177 , LOGICAL_VACUUM = 178 ,
  LOGICAL_SET = 179 , LOGICAL_LOAD = 180 , LOGICAL_RESET = 181 , LOGICAL_UPDATE_EXTENSIONS = 182 ,
  LOGICAL_CREATE_SECRET = 190 , LOGICAL_EXTENSION_OPERATOR = 255
}
 
enum class  TaskExecutionMode : uint8_t { PROCESS_ALL , PROCESS_PARTIAL }
 
enum class  TaskExecutionResult : uint8_t { TASK_FINISHED , TASK_NOT_FINISHED , TASK_ERROR , TASK_BLOCKED }
 
enum class  InterruptMode : uint8_t { NO_INTERRUPTS , TASK , BLOCKING }
 
enum class  OperatorCachingMode : uint8_t { NONE , PARTITIONED , ORDERED , UNORDERED }
 
enum class  TablePartitionInfo : uint8_t { NOT_PARTITIONED , SINGLE_VALUE_PARTITIONS , OVERLAPPING_PARTITIONS , DISJOINT_PARTITIONS }
 How a table is partitioned by a given set of columns. More...
 
enum class  CountType { COUNT_EXACT , COUNT_APPROXIMATE }
 
enum class  InsertedScanType { STANDARD , ALL_ROWS }
 
enum class  DeletedScanType { STANDARD , INCLUDE_ALL_DELETED , OMIT_COMMITTED_DELETES }
 
enum class  UpdateScanType { STANDARD , DISALLOW_UPDATES }
 
enum class  TableScanType { TABLE_SCAN_ALL_ROWS = 1 , TABLE_SCAN_OMIT_PERMANENTLY_DELETED = 2 , TABLE_SCAN_COMMITTED_ROWS = 3 }
 
enum class  ChunkInfoType : uint8_t { CONSTANT_INFO , VECTOR_INFO , EMPTY_INFO }
 
enum class  CheckpointWALAction { DELETE_WAL , DONT_DELETE_WAL }
 
enum class  CheckpointAction { CHECKPOINT_IF_REQUIRED , ALWAYS_CHECKPOINT }
 
enum class  CheckpointType { FULL_CHECKPOINT , CONCURRENT_CHECKPOINT , VACUUM_ONLY }
 
enum class  StorageLockType { SHARED = 0 , EXCLUSIVE = 1 }
 
enum class  OrderByStatistics : uint8_t { MIN , MAX }
 
enum class  OrderByColumnType : uint8_t { NUMERIC , STRING }
 
enum class  AsyncResultsExecutionMode : uint8_t { SYNCHRONOUS , TASK_EXECUTOR }
 
enum class  ScanType : uint8_t { TABLE , PARQUET , EXTERNAL }
 
enum class  TableFunctionInitialization { INITIALIZE_ON_EXECUTE , INITIALIZE_ON_SCHEDULE }
 When to call init_global to initialize the table function. More...
 
enum class  JoinType : uint8_t {
  INVALID = 0 , LEFT = 1 , RIGHT = 2 , INNER = 3 ,
  OUTER = 4 , SEMI = 5 , ANTI = 6 , MARK = 7 ,
  SINGLE = 8 , RIGHT_SEMI = 9 , RIGHT_ANTI = 10
}
 
enum class  RelationType : uint8_t {
  INVALID_RELATION , TABLE_RELATION , PROJECTION_RELATION , FILTER_RELATION ,
  EXPLAIN_RELATION , CROSS_PRODUCT_RELATION , JOIN_RELATION , AGGREGATE_RELATION ,
  SET_OPERATION_RELATION , DISTINCT_RELATION , LIMIT_RELATION , ORDER_RELATION ,
  CREATE_VIEW_RELATION , CREATE_TABLE_RELATION , INSERT_RELATION , VALUE_LIST_RELATION ,
  MATERIALIZED_RELATION , DELETE_RELATION , UPDATE_RELATION , WRITE_CSV_RELATION ,
  WRITE_PARQUET_RELATION , READ_CSV_RELATION , SUBQUERY_RELATION , TABLE_FUNCTION_RELATION ,
  VIEW_RELATION , QUERY_RELATION , DELIM_JOIN_RELATION , DELIM_GET_RELATION ,
  EXTENSION_RELATION = 255
}
 
enum class  JoinRefType : uint8_t {
  REGULAR , NATURAL , CROSS , POSITIONAL ,
  ASOF , DEPENDENT
}
 
enum class  ParseInfoType : uint8_t {
  ALTER_INFO , ATTACH_INFO , COPY_INFO , CREATE_INFO ,
  CREATE_SECRET_INFO , DETACH_INFO , DROP_INFO , BOUND_EXPORT_DATA ,
  LOAD_INFO , PRAGMA_INFO , SHOW_SELECT_INFO , TRANSACTION_INFO ,
  VACUUM_INFO , COMMENT_ON_INFO , COMMENT_ON_COLUMN_INFO , COPY_DATABASE_INFO ,
  UPDATE_EXTENSIONS_INFO
}
 
enum class  OnCreateConflict : uint8_t { ERROR_ON_CONFLICT , IGNORE_ON_CONFLICT , REPLACE_ON_CONFLICT , ALTER_ON_CONFLICT }
 
enum class  SequenceInfo : uint8_t {
  SEQ_START , SEQ_INC , SEQ_MIN , SEQ_MAX ,
  SEQ_CYCLE , SEQ_OWN
}
 
enum class  AlterType : uint8_t {
  INVALID = 0 , ALTER_TABLE = 1 , ALTER_VIEW = 2 , ALTER_SEQUENCE = 3 ,
  CHANGE_OWNERSHIP = 4 , ALTER_SCALAR_FUNCTION = 5 , ALTER_TABLE_FUNCTION = 6 , SET_COMMENT = 7 ,
  SET_COLUMN_COMMENT = 8 , ALTER_DATABASE = 9
}
 
enum class  ConstraintType : uint8_t {
  INVALID = 0 , NOT_NULL = 1 , CHECK = 2 , UNIQUE = 3 ,
  FOREIGN_KEY = 4
}
 
enum class  ForeignKeyType : uint8_t { FK_TYPE_PRIMARY_KEY_TABLE = 0 , FK_TYPE_FOREIGN_KEY_TABLE = 1 , FK_TYPE_SELF_REFERENCE_TABLE = 2 }
 
enum class  AlterForeignKeyType : uint8_t { AFT_ADD = 0 , AFT_DELETE = 1 }
 
enum class  AlterTableType : uint8_t {
  INVALID = 0 , RENAME_COLUMN = 1 , RENAME_TABLE = 2 , ADD_COLUMN = 3 ,
  REMOVE_COLUMN = 4 , ALTER_COLUMN_TYPE = 5 , SET_DEFAULT = 6 , FOREIGN_KEY_CONSTRAINT = 7 ,
  SET_NOT_NULL = 8 , DROP_NOT_NULL = 9 , SET_COLUMN_COMMENT = 10 , ADD_CONSTRAINT = 11 ,
  SET_PARTITIONED_BY = 12 , SET_SORTED_BY = 13 , ADD_FIELD = 14 , REMOVE_FIELD = 15 ,
  RENAME_FIELD = 16 , SET_TABLE_OPTIONS = 17 , RESET_TABLE_OPTIONS = 18
}
 
enum class  AlterViewType : uint8_t { INVALID = 0 , RENAME_VIEW = 1 }
 
enum class  PreparedStatementMode : uint8_t { PREPARE_ONLY , PREPARE_AND_EXECUTE }
 
enum class  ExplainOutputType : uint8_t { ALL = 0 , OPTIMIZED_ONLY = 1 , PHYSICAL_ONLY = 2 }
 
enum class  OptimizerType : uint32_t {
  INVALID = 0 , EXPRESSION_REWRITER = 1 , FILTER_PULLUP = 2 , FILTER_PUSHDOWN = 3 ,
  EMPTY_RESULT_PULLUP = 4 , CTE_FILTER_PUSHER = 5 , REGEX_RANGE = 6 , IN_CLAUSE = 7 ,
  JOIN_ORDER = 8 , DELIMINATOR = 9 , UNNEST_REWRITER = 10 , UNUSED_COLUMNS = 11 ,
  STATISTICS_PROPAGATION = 12 , COMMON_SUBEXPRESSIONS = 13 , COMMON_AGGREGATE = 14 , COLUMN_LIFETIME = 15 ,
  BUILD_SIDE_PROBE_SIDE = 16 , LIMIT_PUSHDOWN = 17 , TOP_N = 18 , COMPRESSED_MATERIALIZATION = 19 ,
  DUPLICATE_GROUPS = 20 , REORDER_FILTER = 21 , SAMPLING_PUSHDOWN = 22 , JOIN_FILTER_PUSHDOWN = 23 ,
  EXTENSION = 24 , MATERIALIZED_CTE = 25 , SUM_REWRITER = 26 , LATE_MATERIALIZATION = 27 ,
  CTE_INLINING = 28 , ROW_GROUP_PRUNER = 29 , TOP_N_WINDOW_ELIMINATION = 30 , COMMON_SUBPLAN = 31 ,
  JOIN_ELIMINATION = 32 , WINDOW_SELF_JOIN = 33
}
 
enum class  MetricGroup : uint8_t {
  ALL , CORE , DEFAULT , EXECUTION ,
  FILE , OPERATOR , OPTIMIZER , PHASE_TIMING ,
  INVALID
}
 
enum class  MetricType : uint8_t {
  CPU_TIME = 2 , CUMULATIVE_CARDINALITY = 4 , CUMULATIVE_ROWS_SCANNED = 7 , EXTRA_INFO = 3 ,
  LATENCY = 11 , QUERY_NAME = 0 , RESULT_SET_SIZE = 10 , ROWS_RETURNED = 12 ,
  BLOCKED_THREAD_TIME = 1 , SYSTEM_PEAK_BUFFER_MEMORY = 14 , SYSTEM_PEAK_TEMP_DIR_SIZE = 15 , TOTAL_MEMORY_ALLOCATED = 91 ,
  ATTACH_LOAD_STORAGE_LATENCY = 92 , ATTACH_REPLAY_WAL_LATENCY = 93 , CHECKPOINT_LATENCY = 94 , COMMIT_LOCAL_STORAGE_LATENCY = 95 ,
  TOTAL_BYTES_READ = 16 , TOTAL_BYTES_WRITTEN = 17 , WAITING_TO_ATTACH_LATENCY = 96 , WAL_REPLAY_ENTRY_COUNT = 97 ,
  WRITE_TO_WAL_LATENCY = 98 , OPERATOR_CARDINALITY = 6 , OPERATOR_NAME = 13 , OPERATOR_ROWS_SCANNED = 8 ,
  OPERATOR_TIMING = 9 , OPERATOR_TYPE = 5 , OPTIMIZER_EXPRESSION_REWRITER = 26 , OPTIMIZER_FILTER_PULLUP = 27 ,
  OPTIMIZER_FILTER_PUSHDOWN = 28 , OPTIMIZER_EMPTY_RESULT_PULLUP = 29 , OPTIMIZER_CTE_FILTER_PUSHER = 30 , OPTIMIZER_REGEX_RANGE = 31 ,
  OPTIMIZER_IN_CLAUSE = 32 , OPTIMIZER_JOIN_ORDER = 33 , OPTIMIZER_DELIMINATOR = 34 , OPTIMIZER_UNNEST_REWRITER = 35 ,
  OPTIMIZER_UNUSED_COLUMNS = 36 , OPTIMIZER_STATISTICS_PROPAGATION = 37 , OPTIMIZER_COMMON_SUBEXPRESSIONS = 38 , OPTIMIZER_COMMON_AGGREGATE = 39 ,
  OPTIMIZER_COLUMN_LIFETIME = 40 , OPTIMIZER_BUILD_SIDE_PROBE_SIDE = 41 , OPTIMIZER_LIMIT_PUSHDOWN = 42 , OPTIMIZER_TOP_N = 43 ,
  OPTIMIZER_COMPRESSED_MATERIALIZATION = 44 , OPTIMIZER_DUPLICATE_GROUPS = 45 , OPTIMIZER_REORDER_FILTER = 46 , OPTIMIZER_SAMPLING_PUSHDOWN = 47 ,
  OPTIMIZER_JOIN_FILTER_PUSHDOWN = 48 , OPTIMIZER_EXTENSION = 49 , OPTIMIZER_MATERIALIZED_CTE = 50 , OPTIMIZER_SUM_REWRITER = 51 ,
  OPTIMIZER_LATE_MATERIALIZATION = 52 , OPTIMIZER_CTE_INLINING = 53 , OPTIMIZER_ROW_GROUP_PRUNER = 54 , OPTIMIZER_TOP_N_WINDOW_ELIMINATION = 55 ,
  OPTIMIZER_COMMON_SUBPLAN = 56 , OPTIMIZER_JOIN_ELIMINATION = 57 , OPTIMIZER_WINDOW_SELF_JOIN = 58 , ALL_OPTIMIZERS = 18 ,
  CUMULATIVE_OPTIMIZER_TIMING = 19 , PHYSICAL_PLANNER = 22 , PHYSICAL_PLANNER_COLUMN_BINDING = 23 , PHYSICAL_PLANNER_CREATE_PLAN = 25 ,
  PHYSICAL_PLANNER_RESOLVE_TYPES = 24 , PLANNER = 20 , PLANNER_BINDING = 21
}
 
enum class  ProfilingParameterNames : uint8_t {
  FORMAT , COVERAGE , SAVE_LOCATION , MODE ,
  METRICS
}
 
enum class  LambdaSyntax : uint8_t { DEFAULT = 0 , ENABLE_SINGLE_ARROW = 1 , DISABLE_SINGLE_ARROW = 2 }
 
enum class  LambdaSyntaxType : uint8_t { SINGLE_ARROW_STORAGE = 0 , SINGLE_ARROW = 1 , LAMBDA_KEYWORD = 2 }
 
enum class  ProfilingCoverage : uint8_t { SELECT = 0 , ALL = 1 }
 
enum class  SetScope : uint8_t {
  AUTOMATIC = 0 , LOCAL = 1 , SESSION = 2 , GLOBAL = 3 ,
  VARIABLE = 4
}
 
enum class  SettingScope : uint8_t { GLOBAL , LOCAL , SECRET , INVALID }
 
enum class  SettingScopeTarget {
  INVALID , GLOBAL_ONLY , LOCAL_ONLY , GLOBAL_DEFAULT ,
  LOCAL_DEFAULT
}
 
enum class  ArrowTypeInfoType : uint8_t {
  LIST , STRUCT , DATE_TIME , STRING ,
  ARRAY , DECIMAL
}
 
enum class  ArrowDateTimeType : uint8_t {
  MILLISECONDS , MICROSECONDS , NANOSECONDS , SECONDS ,
  DAYS , MONTHS , MONTH_DAY_NANO
}
 
enum class  ArrowVariableSizeType : uint8_t { NORMAL , FIXED_SIZE , SUPER_SIZE , VIEW }
 
enum class  ArrowArrayPhysicalType : uint8_t { DICTIONARY_ENCODED , RUN_END_ENCODED , DEFAULT }
 
enum class  DecimalBitWidth : uint8_t { DECIMAL_32 , DECIMAL_64 , DECIMAL_128 , DECIMAL_256 }
 
enum class  AccessMode : uint8_t { UNDEFINED = 0 , AUTOMATIC = 1 , READ_ONLY = 2 , READ_WRITE = 3 }
 
enum class  CacheValidationMode : uint8_t { VALIDATE_ALL = 0 , VALIDATE_REMOTE = 1 , NO_VALIDATION = 2 }
 
enum class  ThreadPinMode : uint8_t { OFF = 0 , ON = 1 , AUTO = 2 }
 
enum class  BitpackingMode : uint8_t {
  INVALID , AUTO , CONSTANT , CONSTANT_DELTA ,
  DELTA_FOR , FOR
}
 
enum class  LogLevel : uint8_t {
  LOG_TRACE = 10 , LOG_DEBUG = 20 , LOG_INFO = 30 , LOG_WARNING = 40 ,
  LOG_ERROR = 50 , LOG_FATAL = 60
}
 
enum class  LogContextScope : uint8_t { DATABASE = 10 , CONNECTION = 20 , THREAD = 30 }
 
enum class  LogMode : uint8_t { LEVEL_ONLY = 0 , DISABLE_SELECTED = 1 , ENABLE_SELECTED = 2 }
 
enum class  LoggingTargetTable : uint8_t { ALL_LOGS , LOG_ENTRIES , LOG_CONTEXTS }
 
enum class  AttachedDatabaseType { READ_WRITE_DATABASE , READ_ONLY_DATABASE , SYSTEM_DATABASE , TEMP_DATABASE }
 
enum class  AttachVisibility { SHOWN , HIDDEN }
 
enum class  RecoveryMode : uint8_t { DEFAULT = 0 , NO_WAL_WRITES = 1 }
 
enum class  DatabaseCloseAction { CHECKPOINT , TRY_CHECKPOINT }
 
enum class  TransactionState { UNCOMMITTED , COMMITTED , ROLLED_BACK }
 
enum class  InsertDatabasePathResult { SUCCESS , ALREADY_EXISTS }
 
enum class  RebindQueryInfo { DO_NOT_REBIND , ATTEMPT_TO_REBIND }
 
enum class  StreamExecutionResult : uint8_t {
  CHUNK_READY , CHUNK_NOT_READY , EXECUTION_ERROR , EXECUTION_CANCELLED ,
  BLOCKED , NO_TASKS_AVAILABLE , EXECUTION_FINISHED
}
 
enum class  TransactionType : uint8_t { INVALID , BEGIN_TRANSACTION , COMMIT , ROLLBACK }
 
enum class  TransactionModifierType : uint8_t { TRANSACTION_DEFAULT_MODIFIER , TRANSACTION_READ_ONLY , TRANSACTION_READ_WRITE }
 
enum class  TransactionInvalidationPolicy : uint8_t { STANDARD_POLICY , ALL_ERRORS_INVALIDATE_TRANSACTION }
 
enum class  OutputStream : uint8_t { STREAM_STDOUT = 1 , STREAM_STDERR = 2 }
 
enum class  ExplainType : uint8_t { EXPLAIN_STANDARD , EXPLAIN_ANALYZE }
 
enum class  ExtensionABIType : uint8_t { UNKNOWN = 0 , CPP = 1 , C_STRUCT = 2 , C_STRUCT_UNSTABLE = 3 }
 
enum class  PragmaType : uint8_t { PRAGMA_STATEMENT , PRAGMA_CALL }
 
enum class  MemoryTag : uint8_t {
  BASE_TABLE = 0 , HASH_TABLE = 1 , PARQUET_READER = 2 , CSV_READER = 3 ,
  ORDER_BY = 4 , ART_INDEX = 5 , COLUMN_DATA = 6 , METADATA = 7 ,
  OVERFLOW_STRINGS = 8 , IN_MEMORY_TABLE = 9 , ALLOCATOR = 10 , EXTENSION = 11 ,
  TRANSACTION = 12 , EXTERNAL_FILE_CACHE = 13 , WINDOW = 14 , OBJECT_CACHE = 15 ,
  UNKNOWN = 16
}
 
enum class  ConvertToPersistentMode { DESTRUCTIVE , THREAD_SAFE }
 
enum class  DestroyBufferUpon : uint8_t { BLOCK = 0 , EVICTION = 1 , UNPIN = 2 }
 
enum class  BlockState : uint8_t { BLOCK_UNLOADED = 0 , BLOCK_LOADED = 1 }
 
enum class  StrTimeSpecifier : uint8_t {
  ABBREVIATED_WEEKDAY_NAME = 0 , FULL_WEEKDAY_NAME = 1 , WEEKDAY_DECIMAL = 2 , DAY_OF_MONTH_PADDED = 3 ,
  DAY_OF_MONTH = 4 , ABBREVIATED_MONTH_NAME = 5 , FULL_MONTH_NAME = 6 , MONTH_DECIMAL_PADDED = 7 ,
  MONTH_DECIMAL = 8 , YEAR_WITHOUT_CENTURY_PADDED = 9 , YEAR_WITHOUT_CENTURY = 10 , YEAR_DECIMAL = 11 ,
  HOUR_24_PADDED = 12 , HOUR_24_DECIMAL = 13 , HOUR_12_PADDED = 14 , HOUR_12_DECIMAL = 15 ,
  AM_PM = 16 , MINUTE_PADDED = 17 , MINUTE_DECIMAL = 18 , SECOND_PADDED = 19 ,
  SECOND_DECIMAL = 20 , MICROSECOND_PADDED = 21 , MILLISECOND_PADDED = 22 , UTC_OFFSET = 23 ,
  TZ_NAME = 24 , DAY_OF_YEAR_PADDED = 25 , DAY_OF_YEAR_DECIMAL = 26 , WEEK_NUMBER_PADDED_SUN_FIRST ,
  WEEK_NUMBER_PADDED_MON_FIRST , LOCALE_APPROPRIATE_DATE_AND_TIME , LOCALE_APPROPRIATE_DATE = 30 , LOCALE_APPROPRIATE_TIME = 31 ,
  NANOSECOND_PADDED = 32 , YEAR_ISO , WEEKDAY_ISO = 34 , WEEK_NUMBER_ISO = 35
}
 
enum class  NewLineIdentifier : uint8_t { SINGLE_N = 1 , CARRY_ON = 2 , NOT_SET = 3 , SINGLE_R = 4 }
 
enum class  PartitionedColumnDataType : uint8_t { INVALID , RADIX , HIVE }
 
enum class  DebugVectorVerification : uint8_t {
  NONE , DICTIONARY_EXPRESSION , DICTIONARY_OPERATOR , CONSTANT_OPERATOR ,
  SEQUENCE_OPERATOR , NESTED_SHUFFLE , VARIANT_VECTOR
}
 
enum class  IndexConstraintType : uint8_t { NONE = 0 , UNIQUE = 1 , PRIMARY = 2 , FOREIGN = 3 }
 
enum class  DeprecatedIndexType : uint8_t { INVALID = 0 , ART = 1 , EXTENSION = 100 }
 
enum class  SampleType : uint8_t { BLOCKING_SAMPLE = 0 , RESERVOIR_SAMPLE = 1 , RESERVOIR_PERCENTAGE_SAMPLE = 2 }
 
enum class  SamplingState : uint8_t { RANDOM = 0 , RESERVOIR = 1 }
 
enum class  HLLStorageType : uint8_t { HLL_V1 = 1 , HLL_V2 = 2 }
 
enum class  ScanVectorType { SCAN_ENTIRE_VECTOR , SCAN_FLAT_VECTOR }
 
enum class  CompressionValidity : uint8_t { REQUIRES_VALIDITY , NO_VALIDITY_REQUIRED }
 
enum class  ColumnSegmentType : uint8_t { TRANSIENT , PERSISTENT }
 
enum class  ColumnDataType { MAIN_TABLE , INITIAL_TRANSACTION_LOCAL , TRANSACTION_LOCAL , CHECKPOINT_TARGET }
 
enum class  ExtraPersistentColumnDataType : uint8_t { INVALID = 0 , VARIANT = 1 , GEOMETRY = 2 }
 
enum class  BufferedIndexReplay : uint8_t { INSERT_ENTRY = 0 , DEL_ENTRY = 1 }
 
enum class  IndexAppendMode : uint8_t { DEFAULT = 0 , IGNORE_DUPLICATES = 1 , INSERT_DUPLICATES = 2 }
 
enum class  DeltaIndexType {
  NONE , LOCAL_APPEND , LOCAL_DELETE , ADDED_DURING_CHECKPOINT ,
  REMOVED_DURING_CHECKPOINT , DELETED_ROWS_IN_USE
}
 
enum class  IndexBindState : uint8_t { UNBOUND , BINDING , BOUND }
 IndexBindState to transition index binding phases preventing lock order inversion. More...
 
enum class  IndexRemovalType {
  MAIN_INDEX , MAIN_INDEX_ONLY , REVERT_MAIN_INDEX , REVERT_MAIN_INDEX_ONLY ,
  DELETED_ROWS_IN_USE
}
 
enum class  OptimisticWritePartialManagers { PER_COLUMN , GLOBAL }
 
enum class  DataTableVersion { MAIN_TABLE , ALTERED , DROPPED }
 
enum class  ValueComparisonResult { PRUNE_LEFT , PRUNE_RIGHT , UNSATISFIABLE_CONDITION , PRUNE_NOTHING }
 
enum class  FilterResult { UNSATISFIABLE , SUCCESS , UNSUPPORTED }
 
enum class  FilterPushdownResult { NO_PUSHDOWN , PUSHED_DOWN_PARTIALLY , PUSHED_DOWN_FULLY }
 
enum class  MultiFileColumnMappingMode : uint8_t { BY_NAME , BY_FIELD_ID }
 
enum class  SecretPersistType : uint8_t { DEFAULT , TEMPORARY , PERSISTENT }
 Whether a secret is persistent or temporary. More...
 
enum class  SecretDisplayType : uint8_t { REDACTED , UNREDACTED }
 Determines whether the secrets are allowed to be shown. More...
 
enum class  SecretSerializationType : uint8_t { CUSTOM = 0 , KEY_VALUE_SECRET = 1 }
 
enum class  CTEMaterialize : uint8_t { CTE_MATERIALIZE_DEFAULT = 1 , CTE_MATERIALIZE_ALWAYS = 2 , CTE_MATERIALIZE_NEVER = 3 }
 
enum class  QueryNodeType : uint8_t {
  SELECT_NODE = 1 , SET_OPERATION_NODE = 2 , BOUND_SUBQUERY_NODE = 3 , RECURSIVE_CTE_NODE = 4 ,
  CTE_NODE = 5 , STATEMENT_NODE = 6
}
 
enum class  TableReferenceType : uint8_t {
  INVALID = 0 , BASE_TABLE = 1 , SUBQUERY = 2 , JOIN = 3 ,
  TABLE_FUNCTION = 5 , EXPRESSION_LIST = 6 , CTE = 7 , EMPTY_FROM = 8 ,
  PIVOT = 9 , SHOW_REF = 10 , COLUMN_DATA = 11 , DELIM_GET = 12 ,
  BOUND_TABLE_REF = 13
}
 
enum class  SampleMethod : uint8_t { SYSTEM_SAMPLE = 0 , BERNOULLI_SAMPLE = 1 , RESERVOIR_SAMPLE = 2 , INVALID = 255 }
 
enum class  ExtensionInstallMode : uint8_t {
  UNKNOWN = 0 , REPOSITORY = 1 , CUSTOM_PATH = 2 , STATICALLY_LINKED = 3 ,
  NOT_INSTALLED = 4
}
 
enum class  AppenderType : uint8_t { LOGICAL , PHYSICAL }
 
enum class  CacheBehavior { AUTOMATIC , ALWAYS_CACHE , NEVER_CACHE }
 
enum class  CAPIResultSetType : uint8_t { CAPI_RESULT_TYPE_NONE = 0 , CAPI_RESULT_TYPE_MATERIALIZED , CAPI_RESULT_TYPE_STREAMING , CAPI_RESULT_TYPE_DEPRECATED }
 
enum class  CopyToType : uint8_t { COPY_TO_FILE , EXPORT_DATABASE }
 
enum class  CopyOptionMode { WRITE_ONLY , READ_ONLY , READ_WRITE }
 
enum class  CopyFunctionExecutionMode { REGULAR_COPY_TO_FILE , PARALLEL_COPY_TO_FILE , BATCH_COPY_TO_FILE }
 
enum class  CopyFunctionReturnType : uint8_t { CHANGED_ROWS = 0 , CHANGED_ROWS_AND_FILE_LIST = 1 , WRITTEN_FILE_STATISTICS = 2 }
 

Functions

const string & GetDefaultCatalog (CatalogEntryRetriever &retriever)
 
vector< CatalogSearchEntryGetCatalogEntries (CatalogEntryRetriever &retriever, const string &catalog, const string &schema)
 
void FindMinimalQualification (CatalogEntryRetriever &retriever, const string &catalog_name, const string &schema_name, bool &qualify_database, bool &qualify_schema)
 
static bool IsAutoloadableFunction (CatalogType type)
 
bool IsTableFunction (CatalogType type)
 
bool IsScalarFunction (CatalogType type)
 
static bool CompareCatalogTypes (CatalogType type_a, CatalogType type_b)
 
static void ThrowDefaultTableAmbiguityException (CatalogEntryLookup &base_lookup, CatalogEntryLookup &default_table, const string &name)
 
static void FindForeignKeyInformation (TableCatalogEntry &table, AlterForeignKeyType alter_fk_type, vector< unique_ptr< AlterForeignKeyInfo > > &fk_arrays)
 
IndexStorageInfo GetIndexInfo (const IndexConstraintType type, const bool v1_0_0_storage, unique_ptr< CreateInfo > &info, const idx_t id)
 
static void CheckTypeIsSupported (const LogicalType &logical_type, AttachedDatabase &db)
 
static void RenameExpression (ParsedExpression &root_expr, RenameColumnInfo &info)
 
unique_ptr< ParsedExpressionPackExpression (unique_ptr< ParsedExpression > expr, string name)
 
static child_list_t< LogicalTypeGetChildList (const LogicalType &type)
 
static LogicalType ConstructNewType (const LogicalType &original_type, child_list_t< LogicalType > new_child_types)
 
Value ConstructMapping (const string &name, const LogicalType &type)
 
StructMappingInfo AddFieldToStruct (const LogicalType &type, const vector< string > &column_path, const ColumnDefinition &new_field, idx_t depth=0)
 
DroppedFieldMapping DropFieldFromStruct (const LogicalType &type, const vector< string > &column_path, idx_t depth)
 
DroppedFieldMapping RenameFieldFromStruct (const LogicalType &type, const vector< string > &column_path, const string &new_name, idx_t depth)
 
static bool IsDependencyEntry (CatalogEntry &entry)
 
static bool DefaultFunctionMatches (const DefaultMacro &macro, const string &schema, const string &name)
 
static unique_ptr< CreateFunctionInfoGetDefaultFunction (const string &input_schema, const string &input_name)
 
static unique_ptr< CreateFunctionInfoGetDefaultTableFunction (const string &input_schema, const string &input_name)
 
static unique_ptr< CreateViewInfoGetDefaultView (ClientContext &context, const string &input_schema, const string &input_name)
 
static string GetSchema (CatalogEntry &entry)
 
static void AssertMangledName (const string &mangled_name, idx_t expected_null_bytes)
 
static bool CascadeDrop (bool cascade, const DependencyDependentFlags &flags)
 
static string EntryToString (CatalogEntryInfo &info)
 
static string FormatString (const MangledEntryName &mangled)
 
template<class T >
NullValue ()
 Placeholder to insert in Vectors or to use for hashing NULLs.
 
template<>
const charNullValue ()
 
template<>
string_t NullValue ()
 
template<>
charNullValue ()
 
template<>
string NullValue ()
 
template<>
interval_t NullValue ()
 
template<>
hugeint_t NullValue ()
 
template<>
float NullValue ()
 
template<>
double NullValue ()
 
template<class SRC , class DST >
static string CastExceptionText (SRC input)
 
static bool TryCastStringBool (const char *input_data, idx_t input_size, bool &result, bool strict)
 
static void MallocTrim (idx_t pad)
 
template<class OP >
static void InitializeAppenderForType (ArrowAppendData &append_data)
 
static void InitializeFunctionPointers (ArrowAppendData &append_data, const LogicalType &type)
 
unsafe_unique_array< charAddName (const string &name)
 
static void ReleaseDuckDBArrowSchema (ArrowSchema *schema)
 
void InitializeChild (ArrowSchema &child, DuckDBArrowSchemaHolder &root_holder, const string &name="")
 
void SetArrowFormat (DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientProperties &options, ClientContext &context)
 
void SetArrowStructFormat (DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientProperties &options, ClientContext &context, bool map_is_parent=false)
 
void SetArrowMapFormat (DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientProperties &options, ClientContext &context)
 
bool SetArrowExtension (DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientContext &context)
 
void FastMemcpy (void *dest, const void *src, const size_t size)
 
int FastMemcmp (const void *str1, const void *str2, const size_t size)
 
void FastMemset (void *ptr, int value, size_t size)
 
ArrowTypeExtension GetArrowExtensionInternal (unordered_map< ArrowExtensionMetadata, ArrowTypeExtension, HashArrowTypeExtension > &type_extensions, ArrowExtensionMetadata info)
 
void DuckDBAssertInternal (bool condition, const char *condition_name, const char *file, int linenr)
 
void PrintBits (const char value)
 
void BignumAddition (data_ptr_t result, int64_t result_end, bool is_target_absolute_bigger, const BignumIntermediate &lhs, const BignumIntermediate &rhs)
 
string ProduceOverUnderFlowError (bool is_result_negative, idx_t actual_start, idx_t data_size)
 
Value ConvertVectorToValue (vector< Value > set)
 
vector< bool > ParseColumnList (const vector< Value > &set, vector< string > &names, const string &option_name)
 
vector< bool > ParseColumnList (const Value &value, vector< string > &names, const string &option_name)
 
vector< idx_tParseColumnsOrdered (const vector< Value > &set, vector< string > &names, const string &loption)
 
vector< idx_tParseColumnsOrdered (const Value &value, vector< string > &names, const string &loption)
 
bool IsWhitespaceEscape (const char c)
 
uint64_t Checksum (uint8_t *buffer, size_t size)
 Compute a checksum over a buffer of size size.
 
hash_t Checksum (uint64_t x)
 
hash_t ChecksumRemainder (void *ptr, size_t len) noexcept
 
bool IsPowerOfTwo (uint64_t v)
 
uint64_t NextPowerOfTwo (uint64_t v)
 
uint64_t PreviousPowerOfTwo (uint64_t v)
 
bool IsInvalidSchema (const string &str)
 
bool IsInvalidCatalog (const string &str)
 
bool IsRowIdColumnId (column_t column_id)
 
bool IsVirtualColumn (column_t column_id)
 
static void ByteReverse (unsigned char *buf, unsigned longs)
 
static void MD5Transform (uint32_t buf[4], const uint32_t in[16])
 
static string TransformNewLine (string new_line)
 
static idx_t GetFileSize (unique_ptr< BufferedFileWriter > &file_writer, idx_t &bytes_written)
 
static void DecryptBuffer (EncryptionState &encryption_state, const_data_ptr_t temp_key, data_ptr_t buffer, idx_t buffer_size, data_ptr_t metadata)
 
const charToString (AggregateHandling value)
 
bool IsBigintDatepart (DatePartSpecifier part_code)
 
DUCKDB_API bool TryGetDatePartSpecifier (const string &specifier, DatePartSpecifier &result)
 
DUCKDB_API DatePartSpecifier GetDatePartSpecifier (const string &specifier)
 
template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation, char decimal_separator = '.'>
static bool IntegerCastLoop (const char *buf, idx_t len, T &result, bool strict)
 
template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation>
static bool IntegerHexCastLoop (const char *buf, idx_t len, T &result, bool strict)
 
template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation>
static bool IntegerBinaryCastLoop (const char *buf, idx_t len, T &result, bool strict)
 
template<class T , bool IS_SIGNED = true, bool ALLOW_EXPONENT = true, class OP = IntegerCastOperation, bool ZERO_INITIALIZE = true, char decimal_separator = '.'>
static bool TryIntegerCast (const char *buf, idx_t len, T &result, bool strict)
 
template<typename T , bool IS_SIGNED = true>
static bool TrySimpleIntegerCast (const char *buf, idx_t len, T &result, bool strict)
 
template<class T , char decimal_separator = '.'>
bool TryDecimalStringCast (string_t input, T &result, CastParameters &parameters, uint8_t width, uint8_t scale)
 
template<class T , char decimal_separator = '.'>
bool TryDecimalStringCast (const char *string_ptr, idx_t string_size, T &result, CastParameters &parameters, uint8_t width, uint8_t scale)
 
template<class T , char decimal_separator = '.'>
bool TryDecimalStringCast (const char *string_ptr, idx_t string_size, T &result, uint8_t width, uint8_t scale)
 
template<idx_t REMAINING>
static bool SortKeyLessThan (const uint64_t *const &lhs, const uint64_t *const &rhs)
 
template<>
bool SortKeyLessThan< 1 > (const uint64_t *const &lhs, const uint64_t *const &rhs)
 
const charToString (WindowBoundary value)
 
const StringUtil::EnumStringLiteralGetARTConflictTypeValues ()
 
const StringUtil::EnumStringLiteralGetARTHandlingResultValues ()
 
const StringUtil::EnumStringLiteralGetARTScanHandlingValues ()
 
const StringUtil::EnumStringLiteralGetARTScanResultValues ()
 
const StringUtil::EnumStringLiteralGetAccessModeValues ()
 
const StringUtil::EnumStringLiteralGetAggregateCombineTypeValues ()
 
const StringUtil::EnumStringLiteralGetAggregateDistinctDependentValues ()
 
const StringUtil::EnumStringLiteralGetAggregateHandlingValues ()
 
const StringUtil::EnumStringLiteralGetAggregateOrderDependentValues ()
 
const StringUtil::EnumStringLiteralGetAggregateTypeValues ()
 
const StringUtil::EnumStringLiteralGetAllowParserOverrideValues ()
 
const StringUtil::EnumStringLiteralGetAlterDatabaseTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterForeignKeyTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterScalarFunctionTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterTableFunctionTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterTableTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterTypeValues ()
 
const StringUtil::EnumStringLiteralGetAlterViewTypeValues ()
 
const StringUtil::EnumStringLiteralGetAppenderTypeValues ()
 
const StringUtil::EnumStringLiteralGetArrowArrayPhysicalTypeValues ()
 
const StringUtil::EnumStringLiteralGetArrowDateTimeTypeValues ()
 
const StringUtil::EnumStringLiteralGetArrowFormatVersionValues ()
 
const StringUtil::EnumStringLiteralGetArrowOffsetSizeValues ()
 
const StringUtil::EnumStringLiteralGetArrowTypeInfoTypeValues ()
 
const StringUtil::EnumStringLiteralGetArrowVariableSizeTypeValues ()
 
const StringUtil::EnumStringLiteralGetAsyncResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetAsyncResultsExecutionModeValues ()
 
const StringUtil::EnumStringLiteralGetBaseColumnPrunerModeValues ()
 
const StringUtil::EnumStringLiteralGetBinderTypeValues ()
 
const StringUtil::EnumStringLiteralGetBindingModeValues ()
 
const StringUtil::EnumStringLiteralGetBitpackingModeValues ()
 
const StringUtil::EnumStringLiteralGetBlockIteratorStateTypeValues ()
 
const StringUtil::EnumStringLiteralGetBlockStateValues ()
 
const StringUtil::EnumStringLiteralGetBufferedIndexReplayValues ()
 
const StringUtil::EnumStringLiteralGetCAPIResultSetTypeValues ()
 
const StringUtil::EnumStringLiteralGetCSVStateValues ()
 
const StringUtil::EnumStringLiteralGetCTEMaterializeValues ()
 
const StringUtil::EnumStringLiteralGetCacheValidationModeValues ()
 
const StringUtil::EnumStringLiteralGetCachingModeValues ()
 
const StringUtil::EnumStringLiteralGetCatalogLookupBehaviorValues ()
 
const StringUtil::EnumStringLiteralGetCatalogTypeValues ()
 
const StringUtil::EnumStringLiteralGetCheckpointAbortValues ()
 
const StringUtil::EnumStringLiteralGetChunkInfoTypeValues ()
 
const StringUtil::EnumStringLiteralGetColumnDataAllocatorTypeValues ()
 
const StringUtil::EnumStringLiteralGetColumnDataScanPropertiesValues ()
 
const StringUtil::EnumStringLiteralGetColumnIndexTypeValues ()
 
const StringUtil::EnumStringLiteralGetColumnSegmentTypeValues ()
 
const StringUtil::EnumStringLiteralGetCompressedMaterializationDirectionValues ()
 
const StringUtil::EnumStringLiteralGetCompressionTypeValues ()
 
const StringUtil::EnumStringLiteralGetCompressionValidityValues ()
 
const StringUtil::EnumStringLiteralGetConflictManagerModeValues ()
 
const StringUtil::EnumStringLiteralGetConstraintTypeValues ()
 
const StringUtil::EnumStringLiteralGetCoordinateReferenceSystemTypeValues ()
 
const StringUtil::EnumStringLiteralGetCopyFunctionReturnTypeValues ()
 
const StringUtil::EnumStringLiteralGetCopyOverwriteModeValues ()
 
const StringUtil::EnumStringLiteralGetCopyToTypeValues ()
 
const StringUtil::EnumStringLiteralGetDataFileTypeValues ()
 
const StringUtil::EnumStringLiteralGetDateCastResultValues ()
 
const StringUtil::EnumStringLiteralGetDatePartSpecifierValues ()
 
const StringUtil::EnumStringLiteralGetDebugInitializeValues ()
 
const StringUtil::EnumStringLiteralGetDebugVectorVerificationValues ()
 
const StringUtil::EnumStringLiteralGetDecimalBitWidthValues ()
 
const StringUtil::EnumStringLiteralGetDefaultOrderByNullTypeValues ()
 
const StringUtil::EnumStringLiteralGetDependencyEntryTypeValues ()
 
const StringUtil::EnumStringLiteralGetDeprecatedIndexTypeValues ()
 
const StringUtil::EnumStringLiteralGetDeprecatedUsingKeySyntaxValues ()
 
const StringUtil::EnumStringLiteralGetDestroyBufferUponValues ()
 
const StringUtil::EnumStringLiteralGetDistinctTypeValues ()
 
const StringUtil::EnumStringLiteralGetErrorTypeValues ()
 
const StringUtil::EnumStringLiteralGetExceptionFormatValueTypeValues ()
 
const StringUtil::EnumStringLiteralGetExceptionTypeValues ()
 
const StringUtil::EnumStringLiteralGetExplainFormatValues ()
 
const StringUtil::EnumStringLiteralGetExplainOutputTypeValues ()
 
const StringUtil::EnumStringLiteralGetExplainTypeValues ()
 
const StringUtil::EnumStringLiteralGetExponentTypeValues ()
 
const StringUtil::EnumStringLiteralGetExpressionClassValues ()
 
const StringUtil::EnumStringLiteralGetExpressionTypeValues ()
 
const StringUtil::EnumStringLiteralGetExtensionABITypeValues ()
 
const StringUtil::EnumStringLiteralGetExtensionInstallModeValues ()
 
const StringUtil::EnumStringLiteralGetExtensionLoadResultValues ()
 
const StringUtil::EnumStringLiteralGetExtensionUpdateResultTagValues ()
 
const StringUtil::EnumStringLiteralGetExtraDropInfoTypeValues ()
 
const StringUtil::EnumStringLiteralGetExtraPersistentColumnDataTypeValues ()
 
const StringUtil::EnumStringLiteralGetExtraTypeInfoTypeValues ()
 
const StringUtil::EnumStringLiteralGetFileBufferTypeValues ()
 
const StringUtil::EnumStringLiteralGetFileCompressionTypeValues ()
 
const StringUtil::EnumStringLiteralGetFileExpandResultValues ()
 
const StringUtil::EnumStringLiteralGetFileGlobOptionsValues ()
 
const StringUtil::EnumStringLiteralGetFileLockTypeValues ()
 
const StringUtil::EnumStringLiteralGetFileNameSegmentTypeValues ()
 
const StringUtil::EnumStringLiteralGetFilterPropagateResultValues ()
 
const StringUtil::EnumStringLiteralGetForeignKeyTypeValues ()
 
const StringUtil::EnumStringLiteralGetFunctionCollationHandlingValues ()
 
const StringUtil::EnumStringLiteralGetFunctionErrorsValues ()
 
const StringUtil::EnumStringLiteralGetFunctionNullHandlingValues ()
 
const StringUtil::EnumStringLiteralGetFunctionStabilityValues ()
 
const StringUtil::EnumStringLiteralGetGateStatusValues ()
 
const StringUtil::EnumStringLiteralGetGeometryStorageTypeValues ()
 
const StringUtil::EnumStringLiteralGetGeometryTypeValues ()
 
const StringUtil::EnumStringLiteralGetHLLStorageTypeValues ()
 
const StringUtil::EnumStringLiteralGetHTTPStatusCodeValues ()
 
const StringUtil::EnumStringLiteralGetIndexAppendModeValues ()
 
const StringUtil::EnumStringLiteralGetIndexBindStateValues ()
 
const StringUtil::EnumStringLiteralGetIndexConstraintTypeValues ()
 
const StringUtil::EnumStringLiteralGetInsertColumnOrderValues ()
 
const StringUtil::EnumStringLiteralGetInterruptModeValues ()
 
const StringUtil::EnumStringLiteralGetJoinRefTypeValues ()
 
const StringUtil::EnumStringLiteralGetJoinTypeValues ()
 
const StringUtil::EnumStringLiteralGetKeywordCategoryValues ()
 
const StringUtil::EnumStringLiteralGetLambdaSyntaxValues ()
 
const StringUtil::EnumStringLiteralGetLambdaSyntaxTypeValues ()
 
const StringUtil::EnumStringLiteralGetLimitNodeTypeValues ()
 
const StringUtil::EnumStringLiteralGetLoadTypeValues ()
 
const StringUtil::EnumStringLiteralGetLogContextScopeValues ()
 
const StringUtil::EnumStringLiteralGetLogLevelValues ()
 
const StringUtil::EnumStringLiteralGetLogModeValues ()
 
const StringUtil::EnumStringLiteralGetLoggingTargetTableValues ()
 
const StringUtil::EnumStringLiteralGetLogicalOperatorTypeValues ()
 
const StringUtil::EnumStringLiteralGetLogicalTypeIdValues ()
 
const StringUtil::EnumStringLiteralGetLookupResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetMacroTypeValues ()
 
const StringUtil::EnumStringLiteralGetMapInvalidReasonValues ()
 
const StringUtil::EnumStringLiteralGetMemoryTagValues ()
 
const StringUtil::EnumStringLiteralGetMergeActionConditionValues ()
 
const StringUtil::EnumStringLiteralGetMergeActionTypeValues ()
 
const StringUtil::EnumStringLiteralGetMetaPipelineTypeValues ()
 
const StringUtil::EnumStringLiteralGetMetricGroupValues ()
 
const StringUtil::EnumStringLiteralGetMetricTypeValues ()
 
const StringUtil::EnumStringLiteralGetMultiFileColumnMappingModeValues ()
 
const StringUtil::EnumStringLiteralGetMultiFileFileStateValues ()
 
const StringUtil::EnumStringLiteralGetNTypeValues ()
 
const StringUtil::EnumStringLiteralGetNewLineIdentifierValues ()
 
const StringUtil::EnumStringLiteralGetOnConflictActionValues ()
 
const StringUtil::EnumStringLiteralGetOnCreateConflictValues ()
 
const StringUtil::EnumStringLiteralGetOnEntryNotFoundValues ()
 
const StringUtil::EnumStringLiteralGetOperatorCachingModeValues ()
 
const StringUtil::EnumStringLiteralGetOperatorFinalResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetOperatorFinalizeResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetOperatorResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetOptimizerTypeValues ()
 
const StringUtil::EnumStringLiteralGetOrderByColumnTypeValues ()
 
const StringUtil::EnumStringLiteralGetOrderByNullTypeValues ()
 
const StringUtil::EnumStringLiteralGetOrderByStatisticsValues ()
 
const StringUtil::EnumStringLiteralGetOrderPreservationTypeValues ()
 
const StringUtil::EnumStringLiteralGetOrderTypeValues ()
 
const StringUtil::EnumStringLiteralGetOrdinalityTypeValues ()
 
const StringUtil::EnumStringLiteralGetOutputStreamValues ()
 
const StringUtil::EnumStringLiteralGetParseInfoTypeValues ()
 
const StringUtil::EnumStringLiteralGetParserExtensionResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetPartitionedColumnDataTypeValues ()
 
const StringUtil::EnumStringLiteralGetPartitionedTupleDataTypeValues ()
 
const StringUtil::EnumStringLiteralGetPendingExecutionResultValues ()
 
const StringUtil::EnumStringLiteralGetPhysicalOperatorTypeValues ()
 
const StringUtil::EnumStringLiteralGetPhysicalTableScanExecutionStrategyValues ()
 
const StringUtil::EnumStringLiteralGetPhysicalTypeValues ()
 
const StringUtil::EnumStringLiteralGetPragmaTypeValues ()
 
const StringUtil::EnumStringLiteralGetPreparedParamTypeValues ()
 
const StringUtil::EnumStringLiteralGetPreparedStatementModeValues ()
 
const StringUtil::EnumStringLiteralGetPreserveOrderTypeValues ()
 
const StringUtil::EnumStringLiteralGetProfilerPrintFormatValues ()
 
const StringUtil::EnumStringLiteralGetProfilingCoverageValues ()
 
const StringUtil::EnumStringLiteralGetProfilingParameterNamesValues ()
 
const StringUtil::EnumStringLiteralGetPushdownExtractSupportValues ()
 
const StringUtil::EnumStringLiteralGetQuantileSerializationTypeValues ()
 
const StringUtil::EnumStringLiteralGetQueryNodeTypeValues ()
 
const StringUtil::EnumStringLiteralGetQueryResultMemoryTypeValues ()
 
const StringUtil::EnumStringLiteralGetQueryResultOutputTypeValues ()
 
const StringUtil::EnumStringLiteralGetQueryResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetRecoveryModeValues ()
 
const StringUtil::EnumStringLiteralGetRelationTypeValues ()
 
const StringUtil::EnumStringLiteralGetRenderModeValues ()
 
const StringUtil::EnumStringLiteralGetRequestTypeValues ()
 
const StringUtil::EnumStringLiteralGetResultModifierTypeValues ()
 
const StringUtil::EnumStringLiteralGetSampleMethodValues ()
 
const StringUtil::EnumStringLiteralGetSampleTypeValues ()
 
const StringUtil::EnumStringLiteralGetSamplingStateValues ()
 
const StringUtil::EnumStringLiteralGetScanTypeValues ()
 
const StringUtil::EnumStringLiteralGetSecretDisplayTypeValues ()
 
const StringUtil::EnumStringLiteralGetSecretPersistTypeValues ()
 
const StringUtil::EnumStringLiteralGetSecretSerializationTypeValues ()
 
const StringUtil::EnumStringLiteralGetSequenceInfoValues ()
 
const StringUtil::EnumStringLiteralGetSetOperationTypeValues ()
 
const StringUtil::EnumStringLiteralGetSetScopeValues ()
 
const StringUtil::EnumStringLiteralGetSetTypeValues ()
 
const StringUtil::EnumStringLiteralGetSettingScopeValues ()
 
const StringUtil::EnumStringLiteralGetShowTypeValues ()
 
const StringUtil::EnumStringLiteralGetSimplifiedTokenTypeValues ()
 
const StringUtil::EnumStringLiteralGetSinkCombineResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetSinkFinalizeTypeValues ()
 
const StringUtil::EnumStringLiteralGetSinkNextBatchTypeValues ()
 
const StringUtil::EnumStringLiteralGetSinkResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetSortKeyTypeValues ()
 
const StringUtil::EnumStringLiteralGetSourceResultTypeValues ()
 
const StringUtil::EnumStringLiteralGetStarExpressionTypeValues ()
 
const StringUtil::EnumStringLiteralGetStatementReturnTypeValues ()
 
const StringUtil::EnumStringLiteralGetStatementTypeValues ()
 
const StringUtil::EnumStringLiteralGetStatisticsTypeValues ()
 
const StringUtil::EnumStringLiteralGetStatsInfoValues ()
 
const StringUtil::EnumStringLiteralGetStorageBlockPrefetchValues ()
 
const StringUtil::EnumStringLiteralGetStorageIndexTypeValues ()
 
const StringUtil::EnumStringLiteralGetStrTimeSpecifierValues ()
 
const StringUtil::EnumStringLiteralGetStreamExecutionResultValues ()
 
const StringUtil::EnumStringLiteralGetSubqueryTypeValues ()
 
const StringUtil::EnumStringLiteralGetTableColumnTypeValues ()
 
const StringUtil::EnumStringLiteralGetTableFilterTypeValues ()
 
const StringUtil::EnumStringLiteralGetTablePartitionInfoValues ()
 
const StringUtil::EnumStringLiteralGetTableReferenceTypeValues ()
 
const StringUtil::EnumStringLiteralGetTaskExecutionModeValues ()
 
const StringUtil::EnumStringLiteralGetTaskExecutionResultValues ()
 
const StringUtil::EnumStringLiteralGetTemporaryBufferSizeValues ()
 
const StringUtil::EnumStringLiteralGetTemporaryCompressionLevelValues ()
 
const StringUtil::EnumStringLiteralGetThreadPinModeValues ()
 
const StringUtil::EnumStringLiteralGetTimestampCastResultValues ()
 
const StringUtil::EnumStringLiteralGetTransactionInvalidationPolicyValues ()
 
const StringUtil::EnumStringLiteralGetTransactionModifierTypeValues ()
 
const StringUtil::EnumStringLiteralGetTransactionTypeValues ()
 
const StringUtil::EnumStringLiteralGetTupleDataNestednessTypeValues ()
 
const StringUtil::EnumStringLiteralGetTupleDataPinPropertiesValues ()
 
const StringUtil::EnumStringLiteralGetTupleDataValidityTypeValues ()
 
const StringUtil::EnumStringLiteralGetUndoFlagsValues ()
 
const StringUtil::EnumStringLiteralGetUnionInvalidReasonValues ()
 
const StringUtil::EnumStringLiteralGetVariantChildLookupModeValues ()
 
const StringUtil::EnumStringLiteralGetVariantLogicalTypeValues ()
 
const StringUtil::EnumStringLiteralGetVariantStatsShreddingStateValues ()
 
const StringUtil::EnumStringLiteralGetVariantValueTypeValues ()
 
const StringUtil::EnumStringLiteralGetVectorAuxiliaryDataTypeValues ()
 
const StringUtil::EnumStringLiteralGetVectorBufferTypeValues ()
 
const StringUtil::EnumStringLiteralGetVectorTypeValues ()
 
const StringUtil::EnumStringLiteralGetVerificationTypeValues ()
 
const StringUtil::EnumStringLiteralGetVerifyExistenceTypeValues ()
 
const StringUtil::EnumStringLiteralGetVertexTypeValues ()
 
const StringUtil::EnumStringLiteralGetWALTypeValues ()
 
const StringUtil::EnumStringLiteralGetWindowAggregationModeValues ()
 
const StringUtil::EnumStringLiteralGetWindowBoundaryValues ()
 
const StringUtil::EnumStringLiteralGetWindowExcludeModeValues ()
 
const StringUtil::EnumStringLiteralGetWindowMergeSortStageValues ()
 
string CatalogTypeToString (CatalogType type)
 
CatalogType CatalogTypeFromString (const string &type)
 
vector< string > ListCompressionTypes (void)
 
CompressionAvailabilityResult CompressionTypeIsAvailable (CompressionType compression_type, optional_ptr< StorageManager > storage_manager)
 
string CompressionTypeToString (CompressionType type)
 
string ExpressionTypeToString (ExpressionType type)
 
string ExpressionClassToString (ExpressionClass type)
 
string ExpressionTypeToOperator (ExpressionType type)
 
ExpressionType NegateComparisonExpression (ExpressionType type)
 Negate a comparison expression, turning e.g. = into !=, or < into >=.
 
ExpressionType FlipComparisonExpression (ExpressionType type)
 Flip a comparison expression, turning e.g. < into >, or = into =.
 
ExpressionType OperatorToExpressionType (const string &op)
 
FileCompressionType FileCompressionTypeFromString (const string &input)
 
string CompressionExtensionFromType (const FileCompressionType type)
 
bool IsFileCompressed (string path, FileCompressionType type)
 
bool IsLeftOuterJoin (JoinType type)
 True if join is left or full outer join.
 
bool IsRightOuterJoin (JoinType type)
 True if join is rght or full outer join.
 
bool PropagatesBuildSide (JoinType type)
 Whether the build side is propagated out of the join.
 
bool HasInverseJoinType (JoinType type)
 Whether the JoinType has an inverse.
 
JoinType InverseJoinType (JoinType type)
 Gets the inverse JoinType, e.g., LEFT -> RIGHT.
 
string JoinTypeToString (JoinType type)
 
string LogicalOperatorToString (LogicalOperatorType type)
 
string OptimizerTypeToString (OptimizerType type)
 
vector< string > ListAllOptimizers ()
 
OptimizerType OptimizerTypeFromString (const string &str)
 
string PhysicalOperatorToString (PhysicalOperatorType type)
 
string RelationTypeToString (RelationType type)
 
string StatementTypeToString (StatementType type)
 
string StatementReturnTypeToString (StatementReturnType type)
 
template<class T >
int64_t TemplatedGetPos (const string_map_t< T > &map, const string_t &key)
 
bool PathMatched (const string &path, const string &sub_path)
 
static idx_t GetFileUrlOffset (const string &path)
 
bool SupportsLegacyFilenamePattern (const vector< FileNameSegment > &segments)
 
LegacyFilenamePattern GetLegacyFilenamePattern (const vector< FileNameSegment > &segments)
 
static idx_t GZipConsumeString (QueryContext context, FileHandle &input)
 
static unordered_map< column_t, PartitioningColumnValueGetKnownColumnValues (const string &filename, const HivePartitioningFilterInfo &filter_info)
 
static void ConvertKnownColRefToConstants (ClientContext &context, unique_ptr< Expression > &expr, const unordered_map< column_t, PartitioningColumnValue > &known_column_values, idx_t table_index)
 
template<class T >
static Value GetHiveKeyValue (const T &val)
 
template<class T >
static Value GetHiveKeyValue (const T &val, const LogicalType &type)
 
static Value GetHiveKeyNullValue (const LogicalType &type)
 
template<class T >
static void TemplatedGetHivePartitionValues (Vector &input, vector< HivePartitionKey > &keys, const idx_t col_idx, const idx_t count)
 
static void GetNestedHivePartitionValues (Vector &input, vector< HivePartitionKey > &keys, const idx_t col_idx, const idx_t count)
 
static void GetHivePartitionValuesTypeSwitch (Vector &input, vector< HivePartitionKey > &keys, const idx_t col_idx, const idx_t count)
 
bool IsAscii (const char *input, idx_t n)
 
idx_t LowerLength (const char *input_data, idx_t input_length)
 
void LowerCase (const char *input_data, idx_t input_length, char *result_data)
 
idx_t FindStrInStr (const string_t &haystack_s, const string_t &needle_s)
 
idx_t FindStrInStr (const unsigned char *haystack, idx_t haystack_size, const unsigned char *needle, idx_t needle_size)
 
string_t SubstringASCII (Vector &result, string_t input, int64_t offset, int64_t length)
 
string_t SubstringUnicode (Vector &result, string_t input, int64_t offset, int64_t length)
 
string_t SubstringGrapheme (Vector &result, string_t input, int64_t offset, int64_t length)
 
ScalarFunction GetStringContains ()
 
DUCKDB_API bool Glob (const char *s, idx_t slen, const char *pattern, idx_t plen, bool allow_question_mark=true)
 
static bool IsCharacter (char c)
 
template<class TA , class TR >
static TR Length (TA input)
 
template<class TA , class TR >
static TR GraphemeCount (TA input)
 
static FileMetadata StatsInternal (int fd, const string &path)
 
static string AdditionalProcessInfo (FileSystem &fs, pid_t pid)
 
int RemoveDirectoryRecursive (const char *path)
 
string GetPosixVersionTag (struct stat s)
 
static bool IsCrawl (const string &glob)
 
static bool IsSymbolicLink (const string &path)
 
static bool HasMultipleCrawl (const vector< PathSplit > &splits)
 
static void CrawlDirectoryLevel (FileSystem &fs, const string &path, optional_ptr< vector< OpenFileInfo > > files, std::priority_queue< ExpandDirectory > &directories, idx_t split_index)
 
static void GlobFilesInternal (FileSystem &fs, const string &path, const string &glob, bool match_directory, vector< OpenFileInfo > &result)
 
ScalarFunction GetKeyExtractFunction ()
 
ScalarFunction GetIndexExtractFunction ()
 
ScalarFunction GetExtractAtFunction ()
 
template<class SRC >
data_ptr_t data_ptr_cast (SRC *src)
 
template<class SRC >
const_data_ptr_t const_data_ptr_cast (const SRC *src)
 
template<class SRC >
charchar_ptr_cast (SRC *src)
 
template<class SRC >
const charconst_char_ptr_cast (const SRC *src)
 
template<class SRC >
const unsigned charconst_uchar_ptr_cast (const SRC *src)
 
template<class SRC >
uintptr_t CastPointerToValue (SRC *src)
 
template<class SRC >
uint64_t cast_pointer_to_uint64 (SRC *src)
 
template<class SRC = data_t>
SRCcast_uint64_to_pointer (uint64_t value)
 
void AssertRestrictFunction (const void *left_start, const void *left_end, const void *right_start, const void *right_end, const char *fname, int linenr)
 
static int8_t BSwap (const int8_t &x)
 
static uint8_t BSwap (const uint8_t &x)
 
static uint16_t BSwap (const uint16_t &x)
 
static int16_t BSwap (const int16_t &x)
 
static uint32_t BSwap (const uint32_t &x)
 
static int32_t BSwap (const int32_t &x)
 
static uint64_t BSwap (const uint64_t &x)
 
static int64_t BSwap (const int64_t &x)
 
static uhugeint_t BSwap (const uhugeint_t &x)
 
static hugeint_t BSwap (const hugeint_t &x)
 
static float BSwap (const float &x)
 
static double BSwap (const double &x)
 
template<class T >
staticBSwapIfLE (const T &x)
 
template<class T >
staticBSwapIfBE (const T &x)
 
template<class DATA_TYPE , class... ARGS>
TemplatedUniqueIf< DATA_TYPE, true >::templated_unique_single_t make_uniq (ARGS &&... args)
 
template<class DATA_TYPE , class... ARGS>
shared_ptr< DATA_TYPEmake_shared_ptr (ARGS &&... args)
 
template<class DATA_TYPE , class... ARGS>
TemplatedUniqueIf< DATA_TYPE, false >::templated_unique_single_t make_unsafe_uniq (ARGS &&... args)
 
template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, true > make_uniq_array (size_t n)
 
template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, true > make_uniq_array_uninitialized (size_t n)
 
template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, false > make_unsafe_uniq_array (size_t n)
 
template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, false > make_unsafe_uniq_array_uninitialized (size_t n)
 
template<class DATA_TYPE , class... ARGS>
TemplatedUniqueIf< DATA_TYPE >::TemplatedUniqueArrayKnownBound make_uniq (ARGS &&...)=delete
 
template<typename S , typename T , typename... ARGS>
unique_ptr< S > make_uniq_base (ARGS &&... args)
 
template<typename SRC , typename TGT >
unique_ptr< TGTunique_ptr_cast (unique_ptr< SRC > src)
 
template<typename SRC , typename TGT >
shared_ptr< TGTshared_ptr_cast (shared_ptr< SRC > src)
 
template<class T , class... ARGS>
static duckdb::unique_ptr< T > make_unique (ARGS &&... __args)
 
template<class T , class... ARGS>
static duckdb::shared_ptr< T > make_shared (ARGS &&... __args)
 
template<typename T >
constexprMaxValue (T a, T b)
 
template<typename T >
constexprMinValue (T a, T b)
 
template<typename T >
constexprClampValue (T v, T min, T max)
 Like std::clamp (C++17), returns v if within bounds, else nearest bound.
 
template<typename T >
AbsValue (T a)
 
template<class T , T val = 8, typename = typename std::enable_if<!std::is_pointer<T>::value>::type>
staticAlignValue (T n)
 Align value (ceiling) (not for pointer types)
 
template<class T >
staticAlignValue (T n, T val)
 
template<uintptr_t alignment, class T >
T * AlignPointer (T *addr)
 
template<class T , T val = 8>
constexprAlignValueFloor (T n)
 
template<class T , T val = 8>
static bool ValueIsAligned (T n)
 
template<typename T >
SignValue (T a)
 
template<typename T >
constLoad (const_data_ptr_t ptr)
 
template<typename T >
constLoadLE (const_data_ptr_t ptr)
 
template<typename T >
void Store (const T &val, data_ptr_t ptr)
 
template<class T >
void AssignSharedPointer (shared_ptr< T > &target, const shared_ptr< T > &source)
 
template<class T >
bool RefersToSameObject (const reference< T > &a, const reference< T > &b)
 Returns whether or not two reference wrappers refer to the same object.
 
template<class T >
bool RefersToSameObject (const T &a, const T &b)
 
template<class T , class SRC >
void DynamicCastCheck (const SRC *source)
 
template<class T , typename... ARGS>
buffer_ptr< T > make_buffer (ARGS &&...args)
 
DUCKDB_API string LogicalTypeIdToString (LogicalTypeId type)
 
DUCKDB_API LogicalTypeId TransformStringToLogicalTypeId (const string &str)
 
DUCKDB_API LogicalType TransformStringToLogicalType (const string &str, ClientContext &context)
 
DUCKDB_API string TypeIdToString (PhysicalType type)
 
DUCKDB_API idx_t GetTypeIdSize (PhysicalType type)
 
DUCKDB_API bool TypeIsConstantSize (PhysicalType type)
 
DUCKDB_API bool TypeIsIntegral (PhysicalType type)
 
DUCKDB_API bool TypeIsNumeric (PhysicalType type)
 
DUCKDB_API bool TypeIsInteger (PhysicalType type)
 
bool ApproxEqual (float l, float r)
 
bool ApproxEqual (double l, double r)
 
template<class TO , class FROM >
static void ThrowNumericCastError (FROM in, TO minval, TO maxval)
 
template<class TO , class FROM , class = typename std::enable_if<(NumericLimits<TO>::IsIntegral() && NumericLimits<FROM>::IsIntegral()) || std::is_same<TO, FROM>::value>::type>
TO NumericCast (FROM val)
 
template<class TO , class FROM , class = typename std::enable_if<(NumericLimits<TO>::IsIntegral() && NumericLimits<FROM>::IsIntegral()) || std::is_same<TO, FROM>::value>::type>
TO UnsafeNumericCast (FROM in)
 
template<class TO , class FROM >
TO LossyNumericCast (FROM val)
 
template<class TO >
TO ExactNumericCast (double val)
 
template<class TO >
TO ExactNumericCast (float val)
 
hash_t CombineHash (hash_t left, hash_t right)
 Combine two hashes by XORing them.
 
hash_t MurmurHash64 (uint64_t x)
 
hash_t MurmurHash32 (uint32_t x)
 
template<class T >
hash_t Hash (T value)
 
template<>
DUCKDB_API hash_t Hash (uint64_t val)
 
template<>
DUCKDB_API hash_t Hash (int64_t val)
 
template<>
DUCKDB_API hash_t Hash (hugeint_t val)
 
template<>
DUCKDB_API hash_t Hash (uhugeint_t val)
 
template<>
DUCKDB_API hash_t Hash (float val)
 
template<>
DUCKDB_API hash_t Hash (double val)
 
template<>
DUCKDB_API hash_t Hash (const char *val)
 
template<>
DUCKDB_API hash_t Hash (char *val)
 
template<>
DUCKDB_API hash_t Hash (string_t val)
 
template<>
DUCKDB_API hash_t Hash (interval_t val)
 
template<>
DUCKDB_API hash_t Hash (dtime_tz_t val)
 
DUCKDB_API hash_t Hash (const char *val, size_t size)
 
DUCKDB_API hash_t Hash (uint8_t *val, size_t size)
 
bool operator== (const std::string &lhs, const String &rhs)
 
bool operator== (const char *lhs, const String &rhs)
 
string VectorTypeToString (VectorType type)
 
template<class T >
T * AllocateArray (idx_t size)
 
template<class T >
void DeleteArray (T *ptr, idx_t size)
 
template<typename T , typename... ARGS>
T * AllocateObject (ARGS &&... args)
 
template<typename T >
void DestroyObject (T *ptr)
 
string GetDuckDBVersions (const idx_t version_number)
 
optional_idx GetStorageVersion (const char *version_string)
 
string GetStorageVersionName (const idx_t serialization_version, const bool add_suffix)
 
optional_idx GetSerializationVersion (const char *version_string)
 
vector< string > GetSerializationCandidates ()
 
template<class T >
PhysicalType GetTypeId ()
 Returns the PhysicalType for the given type.
 
template<class T >
bool StorageTypeCompatible (PhysicalType type)
 
template<class T >
bool TypeIsNumber ()
 
template<class T >
bool IsValidType ()
 
template<class T >
bool IsIntegerType ()
 
const charToString (ResultModifierType value)
 
ResultModifierType ResultModifierFromString (const char *value)
 
bool ExtractSourceResultType (AsyncResultType in, SourceResultType &out)
 
const charToString (JoinRefType value)
 
static string CreateRelationAlias (RelationType type, const string &alias)
 
string SampleMethodToString (SampleMethod method)
 
duckdb_type LogicalTypeIdToC (const LogicalTypeId type)
 
LogicalTypeId LogicalTypeIdFromC (const duckdb_type type)
 
idx_t GetCTypeSize (const duckdb_type type)
 
duckdb_statement_type StatementTypeToC (const StatementType type)
 
duckdb_error_type ErrorTypeToC (const ExceptionType type)
 
ExceptionType ErrorTypeFromC (const duckdb_error_type type)
 
duckdb_state DuckDBTranslateResult (unique_ptr< QueryResult > result, duckdb_result *out)
 
bool DeprecatedMaterializeResult (duckdb_result *result)
 
vector< string > GetCopyFunctionReturnNames (CopyFunctionReturnType return_type)
 
vector< LogicalTypeGetCopyFunctionReturnLogicalTypes (CopyFunctionReturnType return_type)
 

Variables

static constexpr ExtensionFunctionEntry EXTENSION_FUNCTIONS []
 
static constexpr ExtensionFunctionOverloadEntry EXTENSION_FUNCTION_OVERLOADS []
 
static constexpr ExtensionEntry EXTENSION_SETTINGS []
 
static constexpr ExtensionEntry EXTENSION_SECRET_TYPES []
 
static constexpr ExtensionEntry EXTENSION_COPY_FUNCTIONS []
 
static constexpr ExtensionEntry EXTENSION_TYPES []
 
static constexpr ExtensionEntry EXTENSION_COLLATIONS []
 
static constexpr ExtensionEntry EXTENSION_FILE_PREFIXES []
 
static constexpr ExtensionEntry EXTENSION_FILE_POSTFIXES []
 
static constexpr ExtensionEntry EXTENSION_FILE_CONTAINS []
 
static constexpr ExtensionEntry EXTENSION_SECRET_PROVIDERS []
 
static constexpr const charAUTOLOADABLE_EXTENSIONS []
 
static const DefaultMacro internal_macros []
 
static const DefaultSchema internal_schemas [] = {{"information_schema"}, {"pg_catalog"}, {nullptr}}
 
static const DefaultTableMacro internal_table_macros []
 
static const DefaultView internal_views []
 
constexpr const char str_nil [4] = {'\200', '\0', '\0', '\0'}
 This could be two bytes but then GCC gives a warning when it's copied.
 
const row_t MAX_ROW_ID = 36028797018960000ULL
 The maximum row identifier used in tables.
 
const row_t MAX_ROW_ID_LOCAL = 72057594037920000ULL
 Transaction-local row IDs start at MAX_ROW_ID.
 
const column_t COLUMN_IDENTIFIER_ROW_ID = UINT64_C(18446744073709551615)
 Special value used to signify the ROW ID of a table.
 
const column_t COLUMN_IDENTIFIER_EMPTY = UINT64_C(18446744073709551614)
 Special value used to signify an empty column (used for e.g. COUNT(*))
 
const column_t VIRTUAL_COLUMN_START = UINT64_C(9223372036854775808)
 
const double PI = 3.141592653589793
 
const transaction_t TRANSACTION_ID_START = 4611686018427388000ULL
 
const transaction_t MAX_TRANSACTION_ID = NumericLimits<transaction_t>::Maximum()
 
const transaction_t NOT_DELETED_ID = NumericLimits<transaction_t>::Maximum() - 1
 
const transaction_t MAXIMUM_QUERY_ID = NumericLimits<transaction_t>::Maximum()
 
static constexpr EncryptionTypes::EncryptionVersion MAX_VERSION = EncryptionTypes::V0_1
 
static constexpr uint64_t TEMPORARY_BUFFER_SIZE_GRANULARITY = 32ULL * 1024ULL
 
static const DefaultOptimizerType internal_optimizer_types []
 
static constexpr ExceptionEntry EXCEPTION_MAP []
 
static constexpr const uint8_t GZIP_COMPRESSION_DEFLATE = 0x08
 
static constexpr const uint8_t GZIP_FLAG_ASCII = 0x1
 
static constexpr const uint8_t GZIP_FLAG_MULTIPART = 0x2
 
static constexpr const uint8_t GZIP_FLAG_EXTRA = 0x4
 
static constexpr const uint8_t GZIP_FLAG_NAME = 0x8
 
static constexpr const uint8_t GZIP_FLAG_COMMENT = 0x10
 
static constexpr const uint8_t GZIP_FLAG_ENCRYPT = 0x20
 
static constexpr const uint8_t GZIP_HEADER_MINSIZE = 10
 
static constexpr const idx_t GZIP_HEADER_MAXSIZE = 1u << 15
 
static constexpr const uint8_t GZIP_FOOTER_SIZE = 8
 
static constexpr const unsigned char GZIP_FLAG_UNSUPPORTED
 
const PhysicalType ROW_TYPE
 The PhysicalType used by the row identifiers column.
 
static constexpr idx_t FILE_BUFFER_TYPE_COUNT = 4
 
const uint64_t VERSION_NUMBER
 The version number default, lower and upper bounds of the database storage format.
 
const uint64_t VERSION_NUMBER_LOWER
 
const uint64_t VERSION_NUMBER_UPPER
 
const field_id_t MESSAGE_TERMINATOR_FIELD_ID = 0xFFFF
 
static constexpr const idx_t MEMORY_TAG_COUNT = static_cast<idx_t>(MemoryTag::UNKNOWN)
 

Detailed Description

The SelectStatement of the view.

Here we have the internal duckdb classes that interact with Arrow's Internal Header (i.e., duckdb/commons/arrow.hpp)

Typedef Documentation

◆ compression_init_analyze_t

typedef unique_ptr< AnalyzeState >(* duckdb::compression_init_analyze_t) (ColumnData &col_data, PhysicalType type)

The system then decides which compression function to use based on the analyzed score (returned from final_analyze)

The analyze functions are used to determine whether or not to use this compression method The system first determines the potential compression methods to use based on the physical type of the column After that the following steps are taken:

  1. The init_analyze is called to initialize the analyze state of every candidate compression method
  2. The analyze method is called with all of the input data in the order in which it must be stored. analyze can return "false". In that case, the compression method is taken out of consideration early.
  3. The final_analyze method is called, which should return a score for the compression method

◆ compression_skip_t

typedef void(* duckdb::compression_skip_t) (ColumnSegment &segment, ColumnScanState &state, idx_t skip_count)

Function prototype used for skipping 'skip_count' values, non-trivial if random-access is not supported for the compressed data.

Enumeration Type Documentation

◆ CatalogSetPathType

enum class duckdb::CatalogSetPathType
strong
50{ SET_SCHEMA, SET_SCHEMAS, SET_DIRECTLY };

◆ CollationType

enum class duckdb::CollationType
strong
1036{ ALL_COLLATIONS, COMBINABLE_COLLATIONS };

◆ BindingType

enum class duckdb::BindingType
strongprotected
1290{ BASE, TABLE, DUMMY, CATALOG_ENTRY, CTE };

◆ CTEType

enum class duckdb::CTEType
strongprotected
1421{ CAN_BE_REFERENCED, CANNOT_BE_REFERENCED };

◆ ColumnBindType

enum class duckdb::ColumnBindType
strongprivate
1479{ EXPAND_GENERATED_COLUMNS, DO_NOT_EXPAND_GENERATED_COLUMNS };

◆ StarExpressionType

enum class duckdb::StarExpressionType : uint8_t
strong
1694: uint8_t { STAR, COLUMNS, UNPACKED, NONE };
::uint8_t uint8_t

◆ BindingMode

enum class duckdb::BindingMode : uint8_t
strong
1839 : uint8_t {
1840 STANDARD_BINDING,
1841 EXTRACT_NAMES,
1842 EXTRACT_REPLACEMENT_SCANS,
1843 EXTRACT_QUALIFIED_NAMES
1844};

◆ BinderType

enum class duckdb::BinderType : uint8_t
strong
1845: uint8_t { REGULAR_BINDER, VIEW_BINDER };

◆ MacroType

enum class duckdb::MacroType : uint8_t
strongprivate
2330: uint8_t { VOID_MACRO = 0, TABLE_MACRO = 1, SCALAR_MACRO = 2 };

◆ ViewBindState

enum class duckdb::ViewBindState
strong
2949{ BOUND, BINDING, UNBOUND };

◆ BindViewAction

enum class duckdb::BindViewAction
strong
2950{ BIND_IF_UNBOUND, FORCE_REBIND };

◆ ExtensionLoadResult

enum class duckdb::ExtensionLoadResult : uint8_t
strong
6191: uint8_t { LOADED_EXTENSION = 0, EXTENSION_UNKNOWN = 1, NOT_LOADED = 2 };

◆ ExtensionUpdateResultTag

enum class duckdb::ExtensionUpdateResultTag : uint8_t
strong
6216 : uint8_t {
6217 // Fallback for when installation information is missing
6218 UNKNOWN = 0,
6219
6220 // Either a fresh file was downloaded and versions are identical
6221 NO_UPDATE_AVAILABLE = 1,
6222 // Only extensions from repositories can be updated
6223 NOT_A_REPOSITORY = 2,
6224 // Only known, currently installed extensions can be updated
6225 NOT_INSTALLED = 3,
6226 // Statically loaded extensions can not be updated; they are baked into the DuckDB executable
6227 STATICALLY_LOADED = 4,
6228 // This means the .info file written during installation was missing or malformed
6229 MISSING_INSTALL_INFO = 5,
6230
6231 // The extension was re-downloaded from the repository, but due to a lack of version information
6232 // its impossible to tell if the extension is actually updated
6233 REDOWNLOADED = 254,
6234 // The version was updated to a new version
6235 UPDATED = 255,
6236};

◆ ExtraDropInfoType

enum class duckdb::ExtraDropInfoType : uint8_t
strongprivate
6703 : uint8_t {
6704 INVALID = 0,
6705
6706 SECRET_INFO = 1
6707};

◆ DependencyEntryType

Resembles a connection between an object and the CatalogEntry that can be retrieved from the Catalog using the identifiers listed here

8892: uint8_t { SUBJECT, DEPENDENT };

◆ UndoFlags

enum class duckdb::UndoFlags : uint32_t
strong
9865 : uint32_t { // far too big but aligned (TM)
9866 EMPTY_ENTRY = 0,
9867 CATALOG_ENTRY = 1,
9868 INSERT_TUPLE = 2,
9869 DELETE_TUPLE = 3,
9870 UPDATE_TUPLE = 4,
9871 SEQUENCE_VALUE = 5,
9872 ATTACHED_DATABASE = 6
9873};
::uint32_t uint32_t

◆ ActiveTransactionState

enum class duckdb::ActiveTransactionState
strong
9971{ UNSET, OTHER_TRANSACTIONS, NO_OTHER_TRANSACTIONS };

◆ WALType

enum class duckdb::WALType : uint8_t
strong
10687 : uint8_t {
10688 INVALID = 0,
10689 // -----------------------------
10690 // Catalog
10691 // -----------------------------
10692 CREATE_TABLE = 1,
10693 DROP_TABLE = 2,
10694
10695 CREATE_SCHEMA = 3,
10696 DROP_SCHEMA = 4,
10697
10698 CREATE_VIEW = 5,
10699 DROP_VIEW = 6,
10700
10701 CREATE_SEQUENCE = 8,
10702 DROP_SEQUENCE = 9,
10703 SEQUENCE_VALUE = 10,
10704
10705 CREATE_MACRO = 11,
10706 DROP_MACRO = 12,
10707
10708 CREATE_TYPE = 13,
10709 DROP_TYPE = 14,
10710
10711 ALTER_INFO = 20,
10712
10713 CREATE_TABLE_MACRO = 21,
10714 DROP_TABLE_MACRO = 22,
10715
10716 CREATE_INDEX = 23,
10717 DROP_INDEX = 24,
10718
10719 // -----------------------------
10720 // Data
10721 // -----------------------------
10722 USE_TABLE = 25,
10723 INSERT_TUPLE = 26,
10724 DELETE_TUPLE = 27,
10725 UPDATE_TUPLE = 28,
10726 ROW_GROUP_DATA = 29,
10727 // -----------------------------
10728 // Flush
10729 // -----------------------------
10730 WAL_VERSION = 98,
10731 CHECKPOINT = 99,
10732 WAL_FLUSH = 100
10733};

◆ WALInitState

enum class duckdb::WALInitState
strong
10758{ NO_WAL, UNINITIALIZED, UNINITIALIZED_REQUIRES_TRUNCATE, INITIALIZED };

◆ CompressInMemory

enum class duckdb::CompressInMemory
strong
11040{ AUTOMATIC, COMPRESS, DO_NOT_COMPRESS };

◆ PartialBlockType

enum class duckdb::PartialBlockType
strongprivate
11397{ FULL_CHECKPOINT, APPEND_TO_TABLE, IN_MEMORY_CHECKPOINT };

◆ NType

enum class duckdb::NType : uint8_t
strongprivate
11859 : uint8_t {
11860 PREFIX = 1,
11861 LEAF = 2,
11862 NODE_4 = 3,
11863 NODE_16 = 4,
11864 NODE_48 = 5,
11865 NODE_256 = 6,
11866 LEAF_INLINED = 7,
11867 NODE_7_LEAF = 8,
11868 NODE_15_LEAF = 9,
11869 NODE_256_LEAF = 10,
11870};

◆ GateStatus

enum class duckdb::GateStatus : uint8_t
strongprivate
11872 : uint8_t {
11873 GATE_NOT_SET = 0,
11874 GATE_SET = 1,
11875};

◆ VerifyExistenceType

enum class duckdb::VerifyExistenceType : uint8_t
strongprivate
12110: uint8_t { APPEND = 0, APPEND_FK = 1, DELETE_FK = 2 };

◆ ARTConflictType

enum class duckdb::ARTConflictType : uint8_t
strongprivate
12111: uint8_t { NO_CONFLICT = 0, CONSTRAINT = 1, TRANSACTION = 2 };

◆ ARTHandlingResult

enum class duckdb::ARTHandlingResult : uint8_t
strongprivate
12112: uint8_t { CONTINUE = 0, SKIP = 1, YIELD = 2, NONE = 3 };

◆ AlterScalarFunctionType

enum class duckdb::AlterScalarFunctionType : uint8_t
strong
14612: uint8_t { INVALID = 0, ADD_FUNCTION_OVERLOADS = 1 };

◆ CoordinateReferenceSystemType

Enumerator
INVALID 

Not set / invalid.

SRID 

Opaque identifier.

AUTH_CODE 

AUTH:CODE format.

PROJJSON 

PROJJSON format.

WKT2_2019 

WKT2_2019 format.

20437 : uint8_t {
20439 INVALID = 0,
20441 SRID = 1,
20443 AUTH_CODE = 2,
20445 PROJJSON = 3,
20447 WKT2_2019 = 4,
20448};

◆ ExtraTypeInfoType

Extra Type Info Type.

20559 : uint8_t {
20560 INVALID_TYPE_INFO = 0,
20561 GENERIC_TYPE_INFO = 1,
20562 DECIMAL_TYPE_INFO = 2,
20563 STRING_TYPE_INFO = 3,
20564 LIST_TYPE_INFO = 4,
20565 STRUCT_TYPE_INFO = 5,
20566 ENUM_TYPE_INFO = 6,
20567 UNBOUND_TYPE_INFO = 7,
20568 AGGREGATE_STATE_TYPE_INFO = 8,
20569 ARRAY_TYPE_INFO = 9,
20570 ANY_TYPE_INFO = 10,
20571 INTEGER_LITERAL_TYPE_INFO = 11,
20572 TEMPLATE_TYPE_INFO = 12,
20573 GEO_TYPE_INFO = 13,
20574};

◆ EnumDictType

enum duckdb::EnumDictType : uint8_t
private
20702: uint8_t { INVALID = 0, VECTOR_DICT = 1 };

◆ AlterTableFunctionType

enum class duckdb::AlterTableFunctionType : uint8_t
strongprivate
21285: uint8_t { INVALID = 0, ADD_FUNCTION_OVERLOADS = 1 };

◆ AllowParserOverride

enum class duckdb::AllowParserOverride : uint8_t
strong
23790: uint8_t { DEFAULT_OVERRIDE, FALLBACK_OVERRIDE, STRICT_OVERRIDE };

◆ ParserExtensionResultType

enum class duckdb::ParserExtensionResultType : uint8_t
strong
23840: uint8_t { PARSE_SUCCESSFUL, DISPLAY_ORIGINAL_ERROR, DISPLAY_EXTENSION_ERROR };

◆ ValueRenderAlignment

enum class duckdb::ValueRenderAlignment
strong
35607{ LEFT, MIDDLE, RIGHT };

◆ RenderMode

enum class duckdb::RenderMode : uint8_t
strong
35608: uint8_t { ROWS, COLUMNS };

◆ ResultRenderType

enum class duckdb::ResultRenderType
strong
35610{ LAYOUT, COLUMN_NAME, COLUMN_TYPE, VALUE, NULL_VALUE, FOOTER, STRING_LITERAL };

◆ LargeNumberRendering

enum class duckdb::LargeNumberRendering
strong
35656 {
35657 NONE = 0, // render all numbers as-is
35658 FOOTER = 1, // if there is a single row, adds a second footer row with a readable summarization of large numbers
35659 ALL = 2 // renders all large numbers
35660};

◆ AbsoluteNumberComparison

enum duckdb::AbsoluteNumberComparison : uint8_t
46435 : uint8_t {
46436 // If number is equal
46437 EQUAL = 0,
46438 // If compared number is greater
46439 GREATER = 1,
46440 // If compared number is smaller
46441 SMALLER = 2,
46442};

◆ UnicodeType

enum class duckdb::UnicodeType
strong
47195{ INVALID, ASCII, UTF8 };

◆ UnicodeInvalidReason

enum class duckdb::UnicodeInvalidReason
strong
47196{ BYTE_MISMATCH, INVALID_UNICODE };

◆ RenderRowType

enum class duckdb::RenderRowType
strong
47406{ ROW_VALUES, SEPARATOR, DIVIDER, FOOTER };

◆ JSONFormattingMode

enum class duckdb::JSONFormattingMode
strong
48453{ STANDARD, COMPACT_VERTICAL, COMPACT_HORIZONTAL };

◆ JSONComponentType

enum class duckdb::JSONComponentType
strong
48455{ BRACKET_OPEN, BRACKET_CLOSE, LITERAL, COLON, COMMA, NULL_VALUE };

◆ JSONFormattingResult

enum class duckdb::JSONFormattingResult
strong
48457{ SUCCESS, TOO_MANY_ROWS, TOO_WIDE };

◆ CSVNewLineMode

Enumerator
WRITE_BEFORE 

Newlines are written before writing out a new csv line. Ensures we don't write an empty line at the end of a csv file. Uses CSVWriterState::written_anything to keep track of when to insert newlines

WRITE_AFTER 

Newlines are written after every line. This is cleanest in stdout, where lines are expected to end with a newline

50826 {
50829 WRITE_BEFORE = 0,
50832 WRITE_AFTER = 1
50833};

◆ AggregateHandling

enum class duckdb::AggregateHandling : uint8_t
strong
52505 : uint8_t {
52506 STANDARD_HANDLING, // standard handling as in the SELECT clause
52507 NO_AGGREGATES_ALLOWED, // no aggregates allowed: any aggregates in this node will result in an error
52508 FORCE_AGGREGATES // force aggregates: any non-aggregate select list entry will become a GROUP
52509};

◆ CheckpointAbort

enum class duckdb::CheckpointAbort : uint8_t
strong
52534 : uint8_t {
52535 NO_ABORT = 0,
52536 DEBUG_ABORT_BEFORE_TRUNCATE = 1,
52537 DEBUG_ABORT_BEFORE_HEADER = 2,
52538 DEBUG_ABORT_AFTER_FREE_LIST_WRITE = 3,
52539 DEBUG_ABORT_BEFORE_WAL_FINISH = 4,
52540 DEBUG_ABORT_BEFORE_MOVING_RECOVERY = 5,
52541 DEBUG_ABORT_BEFORE_DELETING_CHECKPOINT_WAL = 6
52542};

◆ CopyOverwriteMode

enum class duckdb::CopyOverwriteMode : uint8_t
strong
52562 : uint8_t {
52563 COPY_ERROR_ON_CONFLICT = 0,
52564 COPY_OVERWRITE = 1,
52565 COPY_OVERWRITE_OR_IGNORE = 2,
52566 COPY_APPEND = 3
52567};

◆ DatePartSpecifier

enum class duckdb::DatePartSpecifier : uint8_t
strong
52586 : uint8_t {
52587 // BIGINT values
52588 YEAR,
52589 MONTH,
52590 DAY,
52591 DECADE,
52592 CENTURY,
52593 MILLENNIUM,
52594 MICROSECONDS,
52595 MILLISECONDS,
52596 SECOND,
52597 MINUTE,
52598 HOUR,
52599 DOW,
52600 ISODOW,
52601 WEEK,
52602 ISOYEAR,
52603 QUARTER,
52604 DOY,
52605 YEARWEEK,
52606 ERA,
52607 TIMEZONE,
52608 TIMEZONE_HOUR,
52609 TIMEZONE_MINUTE,
52610
52611 // DOUBLE values
52612 EPOCH,
52613 JULIAN_DAY,
52614
52615 // Invalid
52616 INVALID,
52617
52618 // Type ranges
52619 BEGIN_BIGINT = YEAR,
52620 BEGIN_DOUBLE = EPOCH,
52621 BEGIN_INVALID = INVALID,
52622};

◆ DeprecatedUsingKeySyntax

enum class duckdb::DeprecatedUsingKeySyntax : uint8_t
strong
52649: uint8_t { DEFAULT = 0, UNION_AS_UNION_ALL = 1 };

◆ HTTPStatusCode

enum class duckdb::HTTPStatusCode : uint16_t
strong
52674 : uint16_t {
52675 INVALID = 0,
52676 // Information responses
52677 Continue_100 = 100,
52678 SwitchingProtocol_101 = 101,
52679 Processing_102 = 102,
52680 EarlyHints_103 = 103,
52681
52682 // Successful responses
52683 OK_200 = 200,
52684 Created_201 = 201,
52685 Accepted_202 = 202,
52686 NonAuthoritativeInformation_203 = 203,
52687 NoContent_204 = 204,
52688 ResetContent_205 = 205,
52689 PartialContent_206 = 206,
52690 MultiStatus_207 = 207,
52691 AlreadyReported_208 = 208,
52692 IMUsed_226 = 226,
52693
52694 // Redirection messages
52695 MultipleChoices_300 = 300,
52696 MovedPermanently_301 = 301,
52697 Found_302 = 302,
52698 SeeOther_303 = 303,
52699 NotModified_304 = 304,
52700 UseProxy_305 = 305,
52701 unused_306 = 306,
52702 TemporaryRedirect_307 = 307,
52703 PermanentRedirect_308 = 308,
52704
52705 // Client error responses
52706 BadRequest_400 = 400,
52707 Unauthorized_401 = 401,
52708 PaymentRequired_402 = 402,
52709 Forbidden_403 = 403,
52710 NotFound_404 = 404,
52711 MethodNotAllowed_405 = 405,
52712 NotAcceptable_406 = 406,
52713 ProxyAuthenticationRequired_407 = 407,
52714 RequestTimeout_408 = 408,
52715 Conflict_409 = 409,
52716 Gone_410 = 410,
52717 LengthRequired_411 = 411,
52718 PreconditionFailed_412 = 412,
52719 PayloadTooLarge_413 = 413,
52720 UriTooLong_414 = 414,
52721 UnsupportedMediaType_415 = 415,
52722 RangeNotSatisfiable_416 = 416,
52723 ExpectationFailed_417 = 417,
52724 ImATeapot_418 = 418,
52725 MisdirectedRequest_421 = 421,
52726 UnprocessableContent_422 = 422,
52727 Locked_423 = 423,
52728 FailedDependency_424 = 424,
52729 TooEarly_425 = 425,
52730 UpgradeRequired_426 = 426,
52731 PreconditionRequired_428 = 428,
52732 TooManyRequests_429 = 429,
52733 RequestHeaderFieldsTooLarge_431 = 431,
52734 UnavailableForLegalReasons_451 = 451,
52735
52736 // Server error responses
52737 InternalServerError_500 = 500,
52738 NotImplemented_501 = 501,
52739 BadGateway_502 = 502,
52740 ServiceUnavailable_503 = 503,
52741 GatewayTimeout_504 = 504,
52742 HttpVersionNotSupported_505 = 505,
52743 VariantAlsoNegotiates_506 = 506,
52744 InsufficientStorage_507 = 507,
52745 LoopDetected_508 = 508,
52746 NotExtended_510 = 510,
52747 NetworkAuthenticationRequired_511 = 511,
52748};
::uint16_t uint16_t

◆ MergeActionType

enum class duckdb::MergeActionType : uint8_t
strong
52772: uint8_t { MERGE_UPDATE, MERGE_DELETE, MERGE_INSERT, MERGE_DO_NOTHING, MERGE_ERROR };

◆ MergeActionCondition

enum class duckdb::MergeActionCondition : uint8_t
strong
52774: uint8_t { WHEN_MATCHED, WHEN_NOT_MATCHED_BY_SOURCE, WHEN_NOT_MATCHED_BY_TARGET };

◆ OrdinalityType

enum class duckdb::OrdinalityType : uint8_t
strong
52798: uint8_t { WITHOUT_ORDINALITY = 0, WITH_ORDINALITY = 1 };

◆ PreserveOrderType

enum class duckdb::PreserveOrderType : uint8_t
strong
52820: uint8_t { AUTOMATIC = 0, PRESERVE_ORDER = 1, DONT_PRESERVE_ORDER = 2 };

◆ QuantileSerializationType

enum class duckdb::QuantileSerializationType : uint8_t
strong
52839 : uint8_t {
52840 NON_DECIMAL = 0,
52841 DECIMAL_DISCRETE,
52842 DECIMAL_DISCRETE_LIST,
52843 DECIMAL_CONTINUOUS,
52844 DECIMAL_CONTINUOUS_LIST
52845};

◆ SetType

enum class duckdb::SetType : uint8_t
strong
52866: uint8_t { SET = 0, RESET = 1 };

◆ StorageBlockPrefetch

enum class duckdb::StorageBlockPrefetch : uint8_t
strong
52885: uint8_t { REMOTE_ONLY = 0, NEVER = 1, ALWAYS_PREFETCH = 2, DEBUG_FORCE_ALWAYS = 3 };

◆ SubqueryType

enum class duckdb::SubqueryType : uint8_t
strong
52907 : uint8_t {
52908 INVALID = 0,
52909 SCALAR = 1, // Regular scalar subquery
52910 EXISTS = 2, // EXISTS (SELECT...)
52911 NOT_EXISTS = 3, // NOT EXISTS(SELECT...)
52912 ANY = 4, // x = ANY(SELECT...) OR x IN (SELECT...)
52913};

◆ TupleDataValidityType

enum class duckdb::TupleDataValidityType : uint8_t
strong
52933 : uint8_t {
52934 CAN_HAVE_NULL_VALUES = 0,
52935 CANNOT_HAVE_NULL_VALUES = 1,
52936};

◆ TupleDataNestednessType

enum class duckdb::TupleDataNestednessType : uint8_t
strong
52938 : uint8_t {
52939 TOP_LEVEL_LAYOUT = 0,
52940 NESTED_STRUCT_LAYOUT = 1,
52941};

◆ WindowAggregationMode

Enumerator
WINDOW 

Use the window aggregate API if available.

COMBINE 

Don't use window, but use combine if available.

SEPARATE 

Don't use combine or window (compute each frame separately)

52962 : uint32_t {
52964 WINDOW = 0,
52966 COMBINE,
52968 SEPARATE
52969};
@ SEPARATE
Don't use combine or window (compute each frame separately)
@ COMBINE
Don't use window, but use combine if available.

◆ FileNameSegmentType

enum class duckdb::FileNameSegmentType : uint8_t
strong
52996: uint8_t { LITERAL, UUID_V4, UUID_V7, OFFSET };

◆ RequestType

enum class duckdb::RequestType : uint8_t
strongprivate
53106: uint8_t { GET_REQUEST, PUT_REQUEST, HEAD_REQUEST, DELETE_REQUEST, POST_REQUEST };

◆ MultiFileFileState

enum class duckdb::MultiFileFileState : uint8_t
strong
53342: uint8_t { UNOPENED, OPENING, OPEN, SKIPPED, CLOSED };

◆ FileExpandResult

enum class duckdb::FileExpandResult : uint8_t
strongprivate
53687: uint8_t { NO_FILES, SINGLE_FILE, MULTIPLE_FILES };

◆ MultiFileListScanType

enum class duckdb::MultiFileListScanType
strongprivate
53688{ ALWAYS_FETCH, FETCH_IF_AVAILABLE };

◆ FileExpansionType

enum class duckdb::FileExpansionType
strongprivate
53690{ ALL_FILES_EXPANDED, NOT_ALL_FILES_KNOWN };

◆ ExponentType

enum class duckdb::ExponentType : uint8_t
strong
55064: uint8_t { NONE, POSITIVE, NEGATIVE };

◆ SortKeyType

Enumerator
NO_PAYLOAD_FIXED_8 

Without payload.

PAYLOAD_FIXED_16 

With payload (requires row pointer in key)

55335 : uint8_t {
55336 INVALID = 0,
55339 NO_PAYLOAD_FIXED_16 = 2,
55340 NO_PAYLOAD_FIXED_24 = 3,
55341 NO_PAYLOAD_FIXED_32 = 4,
55342 NO_PAYLOAD_VARIABLE_32 = 5,
55344 PAYLOAD_FIXED_16 = 6,
55345 PAYLOAD_FIXED_24 = 7,
55346 PAYLOAD_FIXED_32 = 8,
55347 PAYLOAD_VARIABLE_32 = 9,
55348};
@ NO_PAYLOAD_FIXED_8
Without payload.
@ PAYLOAD_FIXED_16
With payload (requires row pointer in key)

◆ ConflictManagerMode

enum class duckdb::ConflictManagerMode : uint8_t
strong
55782 : uint8_t {
55783 SCAN, // Gather conflicts without throwing a constraint exception.
55784 THROW // Throw on the conflicts that were not found during the scan.
55785};

◆ LookupResultType

enum class duckdb::LookupResultType : uint8_t
strong
55787: uint8_t { LOOKUP_MISS, LOOKUP_HIT, LOOKUP_NULL };

◆ TupleDataPinProperties

Enumerator
KEEP_EVERYTHING_PINNED 

Keeps all passed blocks pinned while scanning/iterating over the chunks (for both reading/writing)

UNPIN_AFTER_DONE 

Unpins blocks after they are done (for both reading/writing)

DESTROY_AFTER_DONE 

Destroys blocks after they are done (for reading only)

ALREADY_PINNED 

Assumes all blocks are already pinned (for reading only)

56596 : uint8_t {
56597 INVALID,
56606};
@ KEEP_EVERYTHING_PINNED
Keeps all passed blocks pinned while scanning/iterating over the chunks (for both reading/writing)
@ DESTROY_AFTER_DONE
Destroys blocks after they are done (for reading only)
@ UNPIN_AFTER_DONE
Unpins blocks after they are done (for both reading/writing)
@ ALREADY_PINNED
Assumes all blocks are already pinned (for reading only)

◆ BlockIteratorStateType

Enumerator
IN_MEMORY 

For InMemoryBlockIteratorState.

EXTERNAL 

For ExternalBlockIteratorState.

57026 : int8_t {
57028 IN_MEMORY,
57030 EXTERNAL,
57031};
::int8_t int8_t
@ IN_MEMORY
For InMemoryBlockIteratorState.

◆ PartitionedTupleDataType

Enumerator
RADIX 

Radix partitioning on a hash column.

57600 : uint8_t {
57601 INVALID,
57603 RADIX
57604};
@ RADIX
Radix partitioning on a hash column.

◆ VariantValueType

enum class duckdb::VariantValueType : uint8_t
strong
57764: uint8_t { PRIMITIVE, OBJECT, ARRAY, MISSING };

◆ ARTScanHandling

enum class duckdb::ARTScanHandling : uint8_t
strongprivate
58353 : uint8_t {
58354 EMPLACE,
58355 POP,
58356};

◆ ARTScanResult

Scanning state. The scanning output policies allow us to pass in a capacity while scanning, so that when the scan fills up the capacity, we can pause the scan state at that location, and resume scanning later.

59088: uint8_t { COMPLETED = 0, PAUSED = 1 };

◆ CSVState

All States of CSV parsing.

Enumerator
DELIMITER 

Regular unquoted field state.

DELIMITER_FIRST_BYTE 

----------— Multi-byte Delimiter States (up to 4 bytes) -------------------------------------------—!//

State after encountering a field separator (e.g., ;) - This is always the last delimiter byte

DELIMITER_SECOND_BYTE 

State when encountering the first delimiter byte of a multi-byte delimiter.

DELIMITER_THIRD_BYTE 

State when encountering the second delimiter byte of a multi-byte delimiter.

RECORD_SEPARATOR 

-----------------------------------------------------------------------------------------------------—!//

State when encountering the third delimiter byte of a multi-byte delimiter

CARRIAGE_RETURN 

State after encountering a record separator (i.e.,
)

QUOTED 

State after encountering a carriage return(i.e., \r)

UNQUOTED 

State when inside a quoted field.

ESCAPE 

State when leaving a quoted field.

INVALID 

State when encountering an escape character (e.g., )

NOT_SET 

Got to an Invalid State, this should error.

QUOTED_NEW_LINE 

If the state is not set, usually the first state before getting the first character.

EMPTY_SPACE 

If we have a quoted newline.

COMMENT 

If we have empty spaces in the beginning and end of value.

STANDARD_NEWLINE 

If we are in a comment state, and hence have to skip the whole line.

UNQUOTED_ESCAPE 

State used for figuring out a new line.

ESCAPED_RETURN 

State when encountering an escape character (e.g., ) in an unquoted field.

MAYBE_QUOTED 

State when the carriage return is preceded by an escape character (for '\r
' newline only)

59173 : uint8_t {
59174 STANDARD = 0,
59175 DELIMITER = 1,
59181 RECORD_SEPARATOR = 5,
59182 CARRIAGE_RETURN = 6,
59183 QUOTED = 7,
59184 UNQUOTED = 8,
59185 ESCAPE = 9,
59186 INVALID = 10,
59187 NOT_SET = 11,
59188 QUOTED_NEW_LINE = 12,
59189 EMPTY_SPACE = 13,
59190 COMMENT = 14,
59191 STANDARD_NEWLINE = 15,
59192 UNQUOTED_ESCAPE = 16,
59193 ESCAPED_RETURN = 17,
59194 MAYBE_QUOTED = 18
59195};
@ DELIMITER_FIRST_BYTE
----------— Multi-byte Delimiter States (up to 4 bytes) -------------------------------------------—!...
@ NOT_SET
Got to an Invalid State, this should error.
@ STANDARD_NEWLINE
If we are in a comment state, and hence have to skip the whole line.
@ DELIMITER_SECOND_BYTE
State when encountering the first delimiter byte of a multi-byte delimiter.
@ UNQUOTED_ESCAPE
State used for figuring out a new line.
@ QUOTED
State after encountering a carriage return(i.e., \r)
@ CARRIAGE_RETURN
State after encountering a record separator (i.e., )
@ UNQUOTED
State when inside a quoted field.
@ DELIMITER_THIRD_BYTE
State when encountering the second delimiter byte of a multi-byte delimiter.
@ QUOTED_NEW_LINE
If the state is not set, usually the first state before getting the first character.
@ ESCAPED_RETURN
State when encountering an escape character (e.g., ) in an unquoted field.
@ EMPTY_SPACE
If we have a quoted newline.
@ MAYBE_QUOTED
State when the carriage return is preceded by an escape character (for '\r ' newline only)
@ RECORD_SEPARATOR
-----------------------------------------------------------------------------------------------------...

◆ PhysicalTableScanExecutionStrategy

enum class duckdb::PhysicalTableScanExecutionStrategy : uint8_t
strong
59213 : uint8_t {
59214 DEFAULT,
59215 TASK_EXECUTOR,
59216 SYNCHRONOUS,
59217 TASK_EXECUTOR_BUT_FORCE_SYNC_CHECKS
59218};

◆ CompressedMaterializationDirection

Needed for (de)serialization without binding.

59255: uint8_t { INVALID = 0, COMPRESS = 1, DECOMPRESS = 2 };

◆ WindowMergeSortStage

enum class duckdb::WindowMergeSortStage : uint8_t
strong
60164: uint8_t { INIT, COMBINE, FINALIZE, SORTED, FINISHED };

◆ ErrorType

enum class duckdb::ErrorType : uint16_t
strongprotected
60283 : uint16_t {
60284 // error message types
60285 UNSIGNED_EXTENSION = 0,
60286 INVALIDATED_TRANSACTION = 1,
60287 INVALIDATED_DATABASE = 2,
60288
60289 // this should always be the last value
60290 ERROR_COUNT,
60291 INVALID = 65535,
60292};

◆ PushdownExtractSupport

enum class duckdb::PushdownExtractSupport : uint8_t
strong
60492: uint8_t { UNCHECKED, DISABLED, ENABLED };

◆ BaseColumnPrunerMode

Enumerator
DISABLE_PUSHDOWN_EXTRACT 

Any child reference disables PUSHDOWN_EXTRACT for the parent column.

60509 : uint8_t {
60510 DEFAULT,
60513};
@ DISABLE_PUSHDOWN_EXTRACT
Any child reference disables PUSHDOWN_EXTRACT for the parent column.

◆ MetaPipelineType

Enumerator
JOIN_BUILD 

The shared sink is regular.

60632 : uint8_t {
60633 REGULAR = 0,
60634 JOIN_BUILD = 1
60635};
@ JOIN_BUILD
The shared sink is regular.

◆ PreparedParamType

enum class duckdb::PreparedParamType : uint8_t
strongprivate
60769: uint8_t { AUTO_INCREMENT, POSITIONAL, NAMED, INVALID };

◆ WindowBoundary

enum class duckdb::WindowBoundary : uint8_t
strong
60821 : uint8_t {
60822 INVALID = 0,
60823 UNBOUNDED_PRECEDING = 1,
60824 UNBOUNDED_FOLLOWING = 2,
60825 CURRENT_ROW_RANGE = 3,
60826 CURRENT_ROW_ROWS = 4,
60827 EXPR_PRECEDING_ROWS = 5,
60828 EXPR_FOLLOWING_ROWS = 6,
60829 EXPR_PRECEDING_RANGE = 7,
60830 EXPR_FOLLOWING_RANGE = 8,
60831 CURRENT_ROW_GROUPS = 9,
60832 EXPR_PRECEDING_GROUPS = 10,
60833 EXPR_FOLLOWING_GROUPS = 11
60834};

◆ WindowExcludeMode

Represents the window exclusion mode.

60837: uint8_t { NO_OTHER = 0, CURRENT_ROW = 1, GROUP = 2, TIES = 3 };

◆ AlterDatabaseType

enum class duckdb::AlterDatabaseType : uint8_t
strongprivate
61116: uint8_t { RENAME_DATABASE = 0 };

◆ LoadType

enum class duckdb::LoadType : uint8_t
strongprotected
61175: uint8_t { LOAD, INSTALL, FORCE_INSTALL };

◆ OnConflictAction

enum class duckdb::OnConflictAction : uint8_t
strong
61294 : uint8_t {
61295 THROW,
61296 NOTHING,
61297 UPDATE,
61298 REPLACE // Only used in transform/bind step, changed to UPDATE later
61299};

◆ InsertColumnOrder

enum class duckdb::InsertColumnOrder : uint8_t
strong
61301: uint8_t { INSERT_BY_POSITION = 0, INSERT_BY_NAME = 1 };

◆ ShowType

enum class duckdb::ShowType : uint8_t
strong
61389: uint8_t { SUMMARY, DESCRIBE, SHOW_FROM, SHOW_UNQUALIFIED };

◆ DataFileType

enum class duckdb::DataFileType : uint8_t
strong
61445 : uint8_t {
61446 FILE_DOES_NOT_EXIST, // file does not exist
61447 DUCKDB_FILE, // duckdb database file
61448 SQLITE_FILE, // sqlite database file
61449 PARQUET_FILE, // parquet file
61450 UNKNOWN_FILE // unknown file type
61451};

◆ TemporaryBufferSize

enum class duckdb::TemporaryBufferSize : uint64_t
strong
61520 : uint64_t {
61521 INVALID = 0,
61522 S32K = 32768,
61523 S64K = 65536,
61524 S96K = 98304,
61525 S128K = 131072,
61526 S160K = 163840,
61527 S192K = 196608,
61528 S224K = 229376,
61529 DEFAULT = DEFAULT_BLOCK_ALLOC_SIZE,
61530};
::uint64_t uint64_t

◆ TemporaryCompressionLevel

enum class duckdb::TemporaryCompressionLevel : int
strong
61695 : int {
61696 ZSTD_MINUS_FIVE = -5,
61697 ZSTD_MINUS_THREE = -3,
61698 ZSTD_MINUS_ONE = -1,
61699 UNCOMPRESSED = 0,
61700 ZSTD_ONE = 1,
61701 ZSTD_THREE = 3,
61702 ZSTD_FIVE = 5,
61703};

◆ VerificationType

enum class duckdb::VerificationType : uint8_t
strongprivate
61871 : uint8_t {
61872 ORIGINAL,
61873 COPIED,
61874 DESERIALIZED,
61875 PARSED,
61876 UNOPTIMIZED,
61877 NO_OPERATOR_CACHING,
61878 PREPARED,
61879 EXTERNAL,
61880 EXPLAIN,
61881 FETCH_ROW_AS_SCAN,
61882
61883 INVALID
61884};

◆ FetchType

Enumerator
TRANSACTIONAL_FETCH 

Verify if each row is valid for the transaction prior to fetching.

74959 {
74962 // Force fetch the row, regardless of it if is valid for the transaction or not
74963 FORCE_FETCH
74964};
@ TRANSACTIONAL_FETCH
Verify if each row is valid for the transaction prior to fetching.

◆ MiniZStreamType

enum class duckdb::MiniZStreamType
strong
77138{ MINIZ_TYPE_NONE, MINIZ_TYPE_INFLATE, MINIZ_TYPE_DEFLATE };

◆ ReaderInitializeType

enum class duckdb::ReaderInitializeType
strong
80649{ INITIALIZED, SKIP_READING_FILE };

◆ ExceptionFormatValueType

enum class duckdb::ExceptionFormatValueType : uint8_t
strong
424 : uint8_t {
425 FORMAT_VALUE_TYPE_DOUBLE,
426 FORMAT_VALUE_TYPE_INTEGER,
427 FORMAT_VALUE_TYPE_STRING
428};

◆ ExceptionType

enum class duckdb::ExceptionType : uint8_t
strong
531 : uint8_t {
532 INVALID = 0, // invalid type
533 OUT_OF_RANGE = 1, // value out of range error
534 CONVERSION = 2, // conversion/casting error
535 UNKNOWN_TYPE = 3, // unknown type
536 DECIMAL = 4, // decimal related
537 MISMATCH_TYPE = 5, // type mismatch
538 DIVIDE_BY_ZERO = 6, // divide by 0
539 OBJECT_SIZE = 7, // object size exceeded
540 INVALID_TYPE = 8, // incompatible for operation
541 SERIALIZATION = 9, // serialization
542 TRANSACTION = 10, // transaction management
543 NOT_IMPLEMENTED = 11, // method not implemented
544 EXPRESSION = 12, // expression parsing
545 CATALOG = 13, // catalog related
546 PARSER = 14, // parser related
547 PLANNER = 15, // planner related
548 SCHEDULER = 16, // scheduler related
549 EXECUTOR = 17, // executor related
550 CONSTRAINT = 18, // constraint related
551 INDEX = 19, // index related
552 STAT = 20, // stat related
553 CONNECTION = 21, // connection related
554 SYNTAX = 22, // syntax related
555 SETTINGS = 23, // settings related
556 BINDER = 24, // binder related
557 NETWORK = 25, // network related
558 OPTIMIZER = 26, // optimizer related
559 NULL_POINTER = 27, // nullptr exception
560 IO = 28, // IO exception
561 INTERRUPT = 29, // interrupt
562 FATAL = 30, // Fatal exceptions are non-recoverable, and render the entire DB in an unusable state
563 INTERNAL = 31, // Internal exceptions indicate something went wrong internally (i.e. bug in the code base)
564 INVALID_INPUT = 32, // Input or arguments error
565 OUT_OF_MEMORY = 33, // out of memory
566 PERMISSION = 34, // insufficient permissions
567 PARAMETER_NOT_RESOLVED = 35, // parameter types could not be resolved
568 PARAMETER_NOT_ALLOWED = 36, // parameter types not allowed
569 DEPENDENCY = 37, // dependency
570 HTTP = 38,
571 MISSING_EXTENSION = 39, // Thrown when an extension is used but not loaded
572 AUTOLOAD = 40, // Thrown when an extension is used but not loaded
573 SEQUENCE = 41,
574 INVALID_CONFIGURATION =
575 42 // An invalid configuration was detected (e.g. a Secret param was missing, or a required setting not found)
576};

◆ ProfilerPrintFormat

enum class duckdb::ProfilerPrintFormat : uint8_t
strong
1171: uint8_t { QUERY_TREE, JSON, QUERY_TREE_OPTIMIZER, NO_OUTPUT, HTML, GRAPHVIZ, MERMAID };

◆ CatalogType

enum class duckdb::CatalogType : uint8_t
strong
2370 : uint8_t {
2371 INVALID = 0,
2372 TABLE_ENTRY = 1,
2373 SCHEMA_ENTRY = 2,
2374 VIEW_ENTRY = 3,
2375 INDEX_ENTRY = 4,
2376 PREPARED_STATEMENT = 5,
2377 SEQUENCE_ENTRY = 6,
2378 COLLATION_ENTRY = 7,
2379 TYPE_ENTRY = 8,
2380 DATABASE_ENTRY = 9,
2381 COORDINATE_SYSTEM_ENTRY = 10,
2382
2383 // functions
2384 TABLE_FUNCTION_ENTRY = 25,
2385 SCALAR_FUNCTION_ENTRY = 26,
2386 AGGREGATE_FUNCTION_ENTRY = 27,
2387 PRAGMA_FUNCTION_ENTRY = 28,
2388 COPY_FUNCTION_ENTRY = 29,
2389 MACRO_ENTRY = 30,
2390 TABLE_MACRO_ENTRY = 31,
2391
2392 // version info
2393 DELETED_ENTRY = 51,
2394 RENAMED_ENTRY = 52,
2395
2396 // secrets
2397 SECRET_ENTRY = 71,
2398 SECRET_TYPE_ENTRY = 72,
2399 SECRET_FUNCTION_ENTRY = 73,
2400
2401 // dependency info
2402 DEPENDENCY_ENTRY = 100
2403
2404};
#define TABLE_ENTRY(type)

◆ PhysicalType

Enumerator
BOOL 

Boolean as 8 bit "bool" value.

UINT8 

Unsigned 8-bit little-endian integer.

INT8 

Signed 8-bit little-endian integer.

UINT16 

Unsigned 16-bit little-endian integer.

INT16 

Signed 16-bit little-endian integer.

UINT32 

Unsigned 32-bit little-endian integer.

INT32 

Signed 32-bit little-endian integer.

UINT64 

Unsigned 64-bit little-endian integer.

INT64 

Signed 64-bit little-endian integer.

FLOAT 

4-byte floating point value

DOUBLE 

8-byte floating point value

INTERVAL 

YEAR_MONTH or DAY_TIME interval in SQL style.

LIST 

A list of some logical data type.

Precision- and scale-based decimal type. Storage type depends on the parameters.

STRUCT 

Struct of logical types.

VARCHAR 

DuckDB Extensions.

BIT 

Boolean as 1 bit, LSB bit-packed ordering.

2738 : uint8_t {
2740 // NA = 0,
2741
2743 BOOL = 1,
2744
2746 UINT8 = 2,
2747
2749 INT8 = 3,
2750
2752 UINT16 = 4,
2753
2755 INT16 = 5,
2756
2758 UINT32 = 6,
2759
2761 INT32 = 7,
2762
2764 UINT64 = 8,
2765
2767 INT64 = 9,
2768
2770 // HALF_FLOAT = 10,
2771
2773 FLOAT = 11,
2774
2776 DOUBLE = 12,
2777
2779 // STRING = 13,
2780
2782 // BINARY = 14,
2783
2785 // FIXED_SIZE_BINARY = 15,
2786
2788 // DATE32 = 16,
2789
2791 // DATE64 = 17,
2792
2795 // TIMESTAMP = 18,
2796
2799 // TIME32 = 19,
2800
2803 // TIME64 = 20,
2804
2806 INTERVAL = 21,
2807
2810 // DECIMAL = 22,
2811
2813 LIST = 23,
2814
2816 STRUCT = 24,
2817
2819 // UNION = 25,
2820
2825 // DICTIONARY = 26,
2826
2828 // EXTENSION = 28,
2829
2831 ARRAY = 29,
2832
2835 // DURATION = 30,
2836
2838 // LARGE_STRING = 31,
2839
2841 // LARGE_BINARY = 32,
2842
2844 // LARGE_LIST = 33,
2845
2847 VARCHAR = 200, // our own string representation, different from STRING and LARGE_STRING above
2848 UINT128 = 203, // 128-bit unsigned integers
2849 INT128 = 204, // 128-bit integers
2850 UNKNOWN = 205, // Unknown physical type of user defined types
2852 BIT = 206,
2853
2854 INVALID = 255
2855};
uint64_t UINT64
uint16_t UINT16
uint32_t UINT32
uint8_t UINT8
@ LIST
A list of some logical data type.
@ INT64
Signed 64-bit little-endian integer.
@ INT16
Signed 16-bit little-endian integer.
@ INT32
Signed 32-bit little-endian integer.
@ BOOL
Boolean as 8 bit "bool" value.
@ INT8
Signed 8-bit little-endian integer.
@ DOUBLE
8-byte floating point value

◆ LogicalTypeId

Enumerator
TIMESTAMP_NS 

us

2860 : uint8_t {
2861 INVALID = 0,
2862 SQLNULL = 1, /* NULL type, used for constant NULL */
2863 UNKNOWN = 2, /* unknown type, used for parameter expressions */
2864 ANY = 3, /* ANY type, used for functions that accept any type as parameter */
2865 UNBOUND = 4, /* A parsed but unbound type, used during query planning */
2866
2867 // A "template" type functions as a "placeholder" type for function arguments and return types.
2868 // Templates only exist during the binding phase, in the scope of a function, and are replaced with concrete types
2869 // before execution. When defining a template, you provide a name to distinguish between different template types,
2870 // specifying to the binder that they dont need to resolve to the same concrete type. Two templates with the same
2871 // name are always resolved to the same concrete type.
2872 TEMPLATE = 5,
2873
2874 TYPE = 6, /* Type type, used for type parameters */
2875
2876 BOOLEAN = 10,
2877 TINYINT = 11,
2878 SMALLINT = 12,
2879 INTEGER = 13,
2880 BIGINT = 14,
2881 DATE = 15,
2882 TIME = 16,
2883 TIMESTAMP_SEC = 17,
2884 TIMESTAMP_MS = 18,
2885 TIMESTAMP = 19,
2886 TIMESTAMP_NS = 20,
2887 DECIMAL = 21,
2888 FLOAT = 22,
2889 DOUBLE = 23,
2890 CHAR = 24,
2891 VARCHAR = 25,
2892 BLOB = 26,
2893 INTERVAL = 27,
2894 UTINYINT = 28,
2895 USMALLINT = 29,
2896 UINTEGER = 30,
2897 UBIGINT = 31,
2898 TIMESTAMP_TZ = 32,
2899 TIME_TZ = 34,
2900 TIME_NS = 35,
2901 BIT = 36,
2902 STRING_LITERAL = 37, /* string literals, used for constant strings - only exists while binding */
2903 INTEGER_LITERAL = 38,/* integer literals, used for constant integers - only exists while binding */
2904 BIGNUM = 39,
2905 UHUGEINT = 49,
2906 HUGEINT = 50,
2907 POINTER = 51,
2908 VALIDITY = 53,
2909 UUID = 54,
2910
2911 GEOMETRY = 60,
2912
2913 STRUCT = 100,
2914 LIST = 101,
2915 MAP = 102,
2916 TABLE = 103,
2917 ENUM = 104,
2918 AGGREGATE_STATE = 105,
2919 LAMBDA = 106,
2920 UNION = 107,
2921 ARRAY = 108,
2922 VARIANT = 109
2923};
The UUIDv4 class contains static operations for the UUIDv4 type.
Definition duckdb.hpp:57456
TYPE

◆ ComplexJSONType

enum class duckdb::ComplexJSONType : uint8_t
strongprivate
3695: uint8_t { VALUE = 0, OBJECT = 1, ARRAY = 2 };

◆ TimestampCastResult

enum class duckdb::TimestampCastResult : uint8_t
strong
4222 : uint8_t {
4223 SUCCESS,
4224 ERROR_INCORRECT_FORMAT,
4225 ERROR_NON_UTC_TIMEZONE,
4226 ERROR_RANGE,
4227 STRICT_UTC
4228};

◆ DateCastResult

enum class duckdb::DateCastResult : uint8_t
strong
5006: uint8_t { SUCCESS, ERROR_INCORRECT_FORMAT, ERROR_RANGE };

◆ CatalogLookupBehavior

Enum used for indicating lookup behavior of specific catalog types.

6461: uint8_t { STANDARD = 0, LOWER_PRIORITY = 1, NEVER_LOOKUP = 2 };

◆ OnEntryNotFound

enum class duckdb::OnEntryNotFound : uint8_t
strong
6479: uint8_t { THROW_EXCEPTION = 0, RETURN_NULL = 1 };

◆ FileCompressionType

enum class duckdb::FileCompressionType : uint8_t
strong
7515: uint8_t { AUTO_DETECT = 0, UNCOMPRESSED = 1, GZIP = 2, ZSTD = 3 };

◆ FileGlobOptions

enum class duckdb::FileGlobOptions : uint8_t
strong
7539: uint8_t { DISALLOW_EMPTY = 0, ALLOW_EMPTY = 1, FALLBACK_GLOB = 2 };

◆ DebugInitialize

enum class duckdb::DebugInitialize : uint8_t
strong
7581: uint8_t { NO_INITIALIZE = 0, DEBUG_ZERO_INITIALIZE = 1, DEBUG_ONE_INITIALIZE = 2 };

◆ FileBufferType

enum class duckdb::FileBufferType : uint8_t
strong
7594: uint8_t { BLOCK = 1, MANAGED_BUFFER = 2, TINY_BUFFER = 3, EXTERNAL_FILE = 4 };

◆ CachingMode

Caching mode for CachingFileSystemWrapper. By default only remote files will be cached, but it's also allowed to cache local for direct IO use case.

7704 : uint8_t {
7705 // Cache all files.
7706 ALWAYS_CACHE = 0,
7707 // Only cache remote files, bypass cache for local files.
7708 CACHE_REMOTE_ONLY = 1,
7709 // Doesn't perform caching.
7710 NO_CACHING = 2,
7711};

◆ FileLockType

enum class duckdb::FileLockType : uint8_t
strong
7718: uint8_t { NO_LOCK = 0, READ_LOCK = 1, WRITE_LOCK = 2 };

◆ FileType

enum class duckdb::FileType
strongprivate
Enumerator
FILE_TYPE_REGULAR 

Regular file.

FILE_TYPE_DIR 

Directory.

FILE_TYPE_FIFO 

FIFO named pipe.

FILE_TYPE_SOCKET 

Socket.

FILE_TYPE_LINK 

Symbolic link.

FILE_TYPE_BLOCKDEV 

Block device.

FILE_TYPE_CHARDEV 

Character device.

FILE_TYPE_INVALID 

Unknown or invalid file handle.

8110 {
8127};
@ FILE_TYPE_INVALID
Unknown or invalid file handle.
@ FILE_TYPE_DIR
Directory.
@ FILE_TYPE_LINK
Symbolic link.
@ FILE_TYPE_SOCKET
Socket.
@ FILE_TYPE_REGULAR
Regular file.
@ FILE_TYPE_BLOCKDEV
Block device.
@ FILE_TYPE_CHARDEV
Character device.
@ FILE_TYPE_FIFO
FIFO named pipe.

◆ VectorType

enum class duckdb::VectorType : uint8_t
strong
8526 : uint8_t {
8527 FLAT_VECTOR, // Flat vectors represent a standard uncompressed vector
8528 FSST_VECTOR, // Contains string data compressed with FSST
8529 CONSTANT_VECTOR, // Constant vector represents a single constant
8530 DICTIONARY_VECTOR, // Dictionary vector represents a selection vector on top of another vector
8531 SEQUENCE_VECTOR // Sequence vector represents a sequence with a start point and an increment
8532};

◆ AllocatorFreeType

enum class duckdb::AllocatorFreeType
strong
8575{ REQUIRES_FREE, DOES_NOT_REQUIRE_FREE };

◆ VectorBufferType

enum class duckdb::VectorBufferType : uint8_t
strongprivate
9961 : uint8_t {
9962 STANDARD_BUFFER, // standard buffer, holds a single array of data
9963 DICTIONARY_BUFFER, // dictionary buffer, holds a selection vector
9964 VECTOR_CHILD_BUFFER, // vector child buffer: holds another vector
9965 STRING_BUFFER, // string buffer, holds a string heap
9966 FSST_BUFFER, // fsst compressed string buffer, holds a string heap, fsst symbol table and a string count
9967 STRUCT_BUFFER, // struct buffer, holds a ordered mapping from name to child vector
9968 LIST_BUFFER, // list buffer, holds a single flatvector child
9969 MANAGED_BUFFER, // managed buffer, holds a buffer managed by the buffermanager
9970 OPAQUE_BUFFER, // opaque buffer, can be created for example by the parquet reader
9971 ARRAY_BUFFER // array buffer, holds a single flatvector child
9972};

◆ VectorAuxiliaryDataType

enum class duckdb::VectorAuxiliaryDataType : uint8_t
strongprivate
9974 : uint8_t {
9975 ARROW_AUXILIARY // Holds Arrow Chunks that this vector depends on
9976};

◆ MapInvalidReason

enum class duckdb::MapInvalidReason : uint8_t
strong
11082: uint8_t { VALID, NULL_KEY, DUPLICATE_KEY, NOT_ALIGNED, INVALID_PARAMS };

◆ UnionInvalidReason

enum class duckdb::UnionInvalidReason : uint8_t
strong
11140 : uint8_t {
11141 VALID,
11142 TAG_OUT_OF_RANGE,
11143 NO_MEMBERS,
11144 VALIDITY_OVERLAP,
11145 TAG_MISMATCH,
11146 NULL_TAG
11147};

◆ FunctionErrors

Whether or not a function can throw an error or not.

12540: uint8_t { CANNOT_ERROR = 0, CAN_THROW_RUNTIME_ERROR = 1 };

◆ ExpressionType

enum class duckdb::ExpressionType : uint8_t
strongprivate
13007 : uint8_t {
13008 INVALID = 0,
13009
13010 // explicitly cast left as right (right is integer in ValueType enum)
13011 OPERATOR_CAST = 12,
13012 // logical not operator
13013 OPERATOR_NOT = 13,
13014 // is null operator
13015 OPERATOR_IS_NULL = 14,
13016 // is not null operator
13017 OPERATOR_IS_NOT_NULL = 15,
13018 // unpack operator
13019 OPERATOR_UNPACK = 16,
13020
13021 // -----------------------------
13022 // Comparison Operators
13023 // -----------------------------
13024 // equal operator between left and right
13025 COMPARE_EQUAL = 25,
13026 // compare initial boundary
13027 COMPARE_BOUNDARY_START = COMPARE_EQUAL,
13028 // inequal operator between left and right
13029 COMPARE_NOTEQUAL = 26,
13030 // less than operator between left and right
13031 COMPARE_LESSTHAN = 27,
13032 // greater than operator between left and right
13033 COMPARE_GREATERTHAN = 28,
13034 // less than equal operator between left and right
13035 COMPARE_LESSTHANOREQUALTO = 29,
13036 // greater than equal operator between left and right
13037 COMPARE_GREATERTHANOREQUALTO = 30,
13038 // IN operator [left IN (right1, right2, ...)]
13039 COMPARE_IN = 35,
13040 // NOT IN operator [left NOT IN (right1, right2, ...)]
13041 COMPARE_NOT_IN = 36,
13042 // IS DISTINCT FROM operator
13043 COMPARE_DISTINCT_FROM = 37,
13044
13045 COMPARE_BETWEEN = 38,
13046 COMPARE_NOT_BETWEEN = 39,
13047 // IS NOT DISTINCT FROM operator
13048 COMPARE_NOT_DISTINCT_FROM = 40,
13049 // compare final boundary
13050 COMPARE_BOUNDARY_END = COMPARE_NOT_DISTINCT_FROM,
13051
13052 // -----------------------------
13053 // Conjunction Operators
13054 // -----------------------------
13055 CONJUNCTION_AND = 50,
13056 CONJUNCTION_OR = 51,
13057
13058 // -----------------------------
13059 // Values
13060 // -----------------------------
13061 VALUE_CONSTANT = 75,
13062 VALUE_PARAMETER = 76,
13063 VALUE_TUPLE = 77,
13064 VALUE_TUPLE_ADDRESS = 78,
13065 VALUE_NULL = 79,
13066 VALUE_VECTOR = 80,
13067 VALUE_SCALAR = 81,
13068 VALUE_DEFAULT = 82,
13069
13070 // -----------------------------
13071 // Aggregates
13072 // -----------------------------
13073 AGGREGATE = 100,
13074 BOUND_AGGREGATE = 101,
13075 GROUPING_FUNCTION = 102,
13076
13077 // -----------------------------
13078 // Window Functions
13079 // -----------------------------
13080 WINDOW_AGGREGATE = 110,
13081
13082 WINDOW_RANK = 120,
13083 WINDOW_RANK_DENSE = 121,
13084 WINDOW_NTILE = 122,
13085 WINDOW_PERCENT_RANK = 123,
13086 WINDOW_CUME_DIST = 124,
13087 WINDOW_ROW_NUMBER = 125,
13088
13089 WINDOW_FIRST_VALUE = 130,
13090 WINDOW_LAST_VALUE = 131,
13091 WINDOW_LEAD = 132,
13092 WINDOW_LAG = 133,
13093 WINDOW_NTH_VALUE = 134,
13094 WINDOW_FILL = 135,
13095
13096 // -----------------------------
13097 // Functions
13098 // -----------------------------
13099 FUNCTION = 140,
13100 BOUND_FUNCTION = 141,
13101
13102 // -----------------------------
13103 // Operators
13104 // -----------------------------
13105 CASE_EXPR = 150,
13106 OPERATOR_NULLIF = 151,
13107 OPERATOR_COALESCE = 152,
13108 ARRAY_EXTRACT = 153,
13109 ARRAY_SLICE = 154,
13110 STRUCT_EXTRACT = 155,
13111 ARRAY_CONSTRUCTOR = 156,
13112 ARROW = 157,
13113 OPERATOR_TRY = 158,
13114
13115 // -----------------------------
13116 // Subquery IN/EXISTS
13117 // -----------------------------
13118 SUBQUERY = 175,
13119
13120 // -----------------------------
13121 // Parser
13122 // -----------------------------
13123 STAR = 200,
13124 TABLE_STAR = 201,
13125 PLACEHOLDER = 202,
13126 COLUMN_REF = 203,
13127 FUNCTION_REF = 204,
13128 TABLE_REF = 205,
13129 LAMBDA_REF = 206,
13130 TYPE = 207,
13131
13132 // -----------------------------
13133 // Miscellaneous
13134 // -----------------------------
13135 CAST = 225,
13136 BOUND_REF = 227,
13137 BOUND_COLUMN_REF = 228,
13138 BOUND_UNNEST = 229,
13139 COLLATE = 230,
13140 LAMBDA = 231,
13141 POSITIONAL_REFERENCE = 232,
13142 BOUND_LAMBDA_REF = 233,
13143 BOUND_EXPANDED = 234
13144};

◆ ExpressionClass

enum class duckdb::ExpressionClass : uint8_t
strongprivate
13149 : uint8_t {
13150 INVALID = 0,
13151 //===--------------------------------------------------------------------===//
13152 // Parsed Expressions
13153 //===--------------------------------------------------------------------===//
13154 AGGREGATE = 1,
13155 CASE = 2,
13156 CAST = 3,
13157 COLUMN_REF = 4,
13158 COMPARISON = 5,
13159 CONJUNCTION = 6,
13160 CONSTANT = 7,
13161 DEFAULT = 8,
13162 FUNCTION = 9,
13163 OPERATOR = 10,
13164 STAR = 11,
13165 SUBQUERY = 13,
13166 WINDOW = 14,
13167 PARAMETER = 15,
13168 COLLATE = 16,
13169 LAMBDA = 17,
13170 POSITIONAL_REFERENCE = 18,
13171 BETWEEN = 19,
13172 LAMBDA_REF = 20,
13173 TYPE = 21,
13174 //===--------------------------------------------------------------------===//
13175 // Bound Expressions
13176 //===--------------------------------------------------------------------===//
13177 BOUND_AGGREGATE = 25,
13178 BOUND_CASE = 26,
13179 BOUND_CAST = 27,
13180 BOUND_COLUMN_REF = 28,
13181 BOUND_COMPARISON = 29,
13182 BOUND_CONJUNCTION = 30,
13183 BOUND_CONSTANT = 31,
13184 BOUND_DEFAULT = 32,
13185 BOUND_FUNCTION = 33,
13186 BOUND_OPERATOR = 34,
13187 BOUND_PARAMETER = 35,
13188 BOUND_REF = 36,
13189 BOUND_SUBQUERY = 37,
13190 BOUND_WINDOW = 38,
13191 BOUND_BETWEEN = 39,
13192 BOUND_UNNEST = 40,
13193 BOUND_LAMBDA = 41,
13194 BOUND_LAMBDA_REF = 42,
13195 //===--------------------------------------------------------------------===//
13196 // Miscellaneous
13197 //===--------------------------------------------------------------------===//
13198 BOUND_EXPRESSION = 50,
13199 BOUND_EXPANDED = 51
13200};

◆ SimplifiedTokenType

Simplified tokens are a simplified (dense) representation of the lexer Used for simple syntax highlighting in the tests

13442 : uint8_t {
13443 SIMPLIFIED_TOKEN_IDENTIFIER,
13444 SIMPLIFIED_TOKEN_NUMERIC_CONSTANT,
13445 SIMPLIFIED_TOKEN_STRING_CONSTANT,
13446 SIMPLIFIED_TOKEN_OPERATOR,
13447 SIMPLIFIED_TOKEN_KEYWORD,
13448 SIMPLIFIED_TOKEN_COMMENT,
13449 SIMPLIFIED_TOKEN_ERROR,
13450 SIMPLIFIED_TOKEN_ERROR_EMPHASIS,
13451 SIMPLIFIED_TOKEN_ERROR_SUGGESTION
13452};

◆ KeywordCategory

enum class duckdb::KeywordCategory : uint8_t
strongprivate
13459 : uint8_t {
13460 KEYWORD_RESERVED,
13461 KEYWORD_UNRESERVED,
13462 KEYWORD_TYPE_FUNC,
13463 KEYWORD_COL_NAME,
13464 KEYWORD_NONE
13465};

◆ CompressionType

enum class duckdb::CompressionType : uint8_t
strongprotected
13611 : uint8_t {
13612 COMPRESSION_AUTO = 0,
13613 COMPRESSION_UNCOMPRESSED = 1,
13614 COMPRESSION_CONSTANT = 2, // internal only
13615 COMPRESSION_RLE = 3,
13616 COMPRESSION_DICTIONARY = 4,
13617 COMPRESSION_PFOR_DELTA = 5,
13618 COMPRESSION_BITPACKING = 6,
13619 COMPRESSION_FSST = 7,
13620 COMPRESSION_CHIMP = 8,
13621 COMPRESSION_PATAS = 9,
13622 COMPRESSION_ALP = 10,
13623 COMPRESSION_ALPRD = 11,
13624 COMPRESSION_ZSTD = 12,
13625 COMPRESSION_ROARING = 13,
13626 COMPRESSION_EMPTY = 14, // internal only
13627 COMPRESSION_DICT_FSST = 15,
13628 COMPRESSION_COUNT // This has to stay the last entry of the type!
13629};

◆ TableColumnType

enum class duckdb::TableColumnType : uint8_t
strongprivate
13692: uint8_t { STANDARD = 0, GENERATED = 1 };

◆ FunctionNullHandling

The default null handling is NULL in, NULL out.

13816: uint8_t { DEFAULT_NULL_HANDLING = 0, SPECIAL_HANDLING = 1 };

◆ FunctionStability

The stability of the function, used by the optimizer CONSISTENT -> this function always returns the same result when given the same input, no variance CONSISTENT_WITHIN_QUERY -> this function returns the same result WITHIN the same query/transaction but the result might change across queries (e.g. NOW(), CURRENT_TIME) VOLATILE -> the result of this function might change per row (e.g. RANDOM())

13822: uint8_t { CONSISTENT = 0, VOLATILE = 1, CONSISTENT_WITHIN_QUERY = 2 };

◆ FunctionCollationHandling

How to handle collations PROPAGATE_COLLATIONS -> this function combines collation from its inputs and emits them again (default) PUSH_COMBINABLE_COLLATIONS -> combinable collations are executed for the input arguments IGNORE_COLLATIONS -> collations are completely ignored by the function

13828 : uint8_t {
13829 PROPAGATE_COLLATIONS = 0,
13830 PUSH_COMBINABLE_COLLATIONS = 1,
13831 IGNORE_COLLATIONS = 2
13832};

◆ ColumnIndexType

Enumerator
FULL_READ 

Regular column index, refers to a column in its entirety.

PUSHDOWN_EXTRACT 

This index references a struct/variant field that MUST be extracted by the scan and emitted directly.

14595 : uint8_t {
14596 INVALID,
14598 FULL_READ,
14601};
@ PUSHDOWN_EXTRACT
This index references a struct/variant field that MUST be extracted by the scan and emitted directly.
@ FULL_READ
Regular column index, refers to a column in its entirety.

◆ StorageIndexType

enum class duckdb::StorageIndexType : uint8_t
strongprivate

◆ FilterPropagateResult

enum class duckdb::FilterPropagateResult : uint8_t
strongprivate
14940 : uint8_t {
14941 NO_PRUNING_POSSIBLE = 0,
14942 FILTER_ALWAYS_TRUE = 1,
14943 FILTER_ALWAYS_FALSE = 2,
14944 FILTER_TRUE_OR_NULL = 3,
14945 FILTER_FALSE_OR_NULL = 4
14946};

◆ GeometryType

enum class duckdb::GeometryType : uint8_t
strongprivate
15400 : uint8_t {
15401 INVALID = 0,
15402 POINT = 1,
15403 LINESTRING = 2,
15404 POLYGON = 3,
15405 MULTIPOINT = 4,
15406 MULTILINESTRING = 5,
15407 MULTIPOLYGON = 6,
15408 GEOMETRYCOLLECTION = 7,
15409};
POLYGON

◆ VertexType

enum class duckdb::VertexType : uint8_t
strongprivate
15411: uint8_t { XY = 0, XYZ = 1, XYM = 2, XYZM = 3 };
XYZ

◆ GeometryStorageType

enum class duckdb::GeometryStorageType : uint8_t
strongprivate
15583 : uint8_t {
15584
15585 SPATIAL = 0,
15586 WKB = 1,
15587
15588 // Base: 16
15589 POINT_XY = 17,
15590 LINESTRING_XY = 18,
15591 POLYGON_XY = 19,
15592 MULTIPOINT_XY = 20,
15593 MULTILINESTRING_XY = 21,
15594 MULTIPOLYGON_XY = 22,
15595
15596 // Base: 32
15597 POINT_XYZ = 33,
15598 LINESTRING_XYZ = 34,
15599 POLYGON_XYZ = 35,
15600 MULTIPOINT_XYZ = 36,
15601 MULTILINESTRING_XYZ = 37,
15602 MULTIPOLYGON_XYZ = 38,
15603
15604 // Base: 64
15605 POINT_XYM = 65,
15606 LINESTRING_XYM = 66,
15607 POLYGON_XYM = 67,
15608 MULTIPOINT_XYM = 68,
15609 MULTILINESTRING_XYM = 69,
15610 MULTIPOLYGON_XYM = 70,
15611
15612 // Base: 96
15613 POINT_XYZM = 97,
15614 LINESTRING_XYZM = 98,
15615 POLYGON_XYZM = 99,
15616 MULTIPOINT_XYZM = 100,
15617 MULTILINESTRING_XYZM = 101,
15618 MULTIPOLYGON_XYZM = 102,
15619};

◆ VariantChildLookupMode

enum class duckdb::VariantChildLookupMode : uint8_t
strong
15989: uint8_t { INVALID, BY_KEY, BY_INDEX };

◆ VariantLogicalType

enum class duckdb::VariantLogicalType : uint8_t
strong
16060 : uint8_t {
16061 VARIANT_NULL = 0,
16062 BOOL_TRUE = 1,
16063 BOOL_FALSE = 2,
16064 INT8 = 3,
16065 INT16 = 4,
16066 INT32 = 5,
16067 INT64 = 6,
16068 INT128 = 7,
16069 UINT8 = 8,
16070 UINT16 = 9,
16071 UINT32 = 10,
16072 UINT64 = 11,
16073 UINT128 = 12,
16074 FLOAT = 13,
16075 DOUBLE = 14,
16076 DECIMAL = 15,
16077 VARCHAR = 16,
16078 BLOB = 17,
16079 UUID = 18,
16080 DATE = 19,
16081 TIME_MICROS = 20,
16082 TIME_NANOS = 21,
16083 TIMESTAMP_SEC = 22,
16084 TIMESTAMP_MILIS = 23,
16085 TIMESTAMP_MICROS = 24,
16086 TIMESTAMP_NANOS = 25,
16087 TIME_MICROS_TZ = 26,
16088 TIMESTAMP_MICROS_TZ = 27,
16089 INTERVAL = 28,
16090 OBJECT = 29,
16091 ARRAY = 30,
16092 BIGNUM = 31,
16093 BITSTRING = 32,
16094 GEOMETRY = 33,
16095 ENUM_SIZE /* always kept as last item of the enum */
16096};

◆ VariantStatsShreddingState

Enumerator
UNINITIALIZED 

Uninitialized, not unshredded/shredded.

NOT_SHREDDED 

No shredding applied yet.

SHREDDED 

Shredded consistently.

INCONSISTENT 

Result from combining incompatible shreddings.

16153 : uint8_t {
16155 UNINITIALIZED,
16159 SHREDDED,
16162};
@ INCONSISTENT
Result from combining incompatible shreddings.
@ SHREDDED
Shredded consistently.
@ NOT_SHREDDED
No shredding applied yet.

◆ StatsInfo

enum class duckdb::StatsInfo : uint8_t
strongprivate
16258 : uint8_t {
16259 CAN_HAVE_NULL_VALUES = 0,
16260 CANNOT_HAVE_NULL_VALUES = 1,
16261 CAN_HAVE_VALID_VALUES = 2,
16262 CANNOT_HAVE_VALID_VALUES = 3,
16263 CAN_HAVE_NULL_AND_VALID_VALUES = 4
16264};

◆ StatisticsType

enum class duckdb::StatisticsType : uint8_t
strongprivate
16266 : uint8_t {
16267 NUMERIC_STATS,
16268 STRING_STATS,
16269 LIST_STATS,
16270 STRUCT_STATS,
16271 BASE_STATS,
16272 ARRAY_STATS,
16273 GEOMETRY_STATS,
16274 VARIANT_STATS
16275};

◆ AggregateType

enum class duckdb::AggregateType : uint8_t
strong
16831: uint8_t { NON_DISTINCT = 1, DISTINCT = 2 };

◆ AggregateOrderDependent

Whether or not the input order influences the result of the aggregate.

16833: uint8_t { ORDER_DEPENDENT = 1, NOT_ORDER_DEPENDENT = 2 };

◆ AggregateDistinctDependent

Whether or not the input distinctness influences the result of the aggregate.

16835: uint8_t { DISTINCT_DEPENDENT = 1, NOT_DISTINCT_DEPENDENT = 2 };

◆ AggregateCombineType

Whether or not the combiner needs to preserve the source.

16837: uint8_t { PRESERVE_INPUT = 1, ALLOW_DESTRUCTIVE = 2 };

◆ OrderType

enum class duckdb::OrderType : uint8_t
strong
17490: uint8_t { INVALID = 0, ORDER_DEFAULT = 1, ASCENDING = 2, DESCENDING = 3 };

◆ OrderByNullType

enum class duckdb::OrderByNullType : uint8_t
strong
17492: uint8_t { INVALID = 0, ORDER_DEFAULT = 1, NULLS_FIRST = 2, NULLS_LAST = 3 };

◆ DefaultOrderByNullType

enum class duckdb::DefaultOrderByNullType : uint8_t
strong
17494 : uint8_t {
17495 INVALID = 0,
17496 NULLS_FIRST = 2,
17497 NULLS_LAST = 3,
17498 NULLS_FIRST_ON_ASC_LAST_ON_DESC = 4,
17499 NULLS_LAST_ON_ASC_FIRST_ON_DESC = 5
17500};

◆ ResultModifierType

enum class duckdb::ResultModifierType : uint8_t
strong
17510 : uint8_t {
17511 LIMIT_MODIFIER = 1,
17512 ORDER_MODIFIER = 2,
17513 DISTINCT_MODIFIER = 3,
17514 LIMIT_PERCENT_MODIFIER = 4
17515};

◆ SetOperationType

enum class duckdb::SetOperationType : uint8_t
strong
17689: uint8_t { NONE = 0, UNION = 1, EXCEPT = 2, INTERSECT = 3, UNION_BY_NAME = 4 };

◆ LimitNodeType

enum class duckdb::LimitNodeType : uint8_t
strongprotected
17847 : uint8_t {
17848 UNSET = 0,
17849 CONSTANT_VALUE = 1,
17850 CONSTANT_PERCENTAGE = 2,
17851 EXPRESSION_VALUE = 3,
17852 EXPRESSION_PERCENTAGE = 4
17853};

◆ DistinctType

enum class duckdb::DistinctType : uint8_t
strongprotected
17941: uint8_t { DISTINCT = 0, DISTINCT_ON = 1 };

◆ AggregateDestructorType

enum class duckdb::AggregateDestructorType
strong
18051 {
18052 STANDARD,
18053 // legacy destructors allow non-trivial destructors in aggregate states
18054 // these might not be trivial to off-load to disk
18055 LEGACY
18056};

◆ ColumnDataAllocatorType

Enumerator
BUFFER_MANAGER_ALLOCATOR 

Use a buffer manager to allocate large chunks of memory that vectors then use.

IN_MEMORY_ALLOCATOR 

Use an in-memory allocator, allocating data for every chunk This causes the column data collection to allocate blocks that are not tied to a buffer manager

HYBRID 

Use a buffer manager to allocate vectors, but use a StringHeap for strings.

18797 : uint8_t {
18804 HYBRID
18805};
@ BUFFER_MANAGER_ALLOCATOR
Use a buffer manager to allocate large chunks of memory that vectors then use.
@ HYBRID
Use a buffer manager to allocate vectors, but use a StringHeap for strings.

◆ ColumnDataScanProperties

Enumerator
ALLOW_ZERO_COPY 

Allow zero copy scans - this introduces a dependency on the resulting vector on the scan state of the column data collection, which means vectors might not be valid anymore after the next chunk is scanned.

DISALLOW_ZERO_COPY 

Disallow zero-copy scans, always copying data into the target vector As a result, data scanned will be valid even after the column data collection is destroyed

◆ ColumnDataCollectionLifetime

Enumerator
REGULAR 

Regular lifetime management.

THROW_ERROR_AFTER_DATABASE_CLOSES 

Accessing will throw an error after the DB closes Optional for ColumnDataAllocatorType::BUFFER_MANAGER_ALLOCATOR only

18817 {
18819 REGULAR,
18823};

◆ QueryResultOutputType

enum class duckdb::QueryResultOutputType : uint8_t
strongprivate
19230: uint8_t { FORCE_MATERIALIZED, ALLOW_STREAMING };

◆ QueryResultMemoryType

enum class duckdb::QueryResultMemoryType : uint8_t
strongprivate
19232: uint8_t { IN_MEMORY, BUFFER_MANAGED };

◆ StatementType

enum class duckdb::StatementType : uint8_t
strongprivate
19325 : uint8_t {
19326 INVALID_STATEMENT, // invalid statement type
19327 SELECT_STATEMENT, // select statement type
19328 INSERT_STATEMENT, // insert statement type
19329 UPDATE_STATEMENT, // update statement type
19330 CREATE_STATEMENT, // create statement type
19331 DELETE_STATEMENT, // delete statement type
19332 PREPARE_STATEMENT, // prepare statement type
19333 EXECUTE_STATEMENT, // execute statement type
19334 ALTER_STATEMENT, // alter statement type
19335 TRANSACTION_STATEMENT, // transaction statement type,
19336 COPY_STATEMENT, // copy type
19337 ANALYZE_STATEMENT, // analyze type
19338 VARIABLE_SET_STATEMENT, // variable set statement type
19339 CREATE_FUNC_STATEMENT, // create func statement type
19340 EXPLAIN_STATEMENT, // explain statement type
19341 DROP_STATEMENT, // DROP statement type
19342 EXPORT_STATEMENT, // EXPORT statement type
19343 PRAGMA_STATEMENT, // PRAGMA statement type
19344 VACUUM_STATEMENT, // VACUUM statement type
19345 CALL_STATEMENT, // CALL statement type
19346 SET_STATEMENT, // SET statement type
19347 LOAD_STATEMENT, // LOAD statement type
19348 RELATION_STATEMENT,
19349 EXTENSION_STATEMENT,
19350 LOGICAL_PLAN_STATEMENT,
19351 ATTACH_STATEMENT,
19352 DETACH_STATEMENT,
19353 MULTI_STATEMENT,
19354 COPY_DATABASE_STATEMENT,
19355 UPDATE_EXTENSIONS_STATEMENT,
19356 MERGE_INTO_STATEMENT
19357};

◆ StatementReturnType

enum class duckdb::StatementReturnType : uint8_t
strongprivate
19361 : uint8_t {
19362 QUERY_RESULT, // the statement returns a query result (e.g. for display to the user)
19363 CHANGED_ROWS, // the statement returns a single row containing the number of changed rows (e.g. an insert stmt)
19364 NOTHING // the statement returns nothing
19365};

◆ ArrowOffsetSize

enum class duckdb::ArrowOffsetSize : uint8_t
strong
19455: uint8_t { REGULAR, LARGE };

◆ ArrowFormatVersion

Enumerator
V1_0 

Base Version.

V1_1 

Added 256-bit Decimal type.

V1_2 

Added MonthDayNano interval type.

V1_3 

Added Run-End Encoded Layout.

V1_4 

Added Variable-size Binary View Layout and the associated BinaryView and Utf8View types. Added ListView Layout and the associated ListView and LargeListView types. Added Variadic buffers.

V1_5 

Expanded Decimal type bit widths to allow 32-bit and 64-bit types.

19457 : uint8_t {
19459 V1_0 = 10,
19461 V1_1 = 11,
19463 V1_2 = 12,
19465 V1_3 = 13,
19468 V1_4 = 14,
19470 V1_5 = 15
19471};
@ V1_3
Added Run-End Encoded Layout.
@ V1_2
Added MonthDayNano interval type.
@ V1_1
Added 256-bit Decimal type.
@ V1_5
Expanded Decimal type bit widths to allow 32-bit and 64-bit types.

◆ QueryResultType

enum class duckdb::QueryResultType : uint8_t
strong
19504: uint8_t { MATERIALIZED_RESULT, STREAM_RESULT, PENDING_RESULT, ARROW_RESULT };

◆ PendingExecutionResult

enum class duckdb::PendingExecutionResult : uint8_t
strongprivate
19794 : uint8_t {
19795 RESULT_READY,
19796 RESULT_NOT_READY,
19797 EXECUTION_ERROR,
19798 BLOCKED,
19799 NO_TASKS_AVAILABLE,
19800 EXECUTION_FINISHED
19801};

◆ ExplainFormat

enum class duckdb::ExplainFormat : uint8_t
strong
20155: uint8_t { DEFAULT, TEXT, JSON, HTML, GRAPHVIZ, YAML, MERMAID };

◆ OperatorResultType

The OperatorResultType is used to indicate how data should flow around a regular (i.e. non-sink and non-source) physical operator There are four possible results: NEED_MORE_INPUT means the operator is done with the current input and can consume more input if available If there is more input the operator will be called with more input, otherwise the operator will not be called again. HAVE_MORE_OUTPUT means the operator is not finished yet with the current input. The operator will be called again with the same input. FINISHED means the operator has finished the entire pipeline and no more processing is necessary. The operator will not be called again, and neither will any other operators in this pipeline. BLOCKED means the operator does not want to be called right now. e.g. because its currently doing async I/O. The operator has set the interrupt state and the caller is expected to handle it. Note that intermediate operators should currently not emit this state.

20185: uint8_t { NEED_MORE_INPUT, HAVE_MORE_OUTPUT, FINISHED, BLOCKED };

◆ OperatorFinalizeResultType

OperatorFinalizeResultType is used to indicate whether operators have finished flushing their cached results. FINISHED means the operator has flushed all cached data. HAVE_MORE_OUTPUT means the operator contains more results.

20190: uint8_t { HAVE_MORE_OUTPUT, FINISHED };

◆ OperatorFinalResultType

OperatorFinalResultType is used for the final call.

20193: uint8_t { FINISHED, BLOCKED };

◆ SourceResultType

SourceResultType is used to indicate the result of data being pulled out of a source. There are three possible results: HAVE_MORE_OUTPUT means the source has more output, this flag should only be set when data is returned, empty results should only occur for the FINISHED and BLOCKED flags FINISHED means the source is exhausted BLOCKED means the source is currently blocked, e.g. by some async I/O

20201: uint8_t { HAVE_MORE_OUTPUT, FINISHED, BLOCKED };

◆ AsyncResultType

AsyncResultType is used to indicate the result of a AsyncResult, in the context of a wider operation being executed.

20204 : uint8_t {
20205 INVALID, // current result is in an invalid state (eg: it's in the process of being initialized)
20206 IMPLICIT, // current result depends on external context (eg: in the context of TableFunctions, either FINISHED or
20207 // HAVE_MORE_OUTPUT depending on output_chunk.size())
20208 HAVE_MORE_OUTPUT, // current result is not completed, finished (eg: in the context of TableFunctions, function
20209 // accept more iterations and might produce further results)
20210 FINISHED, // current result is completed, no subsequent calls on the same state should be attempted
20211 BLOCKED // current result is blocked, no subsequent calls on the same state should be attempted (eg: in the context
20212 // of AsyncResult, BLOCKED will be associated with a vector of AsyncTasks to be scheduled)
20213};

◆ SinkResultType

The SinkResultType is used to indicate the result of data flowing into a sink There are three possible results: NEED_MORE_INPUT means the sink needs more input FINISHED means the sink is finished executing, and more input will not change the result any further BLOCKED means the sink is currently blocked, e.g. by some async I/O.

20222: uint8_t { NEED_MORE_INPUT, FINISHED, BLOCKED };

◆ SinkCombineResultType

enum class duckdb::SinkCombineResultType : uint8_t
strong
20225: uint8_t { FINISHED, BLOCKED };

◆ SinkFinalizeType

The SinkFinalizeType is used to indicate the result of a Finalize call on a sink There are two possible results: READY means the sink is ready for further processing NO_OUTPUT_POSSIBLE means the sink will never provide output, and any pipelines involving the sink can be skipped BLOCKED means the finalize call to the sink is currently blocked, e.g. by some async I/O.

20232: uint8_t { READY, NO_OUTPUT_POSSIBLE, BLOCKED };

◆ SinkNextBatchType

The SinkNextBatchType is used to indicate the result of a NextBatch call on a sink There are two possible results: READY means the sink is ready for further processing BLOCKED means the NextBatch call to the sink is currently blocked, e.g. by some async I/O.

20238: uint8_t { READY, BLOCKED };

◆ OrderPreservationType

enum class duckdb::OrderPreservationType : uint8_t
strong
20259 : uint8_t {
20260 NO_ORDER, // the operator makes no guarantees on order preservation (i.e. it might re-order the entire input)
20261 INSERTION_ORDER, // the operator maintains the order of the child operators
20262 FIXED_ORDER // the operator outputs rows in a fixed order that must be maintained (e.g. ORDER BY)
20263};

◆ PhysicalOperatorType

enum class duckdb::PhysicalOperatorType : uint8_t
strong
20284 : uint8_t {
20285 INVALID,
20286 ORDER_BY,
20287 LIMIT,
20288 STREAMING_LIMIT,
20289 LIMIT_PERCENT,
20290 TOP_N,
20291 WINDOW,
20292 UNNEST,
20293 UNGROUPED_AGGREGATE,
20294 HASH_GROUP_BY,
20295 PERFECT_HASH_GROUP_BY,
20296 PARTITIONED_AGGREGATE,
20297 FILTER,
20298 PROJECTION,
20299 COPY_TO_FILE,
20300 BATCH_COPY_TO_FILE,
20301 RESERVOIR_SAMPLE,
20302 STREAMING_SAMPLE,
20303 STREAMING_WINDOW,
20304 PIVOT,
20305 COPY_DATABASE,
20306
20307 // -----------------------------
20308 // Scans
20309 // -----------------------------
20310 TABLE_SCAN,
20311 DUMMY_SCAN,
20312 COLUMN_DATA_SCAN,
20313 CHUNK_SCAN,
20314 RECURSIVE_CTE_SCAN,
20315 RECURSIVE_RECURRING_CTE_SCAN,
20316 CTE_SCAN,
20317 DELIM_SCAN,
20318 EXPRESSION_SCAN,
20319 POSITIONAL_SCAN,
20320 // -----------------------------
20321 // Joins
20322 // -----------------------------
20323 BLOCKWISE_NL_JOIN,
20324 NESTED_LOOP_JOIN,
20325 HASH_JOIN,
20326 CROSS_PRODUCT,
20327 PIECEWISE_MERGE_JOIN,
20328 IE_JOIN,
20329 LEFT_DELIM_JOIN,
20330 RIGHT_DELIM_JOIN,
20331 POSITIONAL_JOIN,
20332 ASOF_JOIN,
20333 // -----------------------------
20334 // SetOps
20335 // -----------------------------
20336 UNION,
20337 RECURSIVE_CTE,
20338 RECURSIVE_KEY_CTE,
20339 CTE,
20340
20341 // -----------------------------
20342 // Updates
20343 // -----------------------------
20344 INSERT,
20345 BATCH_INSERT,
20346 DELETE_OPERATOR,
20347 UPDATE,
20348 MERGE_INTO,
20349
20350 // -----------------------------
20351 // Schema
20352 // -----------------------------
20353 CREATE_TABLE,
20354 CREATE_TABLE_AS,
20355 BATCH_CREATE_TABLE_AS,
20356 CREATE_INDEX,
20357 ALTER,
20358 CREATE_SEQUENCE,
20359 CREATE_VIEW,
20360 CREATE_SCHEMA,
20361 CREATE_MACRO,
20362 DROP,
20363 PRAGMA,
20364 TRANSACTION,
20365 CREATE_TYPE,
20366 ATTACH,
20367 DETACH,
20368
20369 // -----------------------------
20370 // Helpers
20371 // -----------------------------
20372 EXPLAIN,
20373 EXPLAIN_ANALYZE,
20374 EMPTY_RESULT,
20375 EXECUTE,
20376 PREPARE,
20377 VACUUM,
20378 EXPORT,
20379 SET,
20380 SET_VARIABLE,
20381 LOAD,
20382 INOUT_FUNCTION,
20383 RESULT_COLLECTOR,
20384 RESET,
20385 EXTENSION,
20386 VERIFY_VECTOR,
20387 UPDATE_EXTENSIONS,
20388
20389 // -----------------------------
20390 // Secret
20391 // -----------------------------
20392 CREATE_SECRET,
20393};

◆ PartitionInfo

enum class duckdb::PartitionInfo
strong
20451{ NONE, REQUIRES_BATCH_INDEX };

◆ TableFilterType

enum class duckdb::TableFilterType : uint8_t
strong
20763 : uint8_t {
20764 CONSTANT_COMPARISON = 0, // constant comparison (e.g. =C, >C, >=C, <C, <=C)
20765 IS_NULL = 1, // C IS NULL
20766 IS_NOT_NULL = 2, // C IS NOT NULL
20767 CONJUNCTION_OR = 3, // OR of different filters
20768 CONJUNCTION_AND = 4, // AND of different filters
20769 STRUCT_EXTRACT = 5, // filter applies to child-column of struct
20770 OPTIONAL_FILTER = 6, // executing filter is not required for query correctness
20771 IN_FILTER = 7, // col IN (C1, C2, C3, ...)
20772 DYNAMIC_FILTER = 8, // dynamic filters can be updated at run-time
20773 EXPRESSION_FILTER = 9, // an arbitrary expression
20774 BLOOM_FILTER = 10, // a probabilistic filter that can test whether a value is in a set of other value
20775};

◆ LogicalOperatorType

enum class duckdb::LogicalOperatorType : uint8_t
strong
20965 : uint8_t {
20966 LOGICAL_INVALID = 0,
20967 LOGICAL_PROJECTION = 1,
20968 LOGICAL_FILTER = 2,
20969 LOGICAL_AGGREGATE_AND_GROUP_BY = 3,
20970 LOGICAL_WINDOW = 4,
20971 LOGICAL_UNNEST = 5,
20972 LOGICAL_LIMIT = 6,
20973 LOGICAL_ORDER_BY = 7,
20974 LOGICAL_TOP_N = 8,
20975 LOGICAL_COPY_TO_FILE = 10,
20976 LOGICAL_DISTINCT = 11,
20977 LOGICAL_SAMPLE = 12,
20978 LOGICAL_PIVOT = 14,
20979 LOGICAL_COPY_DATABASE = 15,
20980
20981 // -----------------------------
20982 // Data sources
20983 // -----------------------------
20984 LOGICAL_GET = 25,
20985 LOGICAL_CHUNK_GET = 26,
20986 LOGICAL_DELIM_GET = 27,
20987 LOGICAL_EXPRESSION_GET = 28,
20988 LOGICAL_DUMMY_SCAN = 29,
20989 LOGICAL_EMPTY_RESULT = 30,
20990 LOGICAL_CTE_REF = 31,
20991 // -----------------------------
20992 // Joins
20993 // -----------------------------
20994 LOGICAL_JOIN = 50,
20995 LOGICAL_DELIM_JOIN = 51,
20996 LOGICAL_COMPARISON_JOIN = 52,
20997 LOGICAL_ANY_JOIN = 53,
20998 LOGICAL_CROSS_PRODUCT = 54,
20999 LOGICAL_POSITIONAL_JOIN = 55,
21000 LOGICAL_ASOF_JOIN = 56,
21001 LOGICAL_DEPENDENT_JOIN = 57,
21002 // -----------------------------
21003 // SetOps
21004 // -----------------------------
21005 LOGICAL_UNION = 75,
21006 LOGICAL_EXCEPT = 76,
21007 LOGICAL_INTERSECT = 77,
21008 LOGICAL_RECURSIVE_CTE = 78,
21009 LOGICAL_MATERIALIZED_CTE = 79,
21010
21011 // -----------------------------
21012 // Updates
21013 // -----------------------------
21014 LOGICAL_INSERT = 100,
21015 LOGICAL_DELETE = 101,
21016 LOGICAL_UPDATE = 102,
21017 LOGICAL_MERGE_INTO = 103,
21018
21019 // -----------------------------
21020 // Schema
21021 // -----------------------------
21022 LOGICAL_ALTER = 125,
21023 LOGICAL_CREATE_TABLE = 126,
21024 LOGICAL_CREATE_INDEX = 127,
21025 LOGICAL_CREATE_SEQUENCE = 128,
21026 LOGICAL_CREATE_VIEW = 129,
21027 LOGICAL_CREATE_SCHEMA = 130,
21028 LOGICAL_CREATE_MACRO = 131,
21029 LOGICAL_DROP = 132,
21030 LOGICAL_PRAGMA = 133,
21031 LOGICAL_TRANSACTION = 134,
21032 LOGICAL_CREATE_TYPE = 135,
21033 LOGICAL_ATTACH = 136,
21034 LOGICAL_DETACH = 137,
21035
21036 // -----------------------------
21037 // Explain
21038 // -----------------------------
21039 LOGICAL_EXPLAIN = 150,
21040
21041 // -----------------------------
21042 // Helpers
21043 // -----------------------------
21044 LOGICAL_PREPARE = 175,
21045 LOGICAL_EXECUTE = 176,
21046 LOGICAL_EXPORT = 177,
21047 LOGICAL_VACUUM = 178,
21048 LOGICAL_SET = 179,
21049 LOGICAL_LOAD = 180,
21050 LOGICAL_RESET = 181,
21051 LOGICAL_UPDATE_EXTENSIONS = 182,
21052
21053 // -----------------------------
21054 // Secrets
21055 // -----------------------------
21056 LOGICAL_CREATE_SECRET = 190,
21057
21058 LOGICAL_EXTENSION_OPERATOR = 255
21059};

◆ TaskExecutionMode

enum class duckdb::TaskExecutionMode : uint8_t
strong
21786: uint8_t { PROCESS_ALL, PROCESS_PARTIAL };

◆ TaskExecutionResult

enum class duckdb::TaskExecutionResult : uint8_t
strong
21788: uint8_t { TASK_FINISHED, TASK_NOT_FINISHED, TASK_ERROR, TASK_BLOCKED };

◆ InterruptMode

InterruptMode specifies how operators should block/unblock, note that this will happen transparently to the operator, as the operator only needs to return a BLOCKED result and call the callback using the InterruptState. NO_INTERRUPTS: No blocking mode is specified, an error will be thrown when the operator blocks. Should only be used when manually calling operators of which is known they will never block. TASK: A weak pointer to a task is provided. On the callback, this task will be signalled. If the Task has been deleted, this callback becomes a NOP. This is the preferred way to await blocked pipelines. BLOCKING: The caller has blocked awaiting some synchronization primitive to wait for the callback.

21842: uint8_t { NO_INTERRUPTS, TASK, BLOCKING };

◆ OperatorCachingMode

enum class duckdb::OperatorCachingMode : uint8_t
strong
22130: uint8_t { NONE, PARTITIONED, ORDERED, UNORDERED };

◆ TablePartitionInfo

How a table is partitioned by a given set of columns.

22440 : uint8_t {
22441 NOT_PARTITIONED, // the table is not partitioned by the given set of columns
22442 SINGLE_VALUE_PARTITIONS, // each partition has exactly one unique value (e.g. bounds = [1,1][2,2][3,3])
22443 OVERLAPPING_PARTITIONS, // the partitions overlap **only** at the boundaries (e.g. bounds = [1,2][2,3][3,4]
22444 DISJOINT_PARTITIONS // the partitions are disjoint (e.g. bounds = [1,2][3,4][5,6])
22445};

◆ CountType

enum class duckdb::CountType
strongprivate
22447{ COUNT_EXACT, COUNT_APPROXIMATE };

◆ InsertedScanType

enum class duckdb::InsertedScanType
strong
22639 {
22640 // get all rows valid for the transaction
22641 STANDARD,
22642 // scan all rows including transaction local rows
22643 ALL_ROWS
22644};

◆ DeletedScanType

Enumerator
STANDARD 

omit any rows that are deleted

INCLUDE_ALL_DELETED 

include all rows, including all deleted rows

OMIT_COMMITTED_DELETES 

omit only deleted rows that have been committed and have a commit ts lower than the transaction start

22646 {
22648 STANDARD,
22653};
@ INCLUDE_ALL_DELETED
include all rows, including all deleted rows
@ OMIT_COMMITTED_DELETES
omit only deleted rows that have been committed and have a commit ts lower than the transaction start

◆ UpdateScanType

Enumerator
STANDARD 

allow updates

22655 {
22657 STANDARD,
22658 // disallow updates - throw on updates
22659 DISALLOW_UPDATES
22660};

◆ TableScanType

Enumerator
TABLE_SCAN_ALL_ROWS 

Scan all rows, including any deleted rows. Committed updates are merged in.

TABLE_SCAN_OMIT_PERMANENTLY_DELETED 

Scan all rows, excluding any permanently deleted rows. Permanently deleted rows are rows which no transaction will ever need again.

TABLE_SCAN_COMMITTED_ROWS 

Scan the latest committed rows.

22671 {
22679};
@ TABLE_SCAN_COMMITTED_ROWS
Scan the latest committed rows.
@ TABLE_SCAN_ALL_ROWS
Scan all rows, including any deleted rows. Committed updates are merged in.

◆ ChunkInfoType

enum class duckdb::ChunkInfoType : uint8_t
strong
22694: uint8_t { CONSTANT_INFO, VECTOR_INFO, EMPTY_INFO };

◆ CheckpointWALAction

Enumerator
DELETE_WAL 

Delete the WAL file after the checkpoint completes - generally done on shutdown.

DONT_DELETE_WAL 

Leave the WAL file alone.

23115 {
23117 DELETE_WAL,
23120};
@ DELETE_WAL
Delete the WAL file after the checkpoint completes - generally done on shutdown.
@ DONT_DELETE_WAL
Leave the WAL file alone.

◆ CheckpointAction

Enumerator
CHECKPOINT_IF_REQUIRED 

Checkpoint only if a checkpoint is required (i.e. the WAL has data in it that can be flushed)

ALWAYS_CHECKPOINT 

Always checkpoint regardless of whether or not there is data in the WAL to flush.

23122 {
23127};
@ ALWAYS_CHECKPOINT
Always checkpoint regardless of whether or not there is data in the WAL to flush.
@ CHECKPOINT_IF_REQUIRED
Checkpoint only if a checkpoint is required (i.e. the WAL has data in it that can be flushed)

◆ CheckpointType

Enumerator
FULL_CHECKPOINT 

Full checkpoints involve vacuuming deleted rows and updates They can only be run if no transaction need to read old data (that would be cleaned up/vacuumed)

CONCURRENT_CHECKPOINT 

Concurrent checkpoints write committed data to disk but do less clean-up They can be run even when active transactions need to read old data

VACUUM_ONLY 

Only run vacuum - this can be triggered for in-memory tables.

23129 {
23132 FULL_CHECKPOINT,
23138};
@ VACUUM_ONLY
Only run vacuum - this can be triggered for in-memory tables.

◆ StorageLockType

enum class duckdb::StorageLockType
strongprivate
23432{ SHARED = 0, EXCLUSIVE = 1 };

◆ OrderByStatistics

enum class duckdb::OrderByStatistics : uint8_t
strongprotected
24019: uint8_t { MIN, MAX };

◆ OrderByColumnType

enum class duckdb::OrderByColumnType : uint8_t
strongprotected
24020: uint8_t { NUMERIC, STRING };

◆ AsyncResultsExecutionMode

enum class duckdb::AsyncResultsExecutionMode : uint8_t
strong
26052 : uint8_t {
26053 SYNCHRONOUS, // BLOCKED should not bubble up, and they should be executed synchronously
26054 TASK_EXECUTOR // BLOCKED is allowed
26055};

◆ ScanType

enum class duckdb::ScanType : uint8_t
strong
26388: uint8_t { TABLE, PARQUET, EXTERNAL };

◆ TableFunctionInitialization

When to call init_global to initialize the table function.

26498{ INITIALIZE_ON_EXECUTE, INITIALIZE_ON_SCHEDULE };

◆ JoinType

enum class duckdb::JoinType : uint8_t
strongprivate
27462 : uint8_t {
27463 INVALID = 0, // invalid join type
27464 LEFT = 1, // left
27465 RIGHT = 2, // right
27466 INNER = 3, // inner
27467 OUTER = 4, // outer
27468 SEMI = 5, // LEFT SEMI join returns left side row ONLY if it has a join partner, no duplicates.
27469 ANTI = 6, // LEFT ANTI join returns left side row ONLY if it has NO join partner, no duplicates
27470 MARK = 7, // MARK join returns marker indicating whether or not there is a join partner (true), there is no join
27471 // partner (false)
27472 SINGLE = 8, // SINGLE join is like LEFT OUTER JOIN, BUT returns at most one join partner per entry on the LEFT side
27473 // (and NULL if no partner is found)
27474 RIGHT_SEMI = 9, // RIGHT SEMI join is created by the optimizer when the children of a semi join need to be switched
27475 // so that the build side can be the smaller table
27476 RIGHT_ANTI = 10 // RIGHT ANTI join is created by the optimizer when the children of an anti join need to be
27477 // switched so that the build side can be the smaller table
27478};

◆ RelationType

enum class duckdb::RelationType : uint8_t
strongprivate
27517 : uint8_t {
27518 INVALID_RELATION,
27519 TABLE_RELATION,
27520 PROJECTION_RELATION,
27521 FILTER_RELATION,
27522 EXPLAIN_RELATION,
27523 CROSS_PRODUCT_RELATION,
27524 JOIN_RELATION,
27525 AGGREGATE_RELATION,
27526 SET_OPERATION_RELATION,
27527 DISTINCT_RELATION,
27528 LIMIT_RELATION,
27529 ORDER_RELATION,
27530 CREATE_VIEW_RELATION,
27531 CREATE_TABLE_RELATION,
27532 INSERT_RELATION,
27533 VALUE_LIST_RELATION,
27534 MATERIALIZED_RELATION,
27535 DELETE_RELATION,
27536 UPDATE_RELATION,
27537 WRITE_CSV_RELATION,
27538 WRITE_PARQUET_RELATION,
27539 READ_CSV_RELATION,
27540 SUBQUERY_RELATION,
27541 TABLE_FUNCTION_RELATION,
27542 VIEW_RELATION,
27543 QUERY_RELATION,
27544 DELIM_JOIN_RELATION,
27545 DELIM_GET_RELATION,
27546 EXTENSION_RELATION = 255
27547};

◆ JoinRefType

enum class duckdb::JoinRefType : uint8_t
strongprivate
27571 : uint8_t {
27572 REGULAR, // Explicit conditions
27573 NATURAL, // Implied conditions
27574 CROSS, // No condition
27575 POSITIONAL, // Positional condition
27576 ASOF, // AsOf conditions
27577 DEPENDENT, // Dependent join conditions
27578};

◆ ParseInfoType

enum class duckdb::ParseInfoType : uint8_t
strong
28062 : uint8_t {
28063 ALTER_INFO,
28064 ATTACH_INFO,
28065 COPY_INFO,
28066 CREATE_INFO,
28067 CREATE_SECRET_INFO,
28068 DETACH_INFO,
28069 DROP_INFO,
28070 BOUND_EXPORT_DATA,
28071 LOAD_INFO,
28072 PRAGMA_INFO,
28073 SHOW_SELECT_INFO,
28074 TRANSACTION_INFO,
28075 VACUUM_INFO,
28076 COMMENT_ON_INFO,
28077 COMMENT_ON_COLUMN_INFO,
28078 COPY_DATABASE_INFO,
28079 UPDATE_EXTENSIONS_INFO
28080};

◆ OnCreateConflict

enum class duckdb::OnCreateConflict : uint8_t
strong
28126 : uint8_t {
28127 // Standard: throw error
28128 ERROR_ON_CONFLICT,
28129 // CREATE IF NOT EXISTS, silently do nothing on conflict
28130 IGNORE_ON_CONFLICT,
28131 // CREATE OR REPLACE
28132 REPLACE_ON_CONFLICT,
28133 // Update on conflict - only support for functions. Add a function overload if the function already exists.
28134 ALTER_ON_CONFLICT
28135};

◆ SequenceInfo

enum class duckdb::SequenceInfo : uint8_t
strong
28201 : uint8_t {
28202 // Sequence start
28203 SEQ_START,
28204 // Sequence increment
28205 SEQ_INC,
28206 // Sequence minimum value
28207 SEQ_MIN,
28208 // Sequence maximum value
28209 SEQ_MAX,
28210 // Sequence cycle option
28211 SEQ_CYCLE,
28212 // Sequence owner table
28213 SEQ_OWN
28214};

◆ AlterType

enum class duckdb::AlterType : uint8_t
strong
28273 : uint8_t {
28274 INVALID = 0,
28275 ALTER_TABLE = 1,
28276 ALTER_VIEW = 2,
28277 ALTER_SEQUENCE = 3,
28278 CHANGE_OWNERSHIP = 4,
28279 ALTER_SCALAR_FUNCTION = 5,
28280 ALTER_TABLE_FUNCTION = 6,
28281 SET_COMMENT = 7,
28282 SET_COLUMN_COMMENT = 8,
28283 ALTER_DATABASE = 9
28284};

◆ ConstraintType

enum class duckdb::ConstraintType : uint8_t
strongprotected
28366 : uint8_t {
28367 INVALID = 0, // invalid constraint type
28368 NOT_NULL = 1, // NOT NULL constraint
28369 CHECK = 2, // CHECK constraint
28370 UNIQUE = 3, // UNIQUE constraint
28371 FOREIGN_KEY = 4, // FOREIGN KEY constraint
28372};

◆ ForeignKeyType

enum class duckdb::ForeignKeyType : uint8_t
strongprotected
28374 : uint8_t {
28375 FK_TYPE_PRIMARY_KEY_TABLE = 0, // main table
28376 FK_TYPE_FOREIGN_KEY_TABLE = 1, // referencing table
28377 FK_TYPE_SELF_REFERENCE_TABLE = 2 // self refrencing table
28378};

◆ AlterForeignKeyType

enum class duckdb::AlterForeignKeyType : uint8_t
strong
28441: uint8_t { AFT_ADD = 0, AFT_DELETE = 1 };

◆ AlterTableType

enum class duckdb::AlterTableType : uint8_t
strong
28493 : uint8_t {
28494 INVALID = 0,
28495 RENAME_COLUMN = 1,
28496 RENAME_TABLE = 2,
28497 ADD_COLUMN = 3,
28498 REMOVE_COLUMN = 4,
28499 ALTER_COLUMN_TYPE = 5,
28500 SET_DEFAULT = 6,
28501 FOREIGN_KEY_CONSTRAINT = 7,
28502 SET_NOT_NULL = 8,
28503 DROP_NOT_NULL = 9,
28504 SET_COLUMN_COMMENT = 10,
28505 ADD_CONSTRAINT = 11,
28506 SET_PARTITIONED_BY = 12,
28507 SET_SORTED_BY = 13,
28508 ADD_FIELD = 14,
28509 REMOVE_FIELD = 15,
28510 RENAME_FIELD = 16,
28511 SET_TABLE_OPTIONS = 17,
28512 RESET_TABLE_OPTIONS = 18,
28513};

◆ AlterViewType

enum class duckdb::AlterViewType : uint8_t
strong
28824: uint8_t { INVALID = 0, RENAME_VIEW = 1 };

◆ PreparedStatementMode

enum class duckdb::PreparedStatementMode : uint8_t
strong
29530 : uint8_t {
29531 PREPARE_ONLY,
29532 PREPARE_AND_EXECUTE,
29533};

◆ ExplainOutputType

enum class duckdb::ExplainOutputType : uint8_t
strong
29567: uint8_t { ALL = 0, OPTIMIZED_ONLY = 1, PHYSICAL_ONLY = 2 };

◆ OptimizerType

enum class duckdb::OptimizerType : uint32_t
strongprivate
36098 : uint32_t {
36099 INVALID = 0,
36100 EXPRESSION_REWRITER = 1,
36101 FILTER_PULLUP = 2,
36102 FILTER_PUSHDOWN = 3,
36103 EMPTY_RESULT_PULLUP = 4,
36104 CTE_FILTER_PUSHER = 5,
36105 REGEX_RANGE = 6,
36106 IN_CLAUSE = 7,
36107 JOIN_ORDER = 8,
36108 DELIMINATOR = 9,
36109 UNNEST_REWRITER = 10,
36110 UNUSED_COLUMNS = 11,
36111 STATISTICS_PROPAGATION = 12,
36112 COMMON_SUBEXPRESSIONS = 13,
36113 COMMON_AGGREGATE = 14,
36114 COLUMN_LIFETIME = 15,
36115 BUILD_SIDE_PROBE_SIDE = 16,
36116 LIMIT_PUSHDOWN = 17,
36117 TOP_N = 18,
36118 COMPRESSED_MATERIALIZATION = 19,
36119 DUPLICATE_GROUPS = 20,
36120 REORDER_FILTER = 21,
36121 SAMPLING_PUSHDOWN = 22,
36122 JOIN_FILTER_PUSHDOWN = 23,
36123 EXTENSION = 24,
36124 MATERIALIZED_CTE = 25,
36125 SUM_REWRITER = 26,
36126 LATE_MATERIALIZATION = 27,
36127 CTE_INLINING = 28,
36128 ROW_GROUP_PRUNER = 29,
36129 TOP_N_WINDOW_ELIMINATION = 30,
36130 COMMON_SUBPLAN = 31,
36131 JOIN_ELIMINATION = 32,
36132 WINDOW_SELF_JOIN = 33
36133};

◆ MetricGroup

enum class duckdb::MetricGroup : uint8_t
strongprivate
36144 : uint8_t {
36145 ALL,
36146 CORE,
36147 DEFAULT,
36148 EXECUTION,
36149 FILE,
36150 OPERATOR,
36151 OPTIMIZER,
36152 PHASE_TIMING,
36153 INVALID,
36154};

◆ MetricType

enum class duckdb::MetricType : uint8_t
strongprivate
36156 : uint8_t {
36157 // Core metrics
36158 CPU_TIME = 2,
36159 CUMULATIVE_CARDINALITY = 4,
36160 CUMULATIVE_ROWS_SCANNED = 7,
36161 EXTRA_INFO = 3,
36162 LATENCY = 11,
36163 QUERY_NAME = 0,
36164 RESULT_SET_SIZE = 10,
36165 ROWS_RETURNED = 12,
36166 // Execution metrics
36167 BLOCKED_THREAD_TIME = 1,
36168 SYSTEM_PEAK_BUFFER_MEMORY = 14,
36169 SYSTEM_PEAK_TEMP_DIR_SIZE = 15,
36170 TOTAL_MEMORY_ALLOCATED = 91,
36171 // File metrics
36172 ATTACH_LOAD_STORAGE_LATENCY = 92,
36173 ATTACH_REPLAY_WAL_LATENCY = 93,
36174 CHECKPOINT_LATENCY = 94,
36175 COMMIT_LOCAL_STORAGE_LATENCY = 95,
36176 TOTAL_BYTES_READ = 16,
36177 TOTAL_BYTES_WRITTEN = 17,
36178 WAITING_TO_ATTACH_LATENCY = 96,
36179 WAL_REPLAY_ENTRY_COUNT = 97,
36180 WRITE_TO_WAL_LATENCY = 98,
36181 // Operator metrics
36182 OPERATOR_CARDINALITY = 6,
36183 OPERATOR_NAME = 13,
36184 OPERATOR_ROWS_SCANNED = 8,
36185 OPERATOR_TIMING = 9,
36186 OPERATOR_TYPE = 5,
36187 // Optimizer metrics
36188 OPTIMIZER_EXPRESSION_REWRITER = 26,
36189 OPTIMIZER_FILTER_PULLUP = 27,
36190 OPTIMIZER_FILTER_PUSHDOWN = 28,
36191 OPTIMIZER_EMPTY_RESULT_PULLUP = 29,
36192 OPTIMIZER_CTE_FILTER_PUSHER = 30,
36193 OPTIMIZER_REGEX_RANGE = 31,
36194 OPTIMIZER_IN_CLAUSE = 32,
36195 OPTIMIZER_JOIN_ORDER = 33,
36196 OPTIMIZER_DELIMINATOR = 34,
36197 OPTIMIZER_UNNEST_REWRITER = 35,
36198 OPTIMIZER_UNUSED_COLUMNS = 36,
36199 OPTIMIZER_STATISTICS_PROPAGATION = 37,
36200 OPTIMIZER_COMMON_SUBEXPRESSIONS = 38,
36201 OPTIMIZER_COMMON_AGGREGATE = 39,
36202 OPTIMIZER_COLUMN_LIFETIME = 40,
36203 OPTIMIZER_BUILD_SIDE_PROBE_SIDE = 41,
36204 OPTIMIZER_LIMIT_PUSHDOWN = 42,
36205 OPTIMIZER_TOP_N = 43,
36206 OPTIMIZER_COMPRESSED_MATERIALIZATION = 44,
36207 OPTIMIZER_DUPLICATE_GROUPS = 45,
36208 OPTIMIZER_REORDER_FILTER = 46,
36209 OPTIMIZER_SAMPLING_PUSHDOWN = 47,
36210 OPTIMIZER_JOIN_FILTER_PUSHDOWN = 48,
36211 OPTIMIZER_EXTENSION = 49,
36212 OPTIMIZER_MATERIALIZED_CTE = 50,
36213 OPTIMIZER_SUM_REWRITER = 51,
36214 OPTIMIZER_LATE_MATERIALIZATION = 52,
36215 OPTIMIZER_CTE_INLINING = 53,
36216 OPTIMIZER_ROW_GROUP_PRUNER = 54,
36217 OPTIMIZER_TOP_N_WINDOW_ELIMINATION = 55,
36218 OPTIMIZER_COMMON_SUBPLAN = 56,
36219 OPTIMIZER_JOIN_ELIMINATION = 57,
36220 OPTIMIZER_WINDOW_SELF_JOIN = 58,
36221 // PhaseTiming metrics
36222 ALL_OPTIMIZERS = 18,
36223 CUMULATIVE_OPTIMIZER_TIMING = 19,
36224 PHYSICAL_PLANNER = 22,
36225 PHYSICAL_PLANNER_COLUMN_BINDING = 23,
36226 PHYSICAL_PLANNER_CREATE_PLAN = 25,
36227 PHYSICAL_PLANNER_RESOLVE_TYPES = 24,
36228 PLANNER = 20,
36229 PLANNER_BINDING = 21,
36230};

◆ ProfilingParameterNames

enum class duckdb::ProfilingParameterNames : uint8_t
strong
36295: uint8_t { FORMAT, COVERAGE, SAVE_LOCATION, MODE, METRICS };

◆ LambdaSyntax

enum class duckdb::LambdaSyntax : uint8_t
strong
36420: uint8_t { DEFAULT = 0, ENABLE_SINGLE_ARROW = 1, DISABLE_SINGLE_ARROW = 2 };

◆ LambdaSyntaxType

enum class duckdb::LambdaSyntaxType : uint8_t
strong
36427: uint8_t { SINGLE_ARROW_STORAGE = 0, SINGLE_ARROW = 1, LAMBDA_KEYWORD = 2 };

◆ ProfilingCoverage

enum class duckdb::ProfilingCoverage : uint8_t
strongprivate
36730: uint8_t { SELECT = 0, ALL = 1 };

◆ SetScope

enum class duckdb::SetScope : uint8_t
strongprivate
36992 : uint8_t {
36993 AUTOMATIC = 0,
36994 LOCAL = 1, /* unused */
36995 SESSION = 2,
36996 GLOBAL = 3,
36997 VARIABLE = 4
36998};

◆ SettingScope

Enumerator
GLOBAL 

Setting is from the global Setting scope.

LOCAL 

Setting is from the local Setting scope.

SECRET 

Setting was not fetched from settings, but it was fetched from a secret instead.

INVALID 

The setting was not found or invalid in some other way.

37008 : uint8_t {
37010 GLOBAL,
37012 LOCAL,
37014 SECRET,
37016 INVALID
37017};

◆ SettingScopeTarget

Enumerator
GLOBAL_ONLY 

Setting can be set in global scope only.

LOCAL_ONLY 

Setting can be set in local scope only.

GLOBAL_DEFAULT 

Setting can be set in both scopes - but defaults to global.

LOCAL_DEFAULT 

Setting can be set in both scopes - but defaults to local.

37019 {
37020 INVALID,
37024 LOCAL_ONLY,
37029};
@ LOCAL_ONLY
Setting can be set in local scope only.
@ GLOBAL_ONLY
Setting can be set in global scope only.
@ GLOBAL_DEFAULT
Setting can be set in both scopes - but defaults to global.
@ LOCAL_DEFAULT
Setting can be set in both scopes - but defaults to local.

◆ ArrowTypeInfoType

enum class duckdb::ArrowTypeInfoType : uint8_t
strongprotected
37463: uint8_t { LIST, STRUCT, DATE_TIME, STRING, ARRAY, DECIMAL };

◆ ArrowDateTimeType

enum class duckdb::ArrowDateTimeType : uint8_t
strongprotected
37474 : uint8_t {
37475 MILLISECONDS,
37476 MICROSECONDS,
37477 NANOSECONDS,
37478 SECONDS,
37479 DAYS,
37480 MONTHS,
37481 MONTH_DAY_NANO
37482};

◆ ArrowVariableSizeType

enum class duckdb::ArrowVariableSizeType : uint8_t
strongprotected
37493: uint8_t { NORMAL, FIXED_SIZE, SUPER_SIZE, VIEW };

◆ ArrowArrayPhysicalType

enum class duckdb::ArrowArrayPhysicalType : uint8_t
strongprotected
37503: uint8_t { DICTIONARY_ENCODED, RUN_END_ENCODED, DEFAULT };

◆ DecimalBitWidth

enum class duckdb::DecimalBitWidth : uint8_t
strongprotected
37568: uint8_t { DECIMAL_32, DECIMAL_64, DECIMAL_128, DECIMAL_256 };

◆ AccessMode

enum class duckdb::AccessMode : uint8_t
strong
37939: uint8_t { UNDEFINED = 0, AUTOMATIC = 1, READ_ONLY = 2, READ_WRITE = 3 };

◆ CacheValidationMode

enum class duckdb::CacheValidationMode : uint8_t
strong
37957 : uint8_t {
37958 // Validate all cache entries, default option.
37959 VALIDATE_ALL = 0,
37960 // Validate only remote cache entries.
37961 VALIDATE_REMOTE = 1,
37962 // Disable cache validation.
37963 NO_VALIDATION = 2,
37964};

◆ ThreadPinMode

enum class duckdb::ThreadPinMode : uint8_t
strong
37982: uint8_t { OFF = 0, ON = 1, AUTO = 2 };

◆ BitpackingMode

enum class duckdb::BitpackingMode : uint8_t
strong
38766: uint8_t { INVALID, AUTO, CONSTANT, CONSTANT_DELTA, DELTA_FOR, FOR };

◆ LogLevel

enum class duckdb::LogLevel : uint8_t
strong
38995 : uint8_t {
38996 LOG_TRACE = 10,
38997 LOG_DEBUG = 20,
38998 LOG_INFO = 30,
38999 LOG_WARNING = 40,
39000 LOG_ERROR = 50,
39001 LOG_FATAL = 60
39002};

◆ LogContextScope

enum class duckdb::LogContextScope : uint8_t
strong
39004: uint8_t { DATABASE = 10, CONNECTION = 20, THREAD = 30 };

◆ LogMode

enum class duckdb::LogMode : uint8_t
strong
39006: uint8_t { LEVEL_ONLY = 0, DISABLE_SELECTED = 1, ENABLE_SELECTED = 2 };

◆ LoggingTargetTable

Logging storage can store entries normalized or denormalized. This enum describes what a single table/file/etc contains

39478 : uint8_t {
39479 ALL_LOGS, // Denormalized: log entries consisting of both the full log entry and the context
39480 LOG_ENTRIES, // Normalized: contains only the log entries and a context_id
39481 LOG_CONTEXTS, // Normalized: contains only the log contexts
39482};

◆ AttachedDatabaseType

enum class duckdb::AttachedDatabaseType
strongprivate
40325 {
40326 READ_WRITE_DATABASE,
40327 READ_ONLY_DATABASE,
40328 SYSTEM_DATABASE,
40329 TEMP_DATABASE,
40330};

◆ AttachVisibility

enum class duckdb::AttachVisibility
strongprivate
40332{ SHOWN, HIDDEN };

◆ RecoveryMode

DEFAULT is the standard ACID crash recovery mode. NO_WAL_WRITES disables the WAL for the attached database, i.e., disabling the D in ACID. Use this mode with caution, as it disables recovery from crashes for the file.

40337: uint8_t { DEFAULT = 0, NO_WAL_WRITES = 1 };

◆ DatabaseCloseAction

CHECKPOINT: Throws, if the checkpoint fails. Always cleans up. TRY_CHECKPOINT: Does not throw when failing a checkpoint. Always cleans up.

40341{ CHECKPOINT, TRY_CHECKPOINT };

◆ TransactionState

enum class duckdb::TransactionState
strongprivate
40475{ UNCOMMITTED, COMMITTED, ROLLED_BACK };

◆ InsertDatabasePathResult

enum class duckdb::InsertDatabasePathResult
strong
40710{ SUCCESS, ALREADY_EXISTS };

◆ RebindQueryInfo

enum class duckdb::RebindQueryInfo
strongprivate
40882{ DO_NOT_REBIND, ATTEMPT_TO_REBIND };

◆ StreamExecutionResult

enum class duckdb::StreamExecutionResult : uint8_t
strong
41127 : uint8_t {
41128 CHUNK_READY,
41129 CHUNK_NOT_READY,
41130 EXECUTION_ERROR,
41131 EXECUTION_CANCELLED,
41132 BLOCKED,
41133 NO_TASKS_AVAILABLE,
41134 EXECUTION_FINISHED
41135};

◆ TransactionType

enum class duckdb::TransactionType : uint8_t
strong
41410: uint8_t { INVALID, BEGIN_TRANSACTION, COMMIT, ROLLBACK };

◆ TransactionModifierType

enum class duckdb::TransactionModifierType : uint8_t
strong
41412 : uint8_t {
41413 TRANSACTION_DEFAULT_MODIFIER,
41414 TRANSACTION_READ_ONLY,
41415 TRANSACTION_READ_WRITE
41416};

◆ TransactionInvalidationPolicy

enum class duckdb::TransactionInvalidationPolicy : uint8_t
strong
41418: uint8_t { STANDARD_POLICY, ALL_ERRORS_INVALIDATE_TRANSACTION };

◆ OutputStream

enum class duckdb::OutputStream : uint8_t
strongprivate
41924: uint8_t { STREAM_STDOUT = 1, STREAM_STDERR = 2 };

◆ ExplainType

enum class duckdb::ExplainType : uint8_t
strong
42020: uint8_t { EXPLAIN_STANDARD, EXPLAIN_ANALYZE };

◆ ExtensionABIType

Enumerator
CPP 

Uses C++ ABI, version needs to match precisely.

C_STRUCT 

Uses C ABI using the duckdb_ext_api_v1 struct, version needs to be equal or higher.

C_STRUCT_UNSTABLE 

Uses C ABI using the duckdb_ext_api_v1 struct including "unstable" functions, version needs to match precisely.

43802 : uint8_t {
43803 UNKNOWN = 0,
43805 CPP = 1,
43807 C_STRUCT = 2,
43810};
@ CPP
Uses C++ ABI, version needs to match precisely.
@ C_STRUCT
Uses C ABI using the duckdb_ext_api_v1 struct, version needs to be equal or higher.
@ C_STRUCT_UNSTABLE
Uses C ABI using the duckdb_ext_api_v1 struct including "unstable" functions, version needs to match ...

◆ PragmaType

enum class duckdb::PragmaType : uint8_t
strongprivate
43983: uint8_t { PRAGMA_STATEMENT, PRAGMA_CALL };

◆ MemoryTag

enum class duckdb::MemoryTag : uint8_t
strongprivate
45149 : uint8_t {
45150 BASE_TABLE = 0,
45151 HASH_TABLE = 1,
45152 PARQUET_READER = 2,
45153 CSV_READER = 3,
45154 ORDER_BY = 4,
45155 ART_INDEX = 5,
45156 COLUMN_DATA = 6,
45157 METADATA = 7,
45158 OVERFLOW_STRINGS = 8,
45159 IN_MEMORY_TABLE = 9,
45160 ALLOCATOR = 10,
45161 EXTENSION = 11,
45162 TRANSACTION = 12,
45163 EXTERNAL_FILE_CACHE = 13,
45164 WINDOW = 14,
45165 OBJECT_CACHE = 15,
45166 // Intentionally left as the end, used to indicate memory tag type count.
45167 UNKNOWN = 16,
45168};

◆ ConvertToPersistentMode

enum class duckdb::ConvertToPersistentMode
strongprivate
45202{ DESTRUCTIVE, THREAD_SAFE };

◆ DestroyBufferUpon

Enumerator
EVICTION 

Destroy the data buffer upon destroying the associated BlockHandle (block can be evicted)

UNPIN 

Destroy the data buffer upon eviction to storage (destroy instead of evict)

45578 : uint8_t {
45579 BLOCK = 0,
45580 EVICTION = 1,
45581 UNPIN = 2
45582};
@ EVICTION
Destroy the data buffer upon destroying the associated BlockHandle (block can be evicted)
@ UNPIN
Destroy the data buffer upon eviction to storage (destroy instead of evict)

◆ BlockState

enum class duckdb::BlockState : uint8_t
strong
45605: uint8_t { BLOCK_UNLOADED = 0, BLOCK_LOADED = 1 };

◆ StrTimeSpecifier

enum class duckdb::StrTimeSpecifier : uint8_t
strongprivate
46037 : uint8_t {
46038 ABBREVIATED_WEEKDAY_NAME = 0, // %a - Abbreviated weekday name. (Sun, Mon, ...)
46039 FULL_WEEKDAY_NAME = 1, // %A Full weekday name. (Sunday, Monday, ...)
46040 WEEKDAY_DECIMAL = 2, // %w - Weekday as a decimal number. (0, 1, ..., 6)
46041 DAY_OF_MONTH_PADDED = 3, // %d - Day of the month as a zero-padded decimal. (01, 02, ..., 31)
46042 DAY_OF_MONTH = 4, // %-d - Day of the month as a decimal number. (1, 2, ..., 30)
46043 ABBREVIATED_MONTH_NAME = 5, // %b - Abbreviated month name. (Jan, Feb, ..., Dec)
46044 FULL_MONTH_NAME = 6, // %B - Full month name. (January, February, ...)
46045 MONTH_DECIMAL_PADDED = 7, // %m - Month as a zero-padded decimal number. (01, 02, ..., 12)
46046 MONTH_DECIMAL = 8, // %-m - Month as a decimal number. (1, 2, ..., 12)
46047 YEAR_WITHOUT_CENTURY_PADDED = 9, // %y - Year without century as a zero-padded decimal number. (00, 01, ..., 99)
46048 YEAR_WITHOUT_CENTURY = 10, // %-y - Year without century as a decimal number. (0, 1, ..., 99)
46049 YEAR_DECIMAL = 11, // %Y - Year with century as a decimal number. (2013, 2019 etc.)
46050 HOUR_24_PADDED = 12, // %H - Hour (24-hour clock) as a zero-padded decimal number. (00, 01, ..., 23)
46051 HOUR_24_DECIMAL = 13, // %-H - Hour (24-hour clock) as a decimal number. (0, 1, ..., 23)
46052 HOUR_12_PADDED = 14, // %I - Hour (12-hour clock) as a zero-padded decimal number. (01, 02, ..., 12)
46053 HOUR_12_DECIMAL = 15, // %-I - Hour (12-hour clock) as a decimal number. (1, 2, ... 12)
46054 AM_PM = 16, // %p - Locale’s AM or PM. (AM, PM)
46055 MINUTE_PADDED = 17, // %M - Minute as a zero-padded decimal number. (00, 01, ..., 59)
46056 MINUTE_DECIMAL = 18, // %-M - Minute as a decimal number. (0, 1, ..., 59)
46057 SECOND_PADDED = 19, // %S - Second as a zero-padded decimal number. (00, 01, ..., 59)
46058 SECOND_DECIMAL = 20, // %-S - Second as a decimal number. (0, 1, ..., 59)
46059 MICROSECOND_PADDED = 21, // %f - Microsecond as a decimal number, zero-padded on the left. (000000 - 999999)
46060 MILLISECOND_PADDED = 22, // %g - Millisecond as a decimal number, zero-padded on the left. (000 - 999)
46061 UTC_OFFSET = 23, // %z - UTC offset in the form +HHMM or -HHMM. ( )
46062 TZ_NAME = 24, // %Z - Time zone name. ( )
46063 DAY_OF_YEAR_PADDED = 25, // %j - Day of the year as a zero-padded decimal number. (001, 002, ..., 366)
46064 DAY_OF_YEAR_DECIMAL = 26, // %-j - Day of the year as a decimal number. (1, 2, ..., 366)
46065 WEEK_NUMBER_PADDED_SUN_FIRST =
46066 27, // %U - Week number of the year (Sunday as the first day of the week). All days in a new year preceding the
46067 // first Sunday are considered to be in week 0. (00, 01, ..., 53)
46068 WEEK_NUMBER_PADDED_MON_FIRST =
46069 28, // %W - Week number of the year (Monday as the first day of the week). All days in a new year preceding the
46070 // first Monday are considered to be in week 0. (00, 01, ..., 53)
46071 LOCALE_APPROPRIATE_DATE_AND_TIME =
46072 29, // %c - Locale’s appropriate date and time representation. (Mon Sep 30 07:06:05 2013)
46073 LOCALE_APPROPRIATE_DATE = 30, // %x - Locale’s appropriate date representation. (09/30/13)
46074 LOCALE_APPROPRIATE_TIME = 31, // %X - Locale’s appropriate time representation. (07:06:05)
46075 NANOSECOND_PADDED = 32, // %n - Nanosecond as a decimal number, zero-padded on the left. (000000000 - 999999999)
46076 // Python 3.6 ISO directives https://docs.python.org/3/library/datetime.html#strftime-and-strptime-format-codes
46077 YEAR_ISO =
46078 33, // %G - ISO 8601 year with century representing the year that contains the greater part of the ISO week
46079 WEEKDAY_ISO = 34, // %u - ISO 8601 weekday as a decimal number where 1 is Monday (1..7)
46080 WEEK_NUMBER_ISO = 35, // %V - ISO 8601 week as a decimal number with Monday as the first day of the week.
46081 // Week 01 is the week containing Jan 4. (01..53)
46082};

◆ NewLineIdentifier

enum class duckdb::NewLineIdentifier : uint8_t
strong
46225 : uint8_t {
46226 SINGLE_N = 1, // \n
46227 CARRY_ON = 2, // \r\n
46228 NOT_SET = 3,
46229 SINGLE_R = 4 // \r
46230
46231};

◆ PartitionedColumnDataType

Enumerator
RADIX 

Radix partitioning on a hash column.

HIVE 

Hive-style multi-field partitioning.

47011 : uint8_t {
47012 INVALID,
47014 RADIX,
47016 HIVE
47017};
@ HIVE
Hive-style multi-field partitioning.

◆ DebugVectorVerification

enum class duckdb::DebugVectorVerification : uint8_t
strong
47150 : uint8_t {
47151 NONE,
47152 DICTIONARY_EXPRESSION,
47153 DICTIONARY_OPERATOR,
47154 CONSTANT_OPERATOR,
47155 SEQUENCE_OPERATOR,
47156 NESTED_SHUFFLE,
47157 VARIANT_VECTOR
47158};

◆ IndexConstraintType

enum class duckdb::IndexConstraintType : uint8_t
strong
47404 : uint8_t {
47405 NONE = 0, // index is an index don't built to any constraint
47406 UNIQUE = 1, // index is an index built to enforce a UNIQUE constraint
47407 PRIMARY = 2, // index is an index built to enforce a PRIMARY KEY constraint
47408 FOREIGN = 3 // index is an index built to enforce a FOREIGN KEY constraint
47409};

◆ DeprecatedIndexType

enum class duckdb::DeprecatedIndexType : uint8_t
strong
47415 : uint8_t {
47416 INVALID = 0, // invalid index type
47417 ART = 1, // Adaptive Radix Tree
47418 EXTENSION = 100 // Extension index
47419};
Definition duckdb.cpp:12130

◆ SampleType

enum class duckdb::SampleType : uint8_t
strongprivate
47730: uint8_t { BLOCKING_SAMPLE = 0, RESERVOIR_SAMPLE = 1, RESERVOIR_PERCENTAGE_SAMPLE = 2 };

◆ SamplingState

enum class duckdb::SamplingState : uint8_t
strongprivate
47732: uint8_t { RANDOM = 0, RESERVOIR = 1 };

◆ HLLStorageType

Enumerator
HLL_V2 

Redis HLL.

48220 : uint8_t {
48221 HLL_V1 = 1,
48222 HLL_V2 = 2,
48223};

◆ ScanVectorType

enum class duckdb::ScanVectorType
strong
48607{ SCAN_ENTIRE_VECTOR, SCAN_FLAT_VECTOR };

◆ CompressionValidity

enum class duckdb::CompressionValidity : uint8_t
strong
48835: uint8_t { REQUIRES_VALIDITY, NO_VALIDITY_REQUIRED };

◆ ColumnSegmentType

enum class duckdb::ColumnSegmentType : uint8_t
strongprivate
48990: uint8_t { TRANSIENT, PERSISTENT };

◆ ColumnDataType

enum class duckdb::ColumnDataType
strongprivate
49262{ MAIN_TABLE, INITIAL_TRANSACTION_LOCAL, TRANSACTION_LOCAL, CHECKPOINT_TARGET };

◆ ExtraPersistentColumnDataType

enum class duckdb::ExtraPersistentColumnDataType : uint8_t
strongprivate
49489 : uint8_t {
49490 INVALID = 0,
49491 VARIANT = 1,
49492 GEOMETRY = 2,
49493};

◆ BufferedIndexReplay

enum class duckdb::BufferedIndexReplay : uint8_t
strong
49856: uint8_t { INSERT_ENTRY = 0, DEL_ENTRY = 1 };

◆ IndexAppendMode

enum class duckdb::IndexAppendMode : uint8_t
strong
49985: uint8_t { DEFAULT = 0, IGNORE_DUPLICATES = 1, INSERT_DUPLICATES = 2 };

◆ DeltaIndexType

enum class duckdb::DeltaIndexType
strong
50003 {
50004 NONE,
50005 LOCAL_APPEND,
50006 LOCAL_DELETE,
50007 ADDED_DURING_CHECKPOINT,
50008 REMOVED_DURING_CHECKPOINT,
50009 DELETED_ROWS_IN_USE
50010};

◆ IndexBindState

IndexBindState to transition index binding phases preventing lock order inversion.

50202: uint8_t { UNBOUND, BINDING, BOUND };

◆ IndexRemovalType

Enumerator
MAIN_INDEX 

Remove from main index, insert into deleted_rows_in_use.

MAIN_INDEX_ONLY 

Remove from main index only.

REVERT_MAIN_INDEX 

Revert MAIN_INDEX, i.e. append to main index and remove from deleted_rows_in_use.

REVERT_MAIN_INDEX_ONLY 

Revert MAIN_INDEX_ONLY, i.e. append to main index.

DELETED_ROWS_IN_USE 

Remove from deleted_rows_in_use.

50444 {
50446 MAIN_INDEX,
50454 DELETED_ROWS_IN_USE
50455};
@ MAIN_INDEX
Remove from main index, insert into deleted_rows_in_use.
@ MAIN_INDEX_ONLY
Remove from main index only.
@ REVERT_MAIN_INDEX_ONLY
Revert MAIN_INDEX_ONLY, i.e. append to main index.
@ REVERT_MAIN_INDEX
Revert MAIN_INDEX, i.e. append to main index and remove from deleted_rows_in_use.

◆ OptimisticWritePartialManagers

enum class duckdb::OptimisticWritePartialManagers
strong
50719{ PER_COLUMN, GLOBAL };

◆ DataTableVersion

enum class duckdb::DataTableVersion
strong
50984 {
50985 MAIN_TABLE, // this is the newest version of the table - it has not been altered or dropped
50986 ALTERED, // this table has been altered
50987 DROPPED // this table has been dropped
50988};

◆ ValueComparisonResult

enum class duckdb::ValueComparisonResult
strongprivate
51270{ PRUNE_LEFT, PRUNE_RIGHT, UNSATISFIABLE_CONDITION, PRUNE_NOTHING };

◆ FilterResult

enum class duckdb::FilterResult
strongprivate
51271{ UNSATISFIABLE, SUCCESS, UNSUPPORTED };

◆ FilterPushdownResult

enum class duckdb::FilterPushdownResult
strongprivate
51272{ NO_PUSHDOWN, PUSHED_DOWN_PARTIALLY, PUSHED_DOWN_FULLY };

◆ MultiFileColumnMappingMode

enum class duckdb::MultiFileColumnMappingMode : uint8_t
strongprotected
51635: uint8_t { BY_NAME, BY_FIELD_ID };

◆ SecretPersistType

Whether a secret is persistent or temporary.

53134: uint8_t { DEFAULT, TEMPORARY, PERSISTENT };

◆ SecretDisplayType

Determines whether the secrets are allowed to be shown.

53187: uint8_t { REDACTED, UNREDACTED };

◆ SecretSerializationType

Enumerator
CUSTOM 

The secret is serialized with a custom serialization function.

KEY_VALUE_SECRET 

The secret has been serialized as a KeyValueSecret.

53201 : uint8_t {
53203 CUSTOM = 0,
53206};
@ KEY_VALUE_SECRET
The secret has been serialized as a KeyValueSecret.
@ CUSTOM
The secret is serialized with a custom serialization function.

◆ CTEMaterialize

enum class duckdb::CTEMaterialize : uint8_t
strongprotected
53505 : uint8_t {
53506 CTE_MATERIALIZE_DEFAULT = 1, /* no option specified */
53507 CTE_MATERIALIZE_ALWAYS = 2, /* MATERIALIZED */
53508 CTE_MATERIALIZE_NEVER = 3 /* NOT MATERIALIZED */
53509};

◆ QueryNodeType

enum class duckdb::QueryNodeType : uint8_t
strongprivate
53545 : uint8_t {
53546 SELECT_NODE = 1,
53547 SET_OPERATION_NODE = 2,
53548 BOUND_SUBQUERY_NODE = 3,
53549 RECURSIVE_CTE_NODE = 4,
53550 CTE_NODE = 5,
53551 STATEMENT_NODE = 6
53552};

◆ TableReferenceType

enum class duckdb::TableReferenceType : uint8_t
strong
53656 : uint8_t {
53657 INVALID = 0, // invalid table reference type
53658 BASE_TABLE = 1, // base table reference
53659 SUBQUERY = 2, // output of a subquery
53660 JOIN = 3, // output of join
53661 TABLE_FUNCTION = 5, // table producing function
53662 EXPRESSION_LIST = 6, // expression list
53663 CTE = 7, // Recursive CTE
53664 EMPTY_FROM = 8, // placeholder for empty FROM
53665 PIVOT = 9, // pivot statement
53666 SHOW_REF = 10, // SHOW statement
53667 COLUMN_DATA = 11, // column data collection
53668 DELIM_GET = 12, // Delim get ref
53669 BOUND_TABLE_REF = 13 // Bound table ref
53670};

◆ SampleMethod

enum class duckdb::SampleMethod : uint8_t
strong
53691: uint8_t { SYSTEM_SAMPLE = 0, BERNOULLI_SAMPLE = 1, RESERVOIR_SAMPLE = 2, INVALID = 255 };

◆ ExtensionInstallMode

Enumerator
REPOSITORY 

Extension was installed using a url deduced from a repository base url.

CUSTOM_PATH 

Extension was install from a custom path, this could be either local or remote.

STATICALLY_LINKED 

Extension was statically linked.

NOT_INSTALLED 

Extension is not installed, for example the extension might be directly loaded without installing.

53903 : uint8_t {
53904 // Fallback for when install info is missing
53905 UNKNOWN = 0,
53907 REPOSITORY = 1,
53909 CUSTOM_PATH = 2,
53913 NOT_INSTALLED = 4
53914};
@ CUSTOM_PATH
Extension was install from a custom path, this could be either local or remote.
@ STATICALLY_LINKED
Extension was statically linked.
@ REPOSITORY
Extension was installed using a url deduced from a repository base url.

◆ AppenderType

enum class duckdb::AppenderType : uint8_t
strong
54314 : uint8_t {
54315 LOGICAL, // Cast input -> LogicalType
54316 PHYSICAL // Cast input -> PhysicalType
54317};

◆ CacheBehavior

enum class duckdb::CacheBehavior
strongprivate
56889{ AUTOMATIC, ALWAYS_CACHE, NEVER_CACHE };

◆ CAPIResultSetType

enum class duckdb::CAPIResultSetType : uint8_t
strongprivate
56999 : uint8_t {
57000 CAPI_RESULT_TYPE_NONE = 0,
57001 CAPI_RESULT_TYPE_MATERIALIZED,
57002 CAPI_RESULT_TYPE_STREAMING,
57003 CAPI_RESULT_TYPE_DEPRECATED
57004};

◆ CopyToType

enum class duckdb::CopyToType : uint8_t
strong
57841: uint8_t { COPY_TO_FILE, EXPORT_DATABASE };

◆ CopyOptionMode

enum class duckdb::CopyOptionMode
strongprivate
57878{ WRITE_ONLY, READ_ONLY, READ_WRITE };

◆ CopyFunctionExecutionMode

enum class duckdb::CopyFunctionExecutionMode
strongprivate
57992{ REGULAR_COPY_TO_FILE, PARALLEL_COPY_TO_FILE, BATCH_COPY_TO_FILE };

◆ CopyFunctionReturnType

enum class duckdb::CopyFunctionReturnType : uint8_t
strongprivate
58036 : uint8_t {
58037 CHANGED_ROWS = 0,
58038 CHANGED_ROWS_AND_FILE_LIST = 1,
58039 WRITTEN_FILE_STATISTICS = 2
58040};

Function Documentation

◆ GetDefaultCatalog()

const string & duckdb::GetDefaultCatalog ( CatalogEntryRetriever retriever)
7177 {
7178 return DatabaseManager::GetDefaultDatabase(retriever.GetContext());
7179}
Definition duckdb.hpp:960

◆ GetCatalogEntries()

vector< CatalogSearchEntry > duckdb::GetCatalogEntries ( CatalogEntryRetriever retriever,
const string &  catalog,
const string &  schema 
)
7564 {
7565 auto &context = retriever.GetContext();
7567 auto &search_path = retriever.GetSearchPath();
7568 if (IsInvalidCatalog(catalog) && IsInvalidSchema(schema)) {
7569 // no catalog or schema provided - scan the entire search path
7570 entries = search_path.Get();
7571 } else if (IsInvalidCatalog(catalog)) {
7572 auto catalogs = search_path.GetCatalogsForSchema(schema);
7573 for (auto &catalog_name : catalogs) {
7574 entries.emplace_back(catalog_name, schema);
7575 }
7576 if (entries.empty()) {
7577 auto &default_entry = search_path.GetDefault();
7578 if (!IsInvalidCatalog(default_entry.catalog)) {
7579 entries.emplace_back(default_entry.catalog, schema);
7580 } else {
7581 entries.emplace_back(DatabaseManager::GetDefaultDatabase(context), schema);
7582 }
7583 }
7584 } else if (IsInvalidSchema(schema)) {
7585 auto schemas = search_path.GetSchemasForCatalog(catalog);
7586 for (auto &schema_name : schemas) {
7587 entries.emplace_back(catalog, schema_name);
7588 }
7589 if (entries.empty()) {
7590 auto catalog_entry = Catalog::GetCatalogEntry(context, catalog);
7591 if (catalog_entry) {
7592 entries.emplace_back(catalog, catalog_entry->GetDefaultSchema());
7593 } else {
7594 entries.emplace_back(catalog, DEFAULT_SCHEMA);
7595 }
7596 }
7597 } else {
7598 // specific catalog and schema provided
7599 entries.emplace_back(catalog, schema);
7600 }
7601 return entries;
7602}

◆ FindMinimalQualification()

void duckdb::FindMinimalQualification ( CatalogEntryRetriever retriever,
const string &  catalog_name,
const string &  schema_name,
bool &  qualify_database,
bool &  qualify_schema 
)
7605 {
7606 // check if we can we qualify ONLY the schema
7607 bool found = false;
7608 auto entries = GetCatalogEntries(retriever, INVALID_CATALOG, schema_name);
7609 for (auto &entry : entries) {
7610 if (entry.catalog == catalog_name && entry.schema == schema_name) {
7611 found = true;
7612 break;
7613 }
7614 }
7615 if (found) {
7616 qualify_database = false;
7617 qualify_schema = true;
7618 return;
7619 }
7620 // check if we can qualify ONLY the catalog
7621 found = false;
7622 entries = GetCatalogEntries(retriever, catalog_name, INVALID_SCHEMA);
7623 for (auto &entry : entries) {
7624 if (entry.catalog == catalog_name && entry.schema == schema_name) {
7625 found = true;
7626 break;
7627 }
7628 }
7629 if (found) {
7630 qualify_database = true;
7631 qualify_schema = false;
7632 return;
7633 }
7634 // need to qualify both catalog and schema
7635 qualify_database = true;
7636 qualify_schema = true;
7637}

◆ IsAutoloadableFunction()

static bool duckdb::IsAutoloadableFunction ( CatalogType  type)
static
7674 {
7675 return (type == CatalogType::TABLE_FUNCTION_ENTRY || type == CatalogType::SCALAR_FUNCTION_ENTRY ||
7676 type == CatalogType::AGGREGATE_FUNCTION_ENTRY || type == CatalogType::PRAGMA_FUNCTION_ENTRY);
7677}

◆ IsTableFunction()

bool duckdb::IsTableFunction ( CatalogType  type)
7679 {
7680 switch (type) {
7681 case CatalogType::TABLE_FUNCTION_ENTRY:
7682 case CatalogType::TABLE_MACRO_ENTRY:
7683 case CatalogType::PRAGMA_FUNCTION_ENTRY:
7684 return true;
7685 default:
7686 return false;
7687 }
7688}

◆ IsScalarFunction()

bool duckdb::IsScalarFunction ( CatalogType  type)
7690 {
7691 switch (type) {
7692 case CatalogType::SCALAR_FUNCTION_ENTRY:
7693 case CatalogType::AGGREGATE_FUNCTION_ENTRY:
7694 case CatalogType::MACRO_ENTRY:
7695 return true;
7696 default:
7697 return false;
7698 }
7699}

◆ CompareCatalogTypes()

static bool duckdb::CompareCatalogTypes ( CatalogType  type_a,
CatalogType  type_b 
)
static
7701 {
7702 if (type_a == type_b) {
7703 // Types are same
7704 return true;
7705 }
7706 if (IsScalarFunction(type_a) && IsScalarFunction(type_b)) {
7707 return true;
7708 }
7709 if (IsTableFunction(type_a) && IsTableFunction(type_b)) {
7710 return true;
7711 }
7712 return false;
7713}

◆ ThrowDefaultTableAmbiguityException()

static void duckdb::ThrowDefaultTableAmbiguityException ( CatalogEntryLookup base_lookup,
CatalogEntryLookup default_table,
const string &  name 
)
static
7961 {
7962 auto entry_type = CatalogTypeToString(base_lookup.entry->type);
7964 if (base_lookup.schema) {
7965 fully_qualified_name_hint = StringUtil::Format(": '%s.%s.%s'", base_lookup.schema->catalog.GetName(),
7966 base_lookup.schema->name, base_lookup.entry->name);
7967 }
7968 string fully_qualified_catalog_name_hint = StringUtil::Format(
7969 ": '%s.%s.%s'", default_table.schema->catalog.GetName(), default_table.schema->name, default_table.entry->name);
7970 throw CatalogException(
7971 "Ambiguity detected for '%s': this could either refer to the '%s' '%s', or the "
7972 "attached catalog '%s' which has a default table. To avoid this error, either detach the catalog and "
7973 "reattach under a different name, or use a fully qualified name for the '%s'%s or for the Catalog "
7974 "Default Table%s.",
7975 name, entry_type, name, name, entry_type, fully_qualified_name_hint, fully_qualified_catalog_name_hint);
7976}

◆ FindForeignKeyInformation()

static void duckdb::FindForeignKeyInformation ( TableCatalogEntry table,
AlterForeignKeyType  alter_fk_type,
vector< unique_ptr< AlterForeignKeyInfo > > &  fk_arrays 
)
static
10162 {
10163 auto &constraints = table.GetConstraints();
10164 auto &catalog = table.ParentCatalog();
10165 auto &name = table.name;
10166 for (idx_t i = 0; i < constraints.size(); i++) {
10167 auto &cond = constraints[i];
10168 if (cond->type != ConstraintType::FOREIGN_KEY) {
10169 continue;
10170 }
10171 auto &fk = cond->Cast<ForeignKeyConstraint>();
10172 if (fk.info.type == ForeignKeyType::FK_TYPE_FOREIGN_KEY_TABLE) {
10173 AlterEntryData alter_data(catalog.GetName(), fk.info.schema, fk.info.table,
10174 OnEntryNotFound::THROW_EXCEPTION);
10175 fk_arrays.push_back(make_uniq<AlterForeignKeyInfo>(std::move(alter_data), name, fk.pk_columns,
10176 fk.fk_columns, fk.info.pk_keys, fk.info.fk_keys,
10177 alter_fk_type));
10178 } else if (fk.info.type == ForeignKeyType::FK_TYPE_PRIMARY_KEY_TABLE &&
10179 alter_fk_type == AlterForeignKeyType::AFT_DELETE) {
10180 throw CatalogException("Could not drop the table because this table is main key table of the table \"%s\"",
10181 fk.info.table);
10182 }
10183 }
10184}
string name
The name of the entry.
Definition duckdb.hpp:6311
DUCKDB_API const vector< unique_ptr< Constraint > > & GetConstraints() const
Returns a list of the constraints of the table.
Definition duckdb.cpp:21129
uint64_t idx_t
a saner size_t for loop indices etc
Definition duckdb.hpp:237

◆ GetIndexInfo()

IndexStorageInfo duckdb::GetIndexInfo ( const IndexConstraintType  type,
const bool  v1_0_0_storage,
unique_ptr< CreateInfo > &  info,
const idx_t  id 
)
13107 {
13108 auto &table_info = info->Cast<CreateTableInfo>();
13109 auto constraint_name = EnumUtil::ToString(type) + "_";
13110 auto name = constraint_name + table_info.table + "_" + to_string(id);
13111 IndexStorageInfo index_info(name);
13112 if (!v1_0_0_storage) {
13113 index_info.options.emplace("v1_0_0_storage", v1_0_0_storage);
13114 }
13115 return index_info;
13116}
Definition duckdb.cpp:6856
Index (de)serialization information.
Definition duckdb.hpp:47517

◆ CheckTypeIsSupported()

static void duckdb::CheckTypeIsSupported ( const LogicalType logical_type,
AttachedDatabase db 
)
static
13118 {
13119 TypeVisitor::Contains(logical_type, [&](const LogicalType &type) {
13120 switch (type.id()) {
13121 case LogicalTypeId::TYPE: {
13122 throw InvalidInputException("A table cannot be created with a 'TYPE' column");
13123 } break;
13124 case LogicalTypeId::VARIANT: {
13125 const auto storage_version = db.GetStorageManager().GetStorageVersion();
13126
13127 if (storage_version < Variant::VERSION_ADDED) {
13128 auto required = GetStorageVersionName(Variant::VERSION_ADDED, false);
13129 auto current = GetStorageVersionName(storage_version, false);
13130
13131 throw InvalidInputException("VARIANT columns are not supported in storage versions prior to %s "
13132 "(database \"%s\" is using storage version %s)",
13133 required, db.GetName(), current);
13134 }
13135 } break;
13136 case LogicalTypeId::GEOMETRY: {
13137 const auto storage_version = db.GetStorageManager().GetStorageVersion();
13138
13139 if (GeoType::HasCRS(type) && storage_version < Geometry::VERSION_ADDED) {
13140 auto required = GetStorageVersionName(Geometry::VERSION_ADDED, false);
13141 auto current = GetStorageVersionName(storage_version, false);
13142
13143 // TODO: Turn this into a hard error
13144 auto &logger = Logger::Get(db.GetDatabase());
13145 logger.WriteLog(DefaultLogType::NAME, LogLevel::LOG_WARNING,
13146 "GEOMETRY columns with coordinate reference system identifiers are not supported in "
13147 "storage versions prior "
13148 "to %s (database \"%s\" is using storage version %s). CRS will not be persisted.",
13149 required, db.GetName(), current);
13150 }
13151 } break;
13152 default:
13153 break;
13154 }
13155 return false;
13156 });
13157}
Definition duckdb.hpp:825
db
Definition duckdb.hpp:2930

◆ RenameExpression()

static void duckdb::RenameExpression ( ParsedExpression root_expr,
RenameColumnInfo info 
)
static
13394 {
13395 ParsedExpressionIterator::VisitExpressionMutable<ColumnRefExpression>(root_expr, [&](ColumnRefExpression &colref) {
13396 if (colref.column_names.back() == info.old_name) {
13397 colref.column_names.back() = info.new_name;
13398 }
13399 });
13400}
Definition duckdb.cpp:602
string old_name
Column old name.
Definition duckdb.hpp:28539

◆ PackExpression()

unique_ptr< ParsedExpression > duckdb::PackExpression ( unique_ptr< ParsedExpression expr,
string  name 
)
13518 {
13519 expr->SetAlias(std::move(name));
13521 children.push_back(std::move(expr));
13522 auto res = make_uniq<FunctionExpression>("struct_pack", std::move(children));
13523 return std::move(res);
13524}

◆ GetChildList()

static child_list_t< LogicalType > duckdb::GetChildList ( const LogicalType type)
static
13526 {
13527 child_list_t<LogicalType> child_types;
13528 switch (type.id()) {
13529 case LogicalTypeId::LIST: {
13530 child_types.emplace_back("list", ListType::GetChildType(type));
13531 break;
13532 }
13533 case LogicalTypeId::MAP: {
13534 child_types.emplace_back("key", MapType::KeyType(type));
13535 child_types.emplace_back("value", MapType::ValueType(type));
13536 break;
13537 }
13538 case LogicalTypeId::STRUCT: {
13539 child_types = StructType::GetChildTypes(type);
13540 break;
13541 }
13542 default:
13543 throw BinderException("Can't ConstructMapping for type '%s'", type.ToString());
13544 }
13545 return child_types;
13546}

◆ ConstructNewType()

static LogicalType duckdb::ConstructNewType ( const LogicalType original_type,
child_list_t< LogicalType new_child_types 
)
static
13548 {
13549 switch (original_type.id()) {
13550 case LogicalTypeId::STRUCT: {
13551 return LogicalType::STRUCT(std::move(new_child_types));
13552 }
13553 case LogicalTypeId::LIST: {
13554 D_ASSERT(new_child_types.size() == 1);
13555 return LogicalType::LIST(new_child_types[0].second);
13556 }
13557 case LogicalTypeId::MAP: {
13558 D_ASSERT(new_child_types.size() == 2);
13559 return LogicalType::MAP(new_child_types[0].second, new_child_types[1].second);
13560 }
13561 default:
13562 throw BinderException("Type '%s' not supported for ADD COLUMN", original_type.ToString());
13563 }
13564}

◆ ConstructMapping()

Value duckdb::ConstructMapping ( const string &  name,
const LogicalType type 
)
13566 {
13567 if (!type.IsNested()) {
13568 return Value(name);
13569 }
13570 child_list_t<Value> child_mapping;
13571 auto child_types = GetChildList(type);
13572 for (auto &entry : child_types) {
13573 auto mapping_value = ConstructMapping(entry.first, entry.second);
13574 if (entry.second.IsNested()) {
13575 child_list_t<Value> child_values;
13576 child_values.emplace_back(string(), Value(entry.first));
13577 child_values.emplace_back(string(), std::move(mapping_value));
13578 mapping_value = Value::STRUCT(std::move(child_values));
13579 }
13580 child_mapping.emplace_back(entry.first, std::move(mapping_value));
13581 }
13582 return Value::STRUCT(std::move(child_mapping));
13583}
Definition duckdb.hpp:5647

◆ AddFieldToStruct()

StructMappingInfo duckdb::AddFieldToStruct ( const LogicalType type,
const vector< string > &  column_path,
const ColumnDefinition new_field,
idx_t  depth = 0 
)
13586 {
13587 if (!type.IsNested()) {
13588 throw BinderException("Column '%s' is not a nested type, ADD COLUMN can only be used on nested types",
13589 column_path[depth]);
13590 }
13591
13592 StructMappingInfo result;
13593 auto child_list = GetChildList(type);
13594 auto &current_component = column_path[depth];
13595 bool last_entry = depth + 1 == column_path.size();
13596
13597 if (last_entry) {
13598 if (type.id() != LogicalTypeId::STRUCT) {
13599 throw BinderException("Column %s is not a struct - ALTER TABLE can only add fields to structs",
13600 current_component);
13601 }
13602 // root path - we are adding at this level
13603 // check if a field with this name already exists
13604 for (auto &entry : child_list) {
13605 if (StringUtil::CIEquals(entry.first, new_field.Name())) {
13606 // already exists!
13607 result.error = ErrorData(CatalogException("Duplicate field \"%s\" - field already exists in struct %s",
13608 new_field.Name(), current_component));
13609 return result;
13610 }
13611 }
13612 // add the new type
13613 child_list.emplace_back(new_field.Name(), new_field.Type());
13614 result.new_type = LogicalType::STRUCT(std::move(child_list));
13615 // set the default value
13616 unique_ptr<ParsedExpression> default_value;
13617 if (new_field.HasDefaultValue()) {
13618 default_value = new_field.DefaultValue().Copy();
13619 } else {
13620 default_value = make_uniq<ConstantExpression>(Value(new_field.Type()));
13621 }
13622 result.default_value = PackExpression(std::move(default_value), new_field.Name());
13623 return result;
13624 }
13625
13626 // not the root path - we need to recurse
13627 auto &next_component = column_path[depth + 1];
13628 bool found = false;
13629 for (auto &entry : child_list) {
13630 if ((type.id() == LogicalTypeId::LIST && StringUtil::CIEquals(next_component, "element")) ||
13631 StringUtil::CIEquals(entry.first, next_component)) {
13632 // found the entry - recurse
13633 auto child_res = AddFieldToStruct(entry.second, column_path, new_field, depth + 1);
13634 if (child_res.error.HasError()) {
13635 return child_res;
13636 }
13637 entry.second = std::move(child_res.new_type);
13638 if (type.id() == LogicalTypeId::LIST) {
13639 result.default_value = PackExpression(std::move(child_res.default_value), "list");
13640 } else {
13641 result.default_value = PackExpression(std::move(child_res.default_value), entry.first);
13642 }
13643 found = true;
13644 break;
13645 }
13646 }
13647 if (!found) {
13648 throw BinderException("Sub-field %s does not exist in column %s", next_component, column_path[depth]);
13649 }
13650 result.new_type = ConstructNewType(type, std::move(child_list));
13651 return result;
13652}
Definition duckdb.hpp:26121
DUCKDB_API const string & Name() const
name
const ParsedExpression & DefaultValue() const
default_value
DUCKDB_API const LogicalType & Type() const
type
double depth(InputArray R, InputArray t, InputArray X)

◆ DropFieldFromStruct()

DroppedFieldMapping duckdb::DropFieldFromStruct ( const LogicalType type,
const vector< string > &  column_path,
idx_t  depth 
)
13839 {
13840 if (!type.IsNested()) {
13841 throw CatalogException("Cannot drop field from column \"%s\" - not a nested type", column_path[0]);
13842 }
13843 auto &dropped_entry = column_path[depth];
13844 bool last_entry = depth + 1 == column_path.size();
13845 bool found = false;
13846 DroppedFieldMapping result;
13847 child_list_t<Value> child_mapping;
13848 child_list_t<LogicalType> new_type_children;
13849 auto child_types = GetChildList(type);
13850
13851 for (auto &entry : child_types) {
13852 Value mapping_value;
13853 LogicalType type_value;
13854 if ((type.id() == LogicalTypeId::LIST && StringUtil::CIEquals(dropped_entry, "element")) ||
13855 StringUtil::CIEquals(entry.first, dropped_entry)) {
13856 // this is the entry we are dropping
13857 found = true;
13858 if (last_entry) {
13859 if (type.id() != LogicalTypeId::STRUCT) {
13860 throw CatalogException("Cannot drop field '%s' from column '%s' - it's not a struct",
13861 column_path.back(), column_path.front());
13862 }
13863 // we are dropping this entry in its entirety - just skip
13864 if (child_types.size() == 1) {
13865 throw CatalogException("Cannot drop field %s from column %s - it is the last field of the struct",
13866 column_path.back(), column_path.front());
13867 }
13868 continue;
13869 } else {
13870 // we are dropping a field in this entry - recurse
13871 auto child_result = DropFieldFromStruct(entry.second, column_path, depth + 1);
13872 if (child_result.error.HasError()) {
13873 // bubble up error
13874 return child_result;
13875 }
13876 mapping_value = std::move(child_result.mapping);
13877 type_value = std::move(child_result.new_type);
13878 }
13879 } else {
13880 // we are not adjusting this entry - copy the type and create a straightforward mapping
13881 mapping_value = ConstructMapping(entry.first, entry.second);
13882 type_value = entry.second;
13883 }
13884
13885 if (entry.second.IsNested()) {
13886 child_list_t<Value> child_values;
13887 child_values.emplace_back(string(), Value(entry.first));
13888 child_values.emplace_back(string(), std::move(mapping_value));
13889 mapping_value = Value::STRUCT(std::move(child_values));
13890 }
13891 child_mapping.emplace_back(entry.first, std::move(mapping_value));
13892 new_type_children.emplace_back(entry.first, type_value);
13893 }
13894
13895 if (!found) {
13896 result.error = ErrorData(CatalogException("Cannot drop field \"%s\" - it does not exist", dropped_entry));
13897 } else {
13898 result.mapping = Value::STRUCT(std::move(child_mapping));
13899 result.new_type = ConstructNewType(type, std::move(new_type_children));
13900 }
13901 return result;
13902}
Definition duckdb.hpp:2636

◆ RenameFieldFromStruct()

DroppedFieldMapping duckdb::RenameFieldFromStruct ( const LogicalType type,
const vector< string > &  column_path,
const string &  new_name,
idx_t  depth 
)
13936 {
13937 if (!type.IsNested()) {
13938 throw CatalogException("Cannot rename field from column \"%s\" - not a nested type", column_path[0]);
13939 }
13940 auto &rename_entry = column_path[depth];
13941 bool last_entry = depth + 1 == column_path.size();
13942 bool found = false;
13943 DroppedFieldMapping result;
13944 child_list_t<Value> child_mapping;
13945 child_list_t<LogicalType> new_type_children;
13946 auto child_types = GetChildList(type);
13947 for (auto &entry : child_types) {
13948 auto field_name = entry.first;
13949 Value mapping_value;
13950 LogicalType type_value;
13951 if ((type.id() == LogicalTypeId::LIST && StringUtil::CIEquals(rename_entry, "element")) ||
13952 StringUtil::CIEquals(field_name, rename_entry)) {
13953 // this is the entry we are renaming
13954 found = true;
13955 if (last_entry) {
13956 if (type.id() != LogicalTypeId::STRUCT) {
13957 throw CatalogException(
13958 "Cannot rename field '%s' from column '%s' - can only rename fields inside a struct",
13959 column_path.back(), column_path.front());
13960 }
13961 // we are renaming this entry
13962 for (auto &sub_entry : child_types) {
13963 if (StringUtil::CIEquals(new_name, sub_entry.first)) {
13964 throw CatalogException(
13965 "Cannot rename field %s from column %s to %s - a field with this name already exists",
13966 column_path.back(), column_path.front(), new_name);
13967 }
13968 }
13969 field_name = new_name;
13970 mapping_value = ConstructMapping(entry.first, entry.second);
13971 type_value = entry.second;
13972 } else {
13973 // we are renaming a field in this entry - recurse
13974 auto child_result = RenameFieldFromStruct(entry.second, column_path, new_name, depth + 1);
13975 if (child_result.error.HasError()) {
13976 // bubble up error
13977 return child_result;
13978 }
13979 mapping_value = std::move(child_result.mapping);
13980 type_value = std::move(child_result.new_type);
13981 }
13982 } else {
13983 // we are not adjusting this entry - copy the type and create a straightforward mapping
13984 mapping_value = ConstructMapping(entry.first, entry.second);
13985 type_value = entry.second;
13986 }
13987 if (entry.second.IsNested()) {
13988 child_list_t<Value> child_values;
13989 child_values.emplace_back(string(), Value(entry.first));
13990 child_values.emplace_back(string(), std::move(mapping_value));
13991 mapping_value = Value::STRUCT(std::move(child_values));
13992 }
13993 child_mapping.emplace_back(field_name, std::move(mapping_value));
13994 new_type_children.emplace_back(field_name, type_value);
13995 }
13996 if (!found) {
13997 result.error = ErrorData(CatalogException("Cannot rename field \"%s\" - it does not exist", rename_entry));
13998 } else {
13999 result.mapping = Value::STRUCT(std::move(child_mapping));
14000 result.new_type = ConstructNewType(type, std::move(new_type_children));
14001 }
14002 return result;
14003}

◆ IsDependencyEntry()

static bool duckdb::IsDependencyEntry ( CatalogEntry entry)
static
22981 {
22982 return entry.type == CatalogType::DEPENDENCY_ENTRY;
22983}
CatalogType type
The type of this catalog entry.
Definition duckdb.hpp:6307

◆ DefaultFunctionMatches()

static bool duckdb::DefaultFunctionMatches ( const DefaultMacro macro,
const string &  schema,
const string &  name 
)
staticprivate
24219 {
24220 return macro.schema == schema && macro.name == name;
24221}

◆ GetDefaultFunction()

static unique_ptr< CreateFunctionInfo > duckdb::GetDefaultFunction ( const string &  input_schema,
const string &  input_name 
)
staticprivate
24223 {
24224 auto schema = StringUtil::Lower(input_schema);
24225 auto name = StringUtil::Lower(input_name);
24226 for (idx_t index = 0; internal_macros[index].name != nullptr; index++) {
24227 if (DefaultFunctionMatches(internal_macros[index], schema, name)) {
24228 // found the function! keep on iterating to find all overloads
24230 for(overload_count = 1; internal_macros[index + overload_count].name; overload_count++) {
24231 if (!DefaultFunctionMatches(internal_macros[index + overload_count], schema, name)) {
24232 break;
24233 }
24234 }
24235 return DefaultFunctionGenerator::CreateInternalMacroInfo(array_ptr<const DefaultMacro>(internal_macros + index, overload_count));
24236 }
24237 }
24238 return nullptr;
24239}
index

◆ GetDefaultTableFunction()

static unique_ptr< CreateFunctionInfo > duckdb::GetDefaultTableFunction ( const string &  input_schema,
const string &  input_name 
)
static
24510 {
24511 auto schema = StringUtil::Lower(input_schema);
24512 auto name = StringUtil::Lower(input_name);
24513 for (idx_t index = 0; internal_table_macros[index].name != nullptr; index++) {
24514 if (internal_table_macros[index].schema == schema && internal_table_macros[index].name == name) {
24515 return DefaultTableFunctionGenerator::CreateTableMacroInfo(internal_table_macros[index]);
24516 }
24517 }
24518 return nullptr;
24519}

◆ GetDefaultView()

static unique_ptr< CreateViewInfo > duckdb::GetDefaultView ( ClientContext context,
const string &  input_schema,
const string &  input_name 
)
static
25234 {
25235 auto schema = StringUtil::Lower(input_schema);
25236 auto name = StringUtil::Lower(input_name);
25237 for (idx_t index = 0; internal_views[index].name != nullptr; index++) {
25238 if (internal_views[index].schema == schema && internal_views[index].name == name) {
25239 auto result = make_uniq<CreateViewInfo>();
25240 result->schema = schema;
25241 result->view_name = name;
25242 result->sql = internal_views[index].sql;
25243 result->temporary = true;
25244 result->internal = true;
25245
25246 return CreateViewInfo::FromSelect(context, std::move(result));
25247 }
25248 }
25249 return nullptr;
25250}

◆ GetSchema()

static string duckdb::GetSchema ( CatalogEntry entry)
static
25399 {
25400 if (entry.type == CatalogType::SCHEMA_ENTRY) {
25401 return entry.name;
25402 }
25403 return entry.ParentSchema().name;
25404}

◆ AssertMangledName()

static void duckdb::AssertMangledName ( const string &  mangled_name,
idx_t  expected_null_bytes 
)
static
25496 {
25497#ifdef DEBUG
25499 for (auto &ch : mangled_name) {
25500 nullbyte_count += ch == '\0';
25501 }
25502 D_ASSERT(nullbyte_count == expected_null_bytes);
25503#endif
25504}

◆ CascadeDrop()

static bool duckdb::CascadeDrop ( bool  cascade,
const DependencyDependentFlags flags 
)
static
25768 {
25769 if (cascade) {
25770 return true;
25771 }
25772 if (flags.IsOwnedBy()) {
25773 // We are owned by this object, while it exists we can not be dropped without cascade.
25774 return false;
25775 }
25776 return !flags.IsBlocking();
25777}

◆ EntryToString()

static string duckdb::EntryToString ( CatalogEntryInfo info)
static
25827 {
25828 auto type = info.type;
25829 switch (type) {
25830 case CatalogType::TABLE_ENTRY: {
25831 return StringUtil::Format("table \"%s\"", info.name);
25832 }
25833 case CatalogType::SCHEMA_ENTRY: {
25834 return StringUtil::Format("schema \"%s\"", info.name);
25835 }
25836 case CatalogType::VIEW_ENTRY: {
25837 return StringUtil::Format("view \"%s\"", info.name);
25838 }
25839 case CatalogType::INDEX_ENTRY: {
25840 return StringUtil::Format("index \"%s\"", info.name);
25841 }
25842 case CatalogType::SEQUENCE_ENTRY: {
25843 return StringUtil::Format("index \"%s\"", info.name);
25844 }
25845 case CatalogType::COLLATION_ENTRY: {
25846 return StringUtil::Format("collation \"%s\"", info.name);
25847 }
25848 case CatalogType::COORDINATE_SYSTEM_ENTRY: {
25849 return StringUtil::Format("coordinate system \"%s\"", info.name);
25850 }
25851 case CatalogType::TYPE_ENTRY: {
25852 return StringUtil::Format("type \"%s\"", info.name);
25853 }
25854 case CatalogType::TABLE_FUNCTION_ENTRY: {
25855 return StringUtil::Format("table function \"%s\"", info.name);
25856 }
25857 case CatalogType::SCALAR_FUNCTION_ENTRY: {
25858 return StringUtil::Format("scalar function \"%s\"", info.name);
25859 }
25860 case CatalogType::AGGREGATE_FUNCTION_ENTRY: {
25861 return StringUtil::Format("aggregate function \"%s\"", info.name);
25862 }
25863 case CatalogType::PRAGMA_FUNCTION_ENTRY: {
25864 return StringUtil::Format("pragma function \"%s\"", info.name);
25865 }
25866 case CatalogType::COPY_FUNCTION_ENTRY: {
25867 return StringUtil::Format("copy function \"%s\"", info.name);
25868 }
25869 case CatalogType::MACRO_ENTRY: {
25870 return StringUtil::Format("macro function \"%s\"", info.name);
25871 }
25872 case CatalogType::TABLE_MACRO_ENTRY: {
25873 return StringUtil::Format("table macro function \"%s\"", info.name);
25874 }
25875 case CatalogType::SECRET_ENTRY: {
25876 return StringUtil::Format("secret \"%s\"", info.name);
25877 }
25878 case CatalogType::SECRET_TYPE_ENTRY: {
25879 return StringUtil::Format("secret type \"%s\"", info.name);
25880 }
25881 case CatalogType::SECRET_FUNCTION_ENTRY: {
25882 return StringUtil::Format("secret function \"%s\"", info.name);
25883 }
25884 default:
25885 throw InternalException("CatalogType not handled in EntryToString (DependencyManager) for %s",
25886 CatalogTypeToString(type));
25887 };
25888}

◆ FormatString()

static string duckdb::FormatString ( const MangledEntryName mangled)
static
26268 {
26269 auto input = mangled.name;
26270 for (size_t i = 0; i < input.size(); i++) {
26271 if (input[i] == '\0') {
26272 input[i] = '_';
26273 }
26274 }
26275 return input;
26276}

◆ NullValue() [1/9]

template<class T >
T duckdb::NullValue ( )
inline

Placeholder to insert in Vectors or to use for hashing NULLs.

30953 {
30954 return std::numeric_limits<T>::min();
30955}

◆ NullValue() [2/9]

template<>
const char * duckdb::NullValue ( )
inline
30961 {
30962 D_ASSERT(str_nil[0] == '\200' && str_nil[1] == '\0' && str_nil[2] == '\0' && str_nil[3] == '\0');
30963 return str_nil;
30964}
constexpr const char str_nil[4]
This could be two bytes but then GCC gives a warning when it's copied.
Definition duckdb.cpp:30958

◆ NullValue() [3/9]

template<>
string_t duckdb::NullValue ( )
inline
30967 {
30969}
Definition duckdb.hpp:4706

◆ NullValue() [4/9]

template<>
char * duckdb::NullValue ( )
inline
30972 {
30973 return (char *)NullValue<const char *>(); // NOLINT
30974}

◆ NullValue() [5/9]

template<>
string duckdb::NullValue ( )
inline
30977 {
30978 return string(NullValue<const char *>());
30979}

◆ NullValue() [6/9]

template<>
interval_t duckdb::NullValue ( )
inline
30982 {
30983 interval_t null_value;
30984 null_value.days = NullValue<int32_t>();
30985 null_value.months = NullValue<int32_t>();
30986 null_value.micros = NullValue<int64_t>();
30987 return null_value;
30988}
Definition duckdb.hpp:5181

◆ NullValue() [7/9]

template<>
hugeint_t duckdb::NullValue ( )
inline
30991 {
30992 hugeint_t min;
30993 min.lower = 0;
30994 min.upper = std::numeric_limits<int64_t>::min();
30995 return min;
30996}
static softfloat min()
Definition duckdb.hpp:311

◆ NullValue() [8/9]

template<>
float duckdb::NullValue ( )
inline
30999 {
31000 return NAN;
31001}

◆ NullValue() [9/9]

template<>
double duckdb::NullValue ( )
inline
31004 {
31005 return NAN;
31006}

◆ CastExceptionText()

template<class SRC , class DST >
static string duckdb::CastExceptionText ( SRC  input)
static
31229 {
31230 if (std::is_same<SRC, string_t>()) {
31231 return "Could not convert string '" + ConvertToString::Operation<SRC>(input) + "' to " +
31232 TypeIdToString(GetTypeId<DST>());
31233 }
31234 if (TypeIsNumber<SRC>() && TypeIsNumber<DST>()) {
31235 return "Type " + TypeIdToString(GetTypeId<SRC>()) + " with value " + ConvertToString::Operation<SRC>(input) +
31236 " can't be cast because the value is out of range for the destination type " +
31237 TypeIdToString(GetTypeId<DST>());
31238 }
31239 return "Type " + TypeIdToString(GetTypeId<SRC>()) + " with value " + ConvertToString::Operation<SRC>(input) +
31240 " can't be cast to the destination type " + TypeIdToString(GetTypeId<DST>());
31241}

◆ TryCastStringBool()

static bool duckdb::TryCastStringBool ( const char input_data,
idx_t  input_size,
bool &  result,
bool  strict 
)
inlinestatic
31654 {
31655 switch (input_size) {
31656 case 1: {
31657 unsigned char c = static_cast<uint8_t>(std::tolower(*input_data));
31658 if (c == 't' || (!strict && c == 'y') || (!strict && c == '1')) {
31659 result = true;
31660 return true;
31661 } else if (c == 'f' || (!strict && c == 'n') || (!strict && c == '0')) {
31662 result = false;
31663 return true;
31664 }
31665 return false;
31666 }
31667 case 2: {
31668 unsigned char n = static_cast<uint8_t>(std::tolower(input_data[0]));
31669 unsigned char o = static_cast<uint8_t>(std::tolower(input_data[1]));
31670 if (n == 'n' && o == 'o') {
31671 result = false;
31672 return true;
31673 }
31674 return false;
31675 }
31676 case 3: {
31677 unsigned char y = static_cast<uint8_t>(std::tolower(input_data[0]));
31678 unsigned char e = static_cast<uint8_t>(std::tolower(input_data[1]));
31679 unsigned char s = static_cast<uint8_t>(std::tolower(input_data[2]));
31680 if (y == 'y' && e == 'e' && s == 's') {
31681 result = true;
31682 return true;
31683 }
31684 return false;
31685 }
31686 case 4: {
31687 unsigned char t = static_cast<uint8_t>(std::tolower(input_data[0]));
31688 unsigned char r = static_cast<uint8_t>(std::tolower(input_data[1]));
31689 unsigned char u = static_cast<uint8_t>(std::tolower(input_data[2]));
31690 unsigned char e = static_cast<uint8_t>(std::tolower(input_data[3]));
31691 if (t == 't' && r == 'r' && u == 'u' && e == 'e') {
31692 result = true;
31693 return true;
31694 }
31695 return false;
31696 }
31697 case 5: {
31698 unsigned char f = static_cast<uint8_t>(std::tolower(input_data[0]));
31699 unsigned char a = static_cast<uint8_t>(std::tolower(input_data[1]));
31700 unsigned char l = static_cast<uint8_t>(std::tolower(input_data[2]));
31701 unsigned char s = static_cast<uint8_t>(std::tolower(input_data[3]));
31702 unsigned char e = static_cast<uint8_t>(std::tolower(input_data[4]));
31703 if (f == 'f' && a == 'a' && l == 'l' && s == 's' && e == 'e') {
31704 result = false;
31705 return true;
31706 }
31707 return false;
31708 }
31709 default:
31710 return false;
31711 }
31712}

◆ MallocTrim()

static void duckdb::MallocTrim ( idx_t  pad)
static
32513 {
32514#ifdef __GLIBC__
32515 static constexpr int64_t TRIM_INTERVAL_MS = 100;
32517
32518 int64_t last_trim_timestamp_ms = LAST_TRIM_TIMESTAMP_MS.load();
32519 auto current_ts = Timestamp::GetCurrentTimestamp();
32520 auto current_timestamp_ms = Cast::Operation<timestamp_t, timestamp_ms_t>(current_ts).value;
32521
32522 if (current_timestamp_ms - last_trim_timestamp_ms < TRIM_INTERVAL_MS) {
32523 return; // We trimmed less than TRIM_INTERVAL_MS ago
32524 }
32525 if (!LAST_TRIM_TIMESTAMP_MS.compare_exchange_strong(last_trim_timestamp_ms, current_timestamp_ms,
32526 std::memory_order_acquire, std::memory_order_relaxed)) {
32527 return; // Another thread has updated LAST_TRIM_TIMESTAMP_MS since we loaded it
32528 }
32529
32530 // We successfully updated LAST_TRIM_TIMESTAMP_MS, we can trim
32531 malloc_trim(pad);
32532#endif
32533}
::int64_t int64_t

◆ InitializeAppenderForType()

template<class OP >
static void duckdb::InitializeAppenderForType ( ArrowAppendData append_data)
static
34247 {
34248 append_data.initialize = OP::Initialize;
34249 append_data.append_vector = OP::Append;
34250 append_data.finalize = OP::Finalize;
34251}

◆ InitializeFunctionPointers()

static void duckdb::InitializeFunctionPointers ( ArrowAppendData append_data,
const LogicalType type 
)
static
34253 {
34254 // handle special logical types
34255 switch (type.id()) {
34256 case LogicalTypeId::SQLNULL:
34258 break;
34259 case LogicalTypeId::BOOLEAN:
34261 break;
34262 case LogicalTypeId::TINYINT:
34264 break;
34265 case LogicalTypeId::SMALLINT:
34267 break;
34268 case LogicalTypeId::DATE:
34269 case LogicalTypeId::INTEGER:
34271 break;
34272 case LogicalTypeId::TIME_TZ: {
34273 if (append_data.options.arrow_lossless_conversion) {
34275 } else {
34276 InitializeAppenderForType<ArrowScalarData<int64_t, dtime_tz_t, ArrowTimeTzConverter>>(append_data);
34277 }
34278 break;
34279 }
34280 case LogicalTypeId::TIME:
34281 case LogicalTypeId::TIME_NS:
34282 case LogicalTypeId::TIMESTAMP_SEC:
34283 case LogicalTypeId::TIMESTAMP_MS:
34284 case LogicalTypeId::TIMESTAMP:
34285 case LogicalTypeId::TIMESTAMP_NS:
34286 case LogicalTypeId::TIMESTAMP_TZ:
34287 case LogicalTypeId::BIGINT:
34288 InitializeAppenderForType<ArrowScalarData<int64_t>>(append_data);
34289 break;
34290 case LogicalTypeId::UUID:
34291 if (append_data.options.arrow_lossless_conversion) {
34292 InitializeAppenderForType<ArrowScalarData<hugeint_t, hugeint_t, ArrowUUIDBlobConverter>>(append_data);
34293 } else {
34294 if (append_data.options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34295 InitializeAppenderForType<ArrowVarcharData<hugeint_t, ArrowUUIDConverter>>(append_data);
34296 } else {
34297 InitializeAppenderForType<ArrowVarcharData<hugeint_t, ArrowUUIDConverter, int32_t>>(append_data);
34298 }
34299 }
34300 break;
34301 case LogicalTypeId::HUGEINT:
34302 InitializeAppenderForType<ArrowScalarData<hugeint_t>>(append_data);
34303 break;
34304 case LogicalTypeId::UHUGEINT:
34305 InitializeAppenderForType<ArrowScalarData<uhugeint_t>>(append_data);
34306 break;
34307 case LogicalTypeId::UTINYINT:
34308 InitializeAppenderForType<ArrowScalarData<uint8_t>>(append_data);
34309 break;
34310 case LogicalTypeId::USMALLINT:
34311 InitializeAppenderForType<ArrowScalarData<uint16_t>>(append_data);
34312 break;
34313 case LogicalTypeId::UINTEGER:
34314 InitializeAppenderForType<ArrowScalarData<uint32_t>>(append_data);
34315 break;
34316 case LogicalTypeId::UBIGINT:
34317 InitializeAppenderForType<ArrowScalarData<uint64_t>>(append_data);
34318 break;
34319 case LogicalTypeId::FLOAT:
34320 InitializeAppenderForType<ArrowScalarData<float>>(append_data);
34321 break;
34322 case LogicalTypeId::DOUBLE:
34323 InitializeAppenderForType<ArrowScalarData<double>>(append_data);
34324 break;
34325 case LogicalTypeId::DECIMAL:
34326 switch (type.InternalType()) {
34327 case PhysicalType::INT16:
34328 if (append_data.options.arrow_output_version > ArrowFormatVersion::V1_4) {
34329 InitializeAppenderForType<ArrowScalarData<int32_t, int16_t>>(append_data);
34330 } else {
34331 InitializeAppenderForType<ArrowScalarData<hugeint_t, int16_t>>(append_data);
34332 }
34333 break;
34334 case PhysicalType::INT32:
34335 if (append_data.options.arrow_output_version > ArrowFormatVersion::V1_4) {
34336 InitializeAppenderForType<ArrowScalarData<int32_t>>(append_data);
34337 } else {
34338 InitializeAppenderForType<ArrowScalarData<hugeint_t, int32_t>>(append_data);
34339 }
34340 break;
34341 case PhysicalType::INT64:
34342 if (append_data.options.arrow_output_version > ArrowFormatVersion::V1_4) {
34343 InitializeAppenderForType<ArrowScalarData<int64_t>>(append_data);
34344 } else {
34345 InitializeAppenderForType<ArrowScalarData<hugeint_t, int64_t>>(append_data);
34346 }
34347 break;
34348 case PhysicalType::INT128:
34349 InitializeAppenderForType<ArrowScalarData<hugeint_t>>(append_data);
34350 break;
34351 default:
34352 throw InternalException("Unsupported internal decimal type");
34353 }
34354 break;
34355 case LogicalTypeId::VARCHAR:
34356 case LogicalTypeId::BLOB:
34357 case LogicalTypeId::BIT:
34358 case LogicalTypeId::BIGNUM:
34359 if ((append_data.options.produce_arrow_string_view || type.id() != LogicalTypeId::VARCHAR) &&
34360 append_data.options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34361 InitializeAppenderForType<ArrowVarcharToStringViewData>(append_data);
34362 } else {
34363 if (append_data.options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34364 InitializeAppenderForType<ArrowVarcharData<>>(append_data);
34365 } else {
34366 InitializeAppenderForType<ArrowVarcharData<string_t, ArrowVarcharConverter, int32_t>>(append_data);
34367 }
34368 }
34369 break;
34370 case LogicalTypeId::ENUM:
34371 switch (type.InternalType()) {
34372 case PhysicalType::UINT8:
34373 InitializeAppenderForType<ArrowEnumData<uint8_t>>(append_data);
34374 break;
34375 case PhysicalType::UINT16:
34376 InitializeAppenderForType<ArrowEnumData<uint16_t>>(append_data);
34377 break;
34378 case PhysicalType::UINT32:
34379 InitializeAppenderForType<ArrowEnumData<uint32_t>>(append_data);
34380 break;
34381 default:
34382 throw InternalException("Unsupported internal enum type");
34383 }
34384 break;
34385 case LogicalTypeId::INTERVAL:
34386 InitializeAppenderForType<ArrowScalarData<ArrowInterval, interval_t, ArrowIntervalConverter>>(append_data);
34387 break;
34388 case LogicalTypeId::UNION:
34389 InitializeAppenderForType<ArrowUnionData>(append_data);
34390 break;
34391 case LogicalTypeId::STRUCT:
34392 InitializeAppenderForType<ArrowStructData>(append_data);
34393 break;
34394 case LogicalTypeId::ARRAY:
34395 InitializeAppenderForType<ArrowFixedSizeListData>(append_data);
34396 break;
34397 case LogicalTypeId::LIST: {
34398 if (append_data.options.arrow_use_list_view &&
34399 append_data.options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34400 if (append_data.options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34401 InitializeAppenderForType<ArrowListViewData<>>(append_data);
34402 } else {
34403 InitializeAppenderForType<ArrowListViewData<int32_t>>(append_data);
34404 }
34405 } else {
34406 if (append_data.options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34407 InitializeAppenderForType<ArrowListData<>>(append_data);
34408 } else {
34409 InitializeAppenderForType<ArrowListData<int32_t>>(append_data);
34410 }
34411 }
34412 break;
34413 }
34414 case LogicalTypeId::MAP:
34415 // Arrow MapArray only supports 32-bit offsets. There is no LargeMapArray type in Arrow.
34416 InitializeAppenderForType<ArrowMapData<int32_t>>(append_data);
34417 break;
34418 default:
34419 throw NotImplementedException("Unsupported type in DuckDB -> Arrow Conversion: %s\n", type.ToString());
34420 }
34421}

◆ AddName()

unsafe_unique_array< char > duckdb::AddName ( const string &  name)
private
34583 {
34584 auto name_ptr = make_unsafe_uniq_array<char>(name.size() + 1);
34585 for (size_t i = 0; i < name.size(); i++) {
34586 name_ptr[i] = name[i];
34587 }
34588 name_ptr[name.size()] = '\0';
34589 return name_ptr;
34590}

◆ ReleaseDuckDBArrowSchema()

static void duckdb::ReleaseDuckDBArrowSchema ( ArrowSchema schema)
staticprivate
34592 {
34593 if (!schema || !schema->release) {
34594 return;
34595 }
34596 schema->release = nullptr;
34597 auto holder = static_cast<DuckDBArrowSchemaHolder *>(schema->private_data);
34598 schema->private_data = nullptr;
34599
34600 delete holder;
34601}
void * private_data
Opaque producer-specific data.
Definition duckdb.hpp:11276
void(* release)(struct ArrowSchema *)
Release callback.
Definition duckdb.hpp:11274

◆ InitializeChild()

void duckdb::InitializeChild ( ArrowSchema child,
DuckDBArrowSchemaHolder root_holder,
const string &  name = "" 
)
private

Child is cleaned up by parent

34603 {
34605 child.private_data = nullptr;
34606 child.release = ReleaseDuckDBArrowSchema;
34607
34608 // Store the child schema
34609 child.flags = ARROW_FLAG_NULLABLE;
34610 root_holder.owned_type_names.push_back(AddName(name));
34611
34612 child.name = root_holder.owned_type_names.back().get();
34613 child.n_children = 0;
34614 child.children = nullptr;
34615 child.metadata = nullptr;
34616 child.dictionary = nullptr;
34617}
Here is the caller graph for this function:

◆ SetArrowFormat()

void duckdb::SetArrowFormat ( DuckDBArrowSchemaHolder root_holder,
ArrowSchema child,
const LogicalType type,
ClientProperties options,
ClientContext context 
)
private
34674 {
34675 if (type.HasAlias()) {
34676 // If it is a json type, we only export it as json if arrow_lossless_conversion = True
34677 if (!(type.IsJSONType() && !options.arrow_lossless_conversion)) {
34678 // If the type has an alias, we check if it is an Arrow-Type extension
34679 if (SetArrowExtension(root_holder, child, type, context)) {
34680 return;
34681 }
34682 }
34683 }
34684 switch (type.id()) {
34685 case LogicalTypeId::BOOLEAN:
34686 if (options.arrow_lossless_conversion) {
34687 SetArrowExtension(root_holder, child, type, context);
34688 } else {
34689 child.format = "b";
34690 }
34691 break;
34692 case LogicalTypeId::TINYINT:
34693 child.format = "c";
34694 break;
34695 case LogicalTypeId::SMALLINT:
34696 child.format = "s";
34697 break;
34698 case LogicalTypeId::INTEGER:
34699 child.format = "i";
34700 break;
34701 case LogicalTypeId::BIGINT:
34702 child.format = "l";
34703 break;
34704 case LogicalTypeId::UTINYINT:
34705 child.format = "C";
34706 break;
34707 case LogicalTypeId::USMALLINT:
34708 child.format = "S";
34709 break;
34710 case LogicalTypeId::UINTEGER:
34711 child.format = "I";
34712 break;
34713 case LogicalTypeId::UBIGINT:
34714 child.format = "L";
34715 break;
34716 case LogicalTypeId::FLOAT:
34717 child.format = "f";
34718 break;
34719 case LogicalTypeId::UHUGEINT:
34720 case LogicalTypeId::HUGEINT: {
34721 if (options.arrow_lossless_conversion) {
34722 SetArrowExtension(root_holder, child, type, context);
34723 } else {
34724 child.format = "d:38,0";
34725 }
34726 break;
34727 }
34728 case LogicalTypeId::DOUBLE:
34729 child.format = "g";
34730 break;
34731 case LogicalTypeId::UUID: {
34732 if (options.arrow_lossless_conversion) {
34733 SetArrowExtension(root_holder, child, type, context);
34734 } else {
34735 if (options.produce_arrow_string_view && options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34736 // List views are only introduced in arrow format v1.4
34737 child.format = "vu";
34738 } else {
34739 if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34740 child.format = "U";
34741 } else {
34742 child.format = "u";
34743 }
34744 }
34745 }
34746 break;
34747 }
34748 case LogicalTypeId::VARCHAR:
34749 if (options.produce_arrow_string_view && options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34750 // List views are only introduced in arrow format v1.4
34751 child.format = "vu";
34752 } else {
34753 if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34754 child.format = "U";
34755 } else {
34756 child.format = "u";
34757 }
34758 }
34759 break;
34760 case LogicalTypeId::DATE:
34761 child.format = "tdD";
34762 break;
34763 case LogicalTypeId::TIME_TZ: {
34764 if (options.arrow_lossless_conversion) {
34765 SetArrowExtension(root_holder, child, type, context);
34766 } else {
34767 child.format = "ttu";
34768 }
34769 break;
34770 }
34771 case LogicalTypeId::TIME:
34772 child.format = "ttu";
34773 break;
34774 case LogicalTypeId::TIME_NS:
34775 child.format = "ttn";
34776 break;
34777 case LogicalTypeId::TIMESTAMP:
34778 child.format = "tsu:";
34779 break;
34780 case LogicalTypeId::TIMESTAMP_TZ: {
34781 string format = "tsu:" + options.time_zone;
34782 root_holder.owned_type_names.push_back(AddName(format));
34783 child.format = root_holder.owned_type_names.back().get();
34784 break;
34785 }
34786 case LogicalTypeId::TIMESTAMP_SEC:
34787 child.format = "tss:";
34788 break;
34789 case LogicalTypeId::TIMESTAMP_NS:
34790 child.format = "tsn:";
34791 break;
34792 case LogicalTypeId::TIMESTAMP_MS:
34793 child.format = "tsm:";
34794 break;
34795 case LogicalTypeId::INTERVAL:
34796 child.format = "tin";
34797 break;
34798 case LogicalTypeId::DECIMAL: {
34799 uint8_t width, scale, bit_width;
34800 if (options.arrow_output_version <= ArrowFormatVersion::V1_4) {
34801 // Before version 1.4 all decimals were int128
34802 bit_width = 128;
34803 } else {
34804 switch (type.InternalType()) {
34805 case PhysicalType::INT16:
34806 case PhysicalType::INT32:
34807 bit_width = 32;
34808 break;
34809 case PhysicalType::INT64:
34810 bit_width = 64;
34811 break;
34812 case PhysicalType::INT128:
34813 bit_width = 128;
34814 break;
34815 default:
34816 throw NotImplementedException("Unsupported internal type For DUCKDB Decimal -> Arrow ");
34817 }
34818 }
34819
34820 type.GetDecimalProperties(width, scale);
34821 string format = "d:" + to_string(width) + "," + to_string(scale) + "," + to_string(bit_width);
34822 root_holder.owned_type_names.push_back(AddName(format));
34823 child.format = root_holder.owned_type_names.back().get();
34824 break;
34825 }
34826 case LogicalTypeId::SQLNULL: {
34827 child.format = "n";
34828 break;
34829 }
34830 case LogicalTypeId::BLOB:
34831 if (options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34832 // Views are only introduced in arrow format v1.4
34833 child.format = "vz";
34834 } else if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34835 child.format = "Z";
34836 } else {
34837 child.format = "z";
34838 }
34839 break;
34840 case LogicalTypeId::BIT: {
34841 if (options.arrow_lossless_conversion) {
34842 SetArrowExtension(root_holder, child, type, context);
34843 } else {
34844 if (options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34845 // Views are only introduced in arrow format v1.4
34846 child.format = "vz";
34847 } else if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34848 child.format = "Z";
34849 } else {
34850 child.format = "z";
34851 }
34852 }
34853
34854 break;
34855 }
34856 case LogicalTypeId::LIST: {
34857 if (options.arrow_use_list_view && options.arrow_output_version >= ArrowFormatVersion::V1_4) {
34858 // List views are only introduced in arrow format v1.4
34859 if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34860 child.format = "+vL";
34861 } else {
34862 child.format = "+vl";
34863 }
34864 } else {
34865 if (options.arrow_offset_size == ArrowOffsetSize::LARGE) {
34866 child.format = "+L";
34867 } else {
34868 child.format = "+l";
34869 }
34870 }
34871 child.n_children = 1;
34872 root_holder.nested_children.emplace_back();
34873 root_holder.nested_children.back().resize(1);
34874 root_holder.nested_children_ptr.emplace_back();
34875 root_holder.nested_children_ptr.back().push_back(&root_holder.nested_children.back()[0]);
34876 InitializeChild(root_holder.nested_children.back()[0], root_holder);
34877 child.children = &root_holder.nested_children_ptr.back()[0];
34878 child.children[0]->name = "l";
34879 SetArrowFormat(root_holder, **child.children, ListType::GetChildType(type), options, context);
34880 break;
34881 }
34882 case LogicalTypeId::STRUCT: {
34883 SetArrowStructFormat(root_holder, child, type, options, context);
34884 break;
34885 }
34886 case LogicalTypeId::ARRAY: {
34887 auto array_size = ArrayType::GetSize(type);
34888 auto &child_type = ArrayType::GetChildType(type);
34889 auto format = "+w:" + to_string(array_size);
34890 root_holder.owned_type_names.push_back(AddName(format));
34891 child.format = root_holder.owned_type_names.back().get();
34892
34893 child.n_children = 1;
34894 root_holder.nested_children.emplace_back();
34895 root_holder.nested_children.back().resize(1);
34896 root_holder.nested_children_ptr.emplace_back();
34897 root_holder.nested_children_ptr.back().push_back(&root_holder.nested_children.back()[0]);
34898 InitializeChild(root_holder.nested_children.back()[0], root_holder);
34899 child.children = &root_holder.nested_children_ptr.back()[0];
34900 SetArrowFormat(root_holder, **child.children, child_type, options, context);
34901 break;
34902 }
34903 case LogicalTypeId::MAP: {
34904 SetArrowMapFormat(root_holder, child, type, options, context);
34905 break;
34906 }
34907 case LogicalTypeId::UNION: {
34908 std::string format = "+us:";
34909
34910 auto &child_types = UnionType::CopyMemberTypes(type);
34911 child.n_children = NumericCast<int64_t>(child_types.size());
34912 root_holder.nested_children.emplace_back();
34913 root_holder.nested_children.back().resize(child_types.size());
34914 root_holder.nested_children_ptr.emplace_back();
34915 root_holder.nested_children_ptr.back().resize(child_types.size());
34916 for (idx_t type_idx = 0; type_idx < child_types.size(); type_idx++) {
34917 root_holder.nested_children_ptr.back()[type_idx] = &root_holder.nested_children.back()[type_idx];
34918 }
34919 child.children = &root_holder.nested_children_ptr.back()[0];
34920 for (size_t type_idx = 0; type_idx < child_types.size(); type_idx++) {
34921 InitializeChild(*child.children[type_idx], root_holder);
34922
34923 root_holder.owned_type_names.push_back(AddName(child_types[type_idx].first));
34924
34925 child.children[type_idx]->name = root_holder.owned_type_names.back().get();
34926 SetArrowFormat(root_holder, *child.children[type_idx], child_types[type_idx].second, options, context);
34927
34928 format += to_string(type_idx) + ",";
34929 }
34930
34931 format.pop_back();
34932
34933 root_holder.owned_type_names.push_back(AddName(format));
34934 child.format = root_holder.owned_type_names.back().get();
34935
34936 break;
34937 }
34938 case LogicalTypeId::ENUM: {
34939 // TODO what do we do with pointer enums here?
34940 switch (EnumType::GetPhysicalType(type)) {
34941 case PhysicalType::UINT8:
34942 child.format = "C";
34943 break;
34944 case PhysicalType::UINT16:
34945 child.format = "S";
34946 break;
34947 case PhysicalType::UINT32:
34948 child.format = "I";
34949 break;
34950 default:
34951 throw InternalException("Unsupported Enum Internal Type");
34952 }
34953 root_holder.nested_children.emplace_back();
34954 root_holder.nested_children.back().resize(1);
34955 root_holder.nested_children_ptr.emplace_back();
34956 root_holder.nested_children_ptr.back().push_back(&root_holder.nested_children.back()[0]);
34957 InitializeChild(root_holder.nested_children.back()[0], root_holder);
34958 child.dictionary = root_holder.nested_children_ptr.back()[0];
34959 child.dictionary->format = "u";
34960 break;
34961 }
34962 default: {
34963 // It is possible we can export this type as a registered extension
34964 auto success = SetArrowExtension(root_holder, child, type, context);
34965 if (!success) {
34966 throw NotImplementedException("Unsupported Arrow type %s", type.ToString());
34967 }
34968 }
34969 }
34970}
void scale(cv::Mat &mat, const cv::Mat &range, const T min, const T max)
void InitializeChild(ArrowSchema &child, DuckDBArrowSchemaHolder &root_holder, const string &name="")
Definition duckdb.cpp:34603
void SetArrowMapFormat(DuckDBArrowSchemaHolder &root_holder, ArrowSchema &child, const LogicalType &type, ClientProperties &options, ClientContext &context)
Definition duckdb.cpp:34646
const char * format
Array type description.
Definition duckdb.hpp:11265
vector< unsafe_unique_array< char > > owned_type_names
This holds strings created to represent decimal types.
Definition duckdb.hpp:57273
std::list< vector< ArrowSchema > > nested_children
used for nested structures
Definition duckdb.hpp:57270

◆ SetArrowStructFormat()

void duckdb::SetArrowStructFormat ( DuckDBArrowSchemaHolder root_holder,
ArrowSchema child,
const LogicalType type,
ClientProperties options,
ClientContext context,
bool  map_is_parent = false 
)
private
34623 {
34624 child.format = "+s";
34625 auto &child_types = StructType::GetChildTypes(type);
34626 child.n_children = NumericCast<int64_t>(child_types.size());
34627 root_holder.nested_children.emplace_back();
34628 root_holder.nested_children.back().resize(child_types.size());
34629 root_holder.nested_children_ptr.emplace_back();
34630 root_holder.nested_children_ptr.back().resize(child_types.size());
34631 for (idx_t type_idx = 0; type_idx < child_types.size(); type_idx++) {
34632 root_holder.nested_children_ptr.back()[type_idx] = &root_holder.nested_children.back()[type_idx];
34633 }
34634 child.children = &root_holder.nested_children_ptr.back()[0];
34635 for (size_t type_idx = 0; type_idx < child_types.size(); type_idx++) {
34636 InitializeChild(*child.children[type_idx], root_holder);
34637 root_holder.owned_type_names.push_back(AddName(child_types[type_idx].first));
34638 child.children[type_idx]->name = root_holder.owned_type_names.back().get();
34639 SetArrowFormat(root_holder, *child.children[type_idx], child_types[type_idx].second, options, context);
34640 }
34641 if (map_is_parent) {
34642 child.children[0]->flags = 0; // Set the 'keys' field to non-nullable
34643 }
34644}

◆ SetArrowMapFormat()

void duckdb::SetArrowMapFormat ( DuckDBArrowSchemaHolder root_holder,
ArrowSchema child,
const LogicalType type,
ClientProperties options,
ClientContext context 
)
private

Map has one child which is a struct

34647 {
34648 child.format = "+m";
34650 child.n_children = 1;
34651 root_holder.nested_children.emplace_back();
34652 root_holder.nested_children.back().resize(1);
34653 root_holder.nested_children_ptr.emplace_back();
34654 root_holder.nested_children_ptr.back().push_back(&root_holder.nested_children.back()[0]);
34655 InitializeChild(root_holder.nested_children.back()[0], root_holder);
34656 child.children = &root_holder.nested_children_ptr.back()[0];
34657 child.children[0]->name = "entries";
34658 child.children[0]->flags = 0; // Set the 'entries' field to non-nullable
34659 SetArrowStructFormat(root_holder, **child.children, ListType::GetChildType(type), options, context, true);
34660}
Here is the call graph for this function:

◆ SetArrowExtension()

bool duckdb::SetArrowExtension ( DuckDBArrowSchemaHolder root_holder,
ArrowSchema child,
const LogicalType type,
ClientContext context 
)
private
34663 {
34664 auto &config = DBConfig::GetConfig(context);
34665 if (config.HasArrowExtension(type)) {
34666 auto arrow_extension = config.GetArrowExtension(type);
34667 arrow_extension.PopulateArrowSchema(root_holder, child, type, context, arrow_extension);
34668 return true;
34669 }
34670 return false;
34671}

◆ FastMemcpy()

void duckdb::FastMemcpy ( void dest,
const void src,
const size_t  size 
)
inlineprivate

This templated memcpy is significantly faster than std::memcpy, but only when you are calling memcpy with a const size in a loop. For instance while (<cond>) { memcpy(<dest>, <src>, const_size); ... }

35899 {
35900 // LCOV_EXCL_START
35901 switch (size) {
35902 case 0:
35903 return;
35904 case 1:
35905 return MemcpyFixed<1>(dest, src);
35906 case 2:
35907 return MemcpyFixed<2>(dest, src);
35908 case 3:
35909 return MemcpyFixed<3>(dest, src);
35910 case 4:
35911 return MemcpyFixed<4>(dest, src);
35912 case 5:
35913 return MemcpyFixed<5>(dest, src);
35914 case 6:
35915 return MemcpyFixed<6>(dest, src);
35916 case 7:
35917 return MemcpyFixed<7>(dest, src);
35918 case 8:
35919 return MemcpyFixed<8>(dest, src);
35920 case 9:
35921 return MemcpyFixed<9>(dest, src);
35922 case 10:
35923 return MemcpyFixed<10>(dest, src);
35924 case 11:
35925 return MemcpyFixed<11>(dest, src);
35926 case 12:
35927 return MemcpyFixed<12>(dest, src);
35928 case 13:
35929 return MemcpyFixed<13>(dest, src);
35930 case 14:
35931 return MemcpyFixed<14>(dest, src);
35932 case 15:
35933 return MemcpyFixed<15>(dest, src);
35934 case 16:
35935 return MemcpyFixed<16>(dest, src);
35936 case 17:
35937 return MemcpyFixed<17>(dest, src);
35938 case 18:
35939 return MemcpyFixed<18>(dest, src);
35940 case 19:
35941 return MemcpyFixed<19>(dest, src);
35942 case 20:
35943 return MemcpyFixed<20>(dest, src);
35944 case 21:
35945 return MemcpyFixed<21>(dest, src);
35946 case 22:
35947 return MemcpyFixed<22>(dest, src);
35948 case 23:
35949 return MemcpyFixed<23>(dest, src);
35950 case 24:
35951 return MemcpyFixed<24>(dest, src);
35952 case 25:
35953 return MemcpyFixed<25>(dest, src);
35954 case 26:
35955 return MemcpyFixed<26>(dest, src);
35956 case 27:
35957 return MemcpyFixed<27>(dest, src);
35958 case 28:
35959 return MemcpyFixed<28>(dest, src);
35960 case 29:
35961 return MemcpyFixed<29>(dest, src);
35962 case 30:
35963 return MemcpyFixed<30>(dest, src);
35964 case 31:
35965 return MemcpyFixed<31>(dest, src);
35966 case 32:
35967 return MemcpyFixed<32>(dest, src);
35968 case 33:
35969 return MemcpyFixed<33>(dest, src);
35970 case 34:
35971 return MemcpyFixed<34>(dest, src);
35972 case 35:
35973 return MemcpyFixed<35>(dest, src);
35974 case 36:
35975 return MemcpyFixed<36>(dest, src);
35976 case 37:
35977 return MemcpyFixed<37>(dest, src);
35978 case 38:
35979 return MemcpyFixed<38>(dest, src);
35980 case 39:
35981 return MemcpyFixed<39>(dest, src);
35982 case 40:
35983 return MemcpyFixed<40>(dest, src);
35984 case 41:
35985 return MemcpyFixed<41>(dest, src);
35986 case 42:
35987 return MemcpyFixed<42>(dest, src);
35988 case 43:
35989 return MemcpyFixed<43>(dest, src);
35990 case 44:
35991 return MemcpyFixed<44>(dest, src);
35992 case 45:
35993 return MemcpyFixed<45>(dest, src);
35994 case 46:
35995 return MemcpyFixed<46>(dest, src);
35996 case 47:
35997 return MemcpyFixed<47>(dest, src);
35998 case 48:
35999 return MemcpyFixed<48>(dest, src);
36000 case 49:
36001 return MemcpyFixed<49>(dest, src);
36002 case 50:
36003 return MemcpyFixed<50>(dest, src);
36004 case 51:
36005 return MemcpyFixed<51>(dest, src);
36006 case 52:
36007 return MemcpyFixed<52>(dest, src);
36008 case 53:
36009 return MemcpyFixed<53>(dest, src);
36010 case 54:
36011 return MemcpyFixed<54>(dest, src);
36012 case 55:
36013 return MemcpyFixed<55>(dest, src);
36014 case 56:
36015 return MemcpyFixed<56>(dest, src);
36016 case 57:
36017 return MemcpyFixed<57>(dest, src);
36018 case 58:
36019 return MemcpyFixed<58>(dest, src);
36020 case 59:
36021 return MemcpyFixed<59>(dest, src);
36022 case 60:
36023 return MemcpyFixed<60>(dest, src);
36024 case 61:
36025 return MemcpyFixed<61>(dest, src);
36026 case 62:
36027 return MemcpyFixed<62>(dest, src);
36028 case 63:
36029 return MemcpyFixed<63>(dest, src);
36030 case 64:
36031 return MemcpyFixed<64>(dest, src);
36032 case 65:
36033 return MemcpyFixed<65>(dest, src);
36034 case 66:
36035 return MemcpyFixed<66>(dest, src);
36036 case 67:
36037 return MemcpyFixed<67>(dest, src);
36038 case 68:
36039 return MemcpyFixed<68>(dest, src);
36040 case 69:
36041 return MemcpyFixed<69>(dest, src);
36042 case 70:
36043 return MemcpyFixed<70>(dest, src);
36044 case 71:
36045 return MemcpyFixed<71>(dest, src);
36046 case 72:
36047 return MemcpyFixed<72>(dest, src);
36048 case 73:
36049 return MemcpyFixed<73>(dest, src);
36050 case 74:
36051 return MemcpyFixed<74>(dest, src);
36052 case 75:
36053 return MemcpyFixed<75>(dest, src);
36054 case 76:
36055 return MemcpyFixed<76>(dest, src);
36056 case 77:
36057 return MemcpyFixed<77>(dest, src);
36058 case 78:
36059 return MemcpyFixed<78>(dest, src);
36060 case 79:
36061 return MemcpyFixed<79>(dest, src);
36062 case 80:
36063 return MemcpyFixed<80>(dest, src);
36064 case 81:
36065 return MemcpyFixed<81>(dest, src);
36066 case 82:
36067 return MemcpyFixed<82>(dest, src);
36068 case 83:
36069 return MemcpyFixed<83>(dest, src);
36070 case 84:
36071 return MemcpyFixed<84>(dest, src);
36072 case 85:
36073 return MemcpyFixed<85>(dest, src);
36074 case 86:
36075 return MemcpyFixed<86>(dest, src);
36076 case 87:
36077 return MemcpyFixed<87>(dest, src);
36078 case 88:
36079 return MemcpyFixed<88>(dest, src);
36080 case 89:
36081 return MemcpyFixed<89>(dest, src);
36082 case 90:
36083 return MemcpyFixed<90>(dest, src);
36084 case 91:
36085 return MemcpyFixed<91>(dest, src);
36086 case 92:
36087 return MemcpyFixed<92>(dest, src);
36088 case 93:
36089 return MemcpyFixed<93>(dest, src);
36090 case 94:
36091 return MemcpyFixed<94>(dest, src);
36092 case 95:
36093 return MemcpyFixed<95>(dest, src);
36094 case 96:
36095 return MemcpyFixed<96>(dest, src);
36096 case 97:
36097 return MemcpyFixed<97>(dest, src);
36098 case 98:
36099 return MemcpyFixed<98>(dest, src);
36100 case 99:
36101 return MemcpyFixed<99>(dest, src);
36102 case 100:
36103 return MemcpyFixed<100>(dest, src);
36104 case 101:
36105 return MemcpyFixed<101>(dest, src);
36106 case 102:
36107 return MemcpyFixed<102>(dest, src);
36108 case 103:
36109 return MemcpyFixed<103>(dest, src);
36110 case 104:
36111 return MemcpyFixed<104>(dest, src);
36112 case 105:
36113 return MemcpyFixed<105>(dest, src);
36114 case 106:
36115 return MemcpyFixed<106>(dest, src);
36116 case 107:
36117 return MemcpyFixed<107>(dest, src);
36118 case 108:
36119 return MemcpyFixed<108>(dest, src);
36120 case 109:
36121 return MemcpyFixed<109>(dest, src);
36122 case 110:
36123 return MemcpyFixed<110>(dest, src);
36124 case 111:
36125 return MemcpyFixed<111>(dest, src);
36126 case 112:
36127 return MemcpyFixed<112>(dest, src);
36128 case 113:
36129 return MemcpyFixed<113>(dest, src);
36130 case 114:
36131 return MemcpyFixed<114>(dest, src);
36132 case 115:
36133 return MemcpyFixed<115>(dest, src);
36134 case 116:
36135 return MemcpyFixed<116>(dest, src);
36136 case 117:
36137 return MemcpyFixed<117>(dest, src);
36138 case 118:
36139 return MemcpyFixed<118>(dest, src);
36140 case 119:
36141 return MemcpyFixed<119>(dest, src);
36142 case 120:
36143 return MemcpyFixed<120>(dest, src);
36144 case 121:
36145 return MemcpyFixed<121>(dest, src);
36146 case 122:
36147 return MemcpyFixed<122>(dest, src);
36148 case 123:
36149 return MemcpyFixed<123>(dest, src);
36150 case 124:
36151 return MemcpyFixed<124>(dest, src);
36152 case 125:
36153 return MemcpyFixed<125>(dest, src);
36154 case 126:
36155 return MemcpyFixed<126>(dest, src);
36156 case 127:
36157 return MemcpyFixed<127>(dest, src);
36158 case 128:
36159 return MemcpyFixed<128>(dest, src);
36160 case 129:
36161 return MemcpyFixed<129>(dest, src);
36162 case 130:
36163 return MemcpyFixed<130>(dest, src);
36164 case 131:
36165 return MemcpyFixed<131>(dest, src);
36166 case 132:
36167 return MemcpyFixed<132>(dest, src);
36168 case 133:
36169 return MemcpyFixed<133>(dest, src);
36170 case 134:
36171 return MemcpyFixed<134>(dest, src);
36172 case 135:
36173 return MemcpyFixed<135>(dest, src);
36174 case 136:
36175 return MemcpyFixed<136>(dest, src);
36176 case 137:
36177 return MemcpyFixed<137>(dest, src);
36178 case 138:
36179 return MemcpyFixed<138>(dest, src);
36180 case 139:
36181 return MemcpyFixed<139>(dest, src);
36182 case 140:
36183 return MemcpyFixed<140>(dest, src);
36184 case 141:
36185 return MemcpyFixed<141>(dest, src);
36186 case 142:
36187 return MemcpyFixed<142>(dest, src);
36188 case 143:
36189 return MemcpyFixed<143>(dest, src);
36190 case 144:
36191 return MemcpyFixed<144>(dest, src);
36192 case 145:
36193 return MemcpyFixed<145>(dest, src);
36194 case 146:
36195 return MemcpyFixed<146>(dest, src);
36196 case 147:
36197 return MemcpyFixed<147>(dest, src);
36198 case 148:
36199 return MemcpyFixed<148>(dest, src);
36200 case 149:
36201 return MemcpyFixed<149>(dest, src);
36202 case 150:
36203 return MemcpyFixed<150>(dest, src);
36204 case 151:
36205 return MemcpyFixed<151>(dest, src);
36206 case 152:
36207 return MemcpyFixed<152>(dest, src);
36208 case 153:
36209 return MemcpyFixed<153>(dest, src);
36210 case 154:
36211 return MemcpyFixed<154>(dest, src);
36212 case 155:
36213 return MemcpyFixed<155>(dest, src);
36214 case 156:
36215 return MemcpyFixed<156>(dest, src);
36216 case 157:
36217 return MemcpyFixed<157>(dest, src);
36218 case 158:
36219 return MemcpyFixed<158>(dest, src);
36220 case 159:
36221 return MemcpyFixed<159>(dest, src);
36222 case 160:
36223 return MemcpyFixed<160>(dest, src);
36224 case 161:
36225 return MemcpyFixed<161>(dest, src);
36226 case 162:
36227 return MemcpyFixed<162>(dest, src);
36228 case 163:
36229 return MemcpyFixed<163>(dest, src);
36230 case 164:
36231 return MemcpyFixed<164>(dest, src);
36232 case 165:
36233 return MemcpyFixed<165>(dest, src);
36234 case 166:
36235 return MemcpyFixed<166>(dest, src);
36236 case 167:
36237 return MemcpyFixed<167>(dest, src);
36238 case 168:
36239 return MemcpyFixed<168>(dest, src);
36240 case 169:
36241 return MemcpyFixed<169>(dest, src);
36242 case 170:
36243 return MemcpyFixed<170>(dest, src);
36244 case 171:
36245 return MemcpyFixed<171>(dest, src);
36246 case 172:
36247 return MemcpyFixed<172>(dest, src);
36248 case 173:
36249 return MemcpyFixed<173>(dest, src);
36250 case 174:
36251 return MemcpyFixed<174>(dest, src);
36252 case 175:
36253 return MemcpyFixed<175>(dest, src);
36254 case 176:
36255 return MemcpyFixed<176>(dest, src);
36256 case 177:
36257 return MemcpyFixed<177>(dest, src);
36258 case 178:
36259 return MemcpyFixed<178>(dest, src);
36260 case 179:
36261 return MemcpyFixed<179>(dest, src);
36262 case 180:
36263 return MemcpyFixed<180>(dest, src);
36264 case 181:
36265 return MemcpyFixed<181>(dest, src);
36266 case 182:
36267 return MemcpyFixed<182>(dest, src);
36268 case 183:
36269 return MemcpyFixed<183>(dest, src);
36270 case 184:
36271 return MemcpyFixed<184>(dest, src);
36272 case 185:
36273 return MemcpyFixed<185>(dest, src);
36274 case 186:
36275 return MemcpyFixed<186>(dest, src);
36276 case 187:
36277 return MemcpyFixed<187>(dest, src);
36278 case 188:
36279 return MemcpyFixed<188>(dest, src);
36280 case 189:
36281 return MemcpyFixed<189>(dest, src);
36282 case 190:
36283 return MemcpyFixed<190>(dest, src);
36284 case 191:
36285 return MemcpyFixed<191>(dest, src);
36286 case 192:
36287 return MemcpyFixed<192>(dest, src);
36288 case 193:
36289 return MemcpyFixed<193>(dest, src);
36290 case 194:
36291 return MemcpyFixed<194>(dest, src);
36292 case 195:
36293 return MemcpyFixed<195>(dest, src);
36294 case 196:
36295 return MemcpyFixed<196>(dest, src);
36296 case 197:
36297 return MemcpyFixed<197>(dest, src);
36298 case 198:
36299 return MemcpyFixed<198>(dest, src);
36300 case 199:
36301 return MemcpyFixed<199>(dest, src);
36302 case 200:
36303 return MemcpyFixed<200>(dest, src);
36304 case 201:
36305 return MemcpyFixed<201>(dest, src);
36306 case 202:
36307 return MemcpyFixed<202>(dest, src);
36308 case 203:
36309 return MemcpyFixed<203>(dest, src);
36310 case 204:
36311 return MemcpyFixed<204>(dest, src);
36312 case 205:
36313 return MemcpyFixed<205>(dest, src);
36314 case 206:
36315 return MemcpyFixed<206>(dest, src);
36316 case 207:
36317 return MemcpyFixed<207>(dest, src);
36318 case 208:
36319 return MemcpyFixed<208>(dest, src);
36320 case 209:
36321 return MemcpyFixed<209>(dest, src);
36322 case 210:
36323 return MemcpyFixed<210>(dest, src);
36324 case 211:
36325 return MemcpyFixed<211>(dest, src);
36326 case 212:
36327 return MemcpyFixed<212>(dest, src);
36328 case 213:
36329 return MemcpyFixed<213>(dest, src);
36330 case 214:
36331 return MemcpyFixed<214>(dest, src);
36332 case 215:
36333 return MemcpyFixed<215>(dest, src);
36334 case 216:
36335 return MemcpyFixed<216>(dest, src);
36336 case 217:
36337 return MemcpyFixed<217>(dest, src);
36338 case 218:
36339 return MemcpyFixed<218>(dest, src);
36340 case 219:
36341 return MemcpyFixed<219>(dest, src);
36342 case 220:
36343 return MemcpyFixed<220>(dest, src);
36344 case 221:
36345 return MemcpyFixed<221>(dest, src);
36346 case 222:
36347 return MemcpyFixed<222>(dest, src);
36348 case 223:
36349 return MemcpyFixed<223>(dest, src);
36350 case 224:
36351 return MemcpyFixed<224>(dest, src);
36352 case 225:
36353 return MemcpyFixed<225>(dest, src);
36354 case 226:
36355 return MemcpyFixed<226>(dest, src);
36356 case 227:
36357 return MemcpyFixed<227>(dest, src);
36358 case 228:
36359 return MemcpyFixed<228>(dest, src);
36360 case 229:
36361 return MemcpyFixed<229>(dest, src);
36362 case 230:
36363 return MemcpyFixed<230>(dest, src);
36364 case 231:
36365 return MemcpyFixed<231>(dest, src);
36366 case 232:
36367 return MemcpyFixed<232>(dest, src);
36368 case 233:
36369 return MemcpyFixed<233>(dest, src);
36370 case 234:
36371 return MemcpyFixed<234>(dest, src);
36372 case 235:
36373 return MemcpyFixed<235>(dest, src);
36374 case 236:
36375 return MemcpyFixed<236>(dest, src);
36376 case 237:
36377 return MemcpyFixed<237>(dest, src);
36378 case 238:
36379 return MemcpyFixed<238>(dest, src);
36380 case 239:
36381 return MemcpyFixed<239>(dest, src);
36382 case 240:
36383 return MemcpyFixed<240>(dest, src);
36384 case 241:
36385 return MemcpyFixed<241>(dest, src);
36386 case 242:
36387 return MemcpyFixed<242>(dest, src);
36388 case 243:
36389 return MemcpyFixed<243>(dest, src);
36390 case 244:
36391 return MemcpyFixed<244>(dest, src);
36392 case 245:
36393 return MemcpyFixed<245>(dest, src);
36394 case 246:
36395 return MemcpyFixed<246>(dest, src);
36396 case 247:
36397 return MemcpyFixed<247>(dest, src);
36398 case 248:
36399 return MemcpyFixed<248>(dest, src);
36400 case 249:
36401 return MemcpyFixed<249>(dest, src);
36402 case 250:
36403 return MemcpyFixed<250>(dest, src);
36404 case 251:
36405 return MemcpyFixed<251>(dest, src);
36406 case 252:
36407 return MemcpyFixed<252>(dest, src);
36408 case 253:
36409 return MemcpyFixed<253>(dest, src);
36410 case 254:
36411 return MemcpyFixed<254>(dest, src);
36412 case 255:
36413 return MemcpyFixed<255>(dest, src);
36414 case 256:
36415 return MemcpyFixed<256>(dest, src);
36416 default:
36417 memcpy(dest, src, size);
36418 }
36419 // LCOV_EXCL_STOP
36420}
Here is the call graph for this function:

◆ FastMemcmp()

int duckdb::FastMemcmp ( const void str1,
const void str2,
const size_t  size 
)
inlineprivate

This templated memcmp is significantly faster than std::memcmp, but only when you are calling memcmp with a const size in a loop. For instance while (<cond>) { memcmp(<str1>, <str2>, const_size); ... }

36425 {
36426 // LCOV_EXCL_START
36427 switch (size) {
36428 case 0:
36429 return 0;
36430 case 1:
36431 return MemcmpFixed<1>(str1, str2);
36432 case 2:
36433 return MemcmpFixed<2>(str1, str2);
36434 case 3:
36435 return MemcmpFixed<3>(str1, str2);
36436 case 4:
36437 return MemcmpFixed<4>(str1, str2);
36438 case 5:
36439 return MemcmpFixed<5>(str1, str2);
36440 case 6:
36441 return MemcmpFixed<6>(str1, str2);
36442 case 7:
36443 return MemcmpFixed<7>(str1, str2);
36444 case 8:
36445 return MemcmpFixed<8>(str1, str2);
36446 case 9:
36447 return MemcmpFixed<9>(str1, str2);
36448 case 10:
36449 return MemcmpFixed<10>(str1, str2);
36450 case 11:
36451 return MemcmpFixed<11>(str1, str2);
36452 case 12:
36453 return MemcmpFixed<12>(str1, str2);
36454 case 13:
36455 return MemcmpFixed<13>(str1, str2);
36456 case 14:
36457 return MemcmpFixed<14>(str1, str2);
36458 case 15:
36459 return MemcmpFixed<15>(str1, str2);
36460 case 16:
36461 return MemcmpFixed<16>(str1, str2);
36462 case 17:
36463 return MemcmpFixed<17>(str1, str2);
36464 case 18:
36465 return MemcmpFixed<18>(str1, str2);
36466 case 19:
36467 return MemcmpFixed<19>(str1, str2);
36468 case 20:
36469 return MemcmpFixed<20>(str1, str2);
36470 case 21:
36471 return MemcmpFixed<21>(str1, str2);
36472 case 22:
36473 return MemcmpFixed<22>(str1, str2);
36474 case 23:
36475 return MemcmpFixed<23>(str1, str2);
36476 case 24:
36477 return MemcmpFixed<24>(str1, str2);
36478 case 25:
36479 return MemcmpFixed<25>(str1, str2);
36480 case 26:
36481 return MemcmpFixed<26>(str1, str2);
36482 case 27:
36483 return MemcmpFixed<27>(str1, str2);
36484 case 28:
36485 return MemcmpFixed<28>(str1, str2);
36486 case 29:
36487 return MemcmpFixed<29>(str1, str2);
36488 case 30:
36489 return MemcmpFixed<30>(str1, str2);
36490 case 31:
36491 return MemcmpFixed<31>(str1, str2);
36492 case 32:
36493 return MemcmpFixed<32>(str1, str2);
36494 case 33:
36495 return MemcmpFixed<33>(str1, str2);
36496 case 34:
36497 return MemcmpFixed<34>(str1, str2);
36498 case 35:
36499 return MemcmpFixed<35>(str1, str2);
36500 case 36:
36501 return MemcmpFixed<36>(str1, str2);
36502 case 37:
36503 return MemcmpFixed<37>(str1, str2);
36504 case 38:
36505 return MemcmpFixed<38>(str1, str2);
36506 case 39:
36507 return MemcmpFixed<39>(str1, str2);
36508 case 40:
36509 return MemcmpFixed<40>(str1, str2);
36510 case 41:
36511 return MemcmpFixed<41>(str1, str2);
36512 case 42:
36513 return MemcmpFixed<42>(str1, str2);
36514 case 43:
36515 return MemcmpFixed<43>(str1, str2);
36516 case 44:
36517 return MemcmpFixed<44>(str1, str2);
36518 case 45:
36519 return MemcmpFixed<45>(str1, str2);
36520 case 46:
36521 return MemcmpFixed<46>(str1, str2);
36522 case 47:
36523 return MemcmpFixed<47>(str1, str2);
36524 case 48:
36525 return MemcmpFixed<48>(str1, str2);
36526 case 49:
36527 return MemcmpFixed<49>(str1, str2);
36528 case 50:
36529 return MemcmpFixed<50>(str1, str2);
36530 case 51:
36531 return MemcmpFixed<51>(str1, str2);
36532 case 52:
36533 return MemcmpFixed<52>(str1, str2);
36534 case 53:
36535 return MemcmpFixed<53>(str1, str2);
36536 case 54:
36537 return MemcmpFixed<54>(str1, str2);
36538 case 55:
36539 return MemcmpFixed<55>(str1, str2);
36540 case 56:
36541 return MemcmpFixed<56>(str1, str2);
36542 case 57:
36543 return MemcmpFixed<57>(str1, str2);
36544 case 58:
36545 return MemcmpFixed<58>(str1, str2);
36546 case 59:
36547 return MemcmpFixed<59>(str1, str2);
36548 case 60:
36549 return MemcmpFixed<60>(str1, str2);
36550 case 61:
36551 return MemcmpFixed<61>(str1, str2);
36552 case 62:
36553 return MemcmpFixed<62>(str1, str2);
36554 case 63:
36555 return MemcmpFixed<63>(str1, str2);
36556 case 64:
36557 return MemcmpFixed<64>(str1, str2);
36558 default:
36559 return memcmp(str1, str2, size);
36560 }
36561 // LCOV_EXCL_STOP
36562}
Here is the call graph for this function:

◆ FastMemset()

void duckdb::FastMemset ( void ptr,
int  value,
size_t  size 
)
inlineprivate
36564 {
36565 // LCOV_EXCL_START
36566 switch (size) {
36567 case 0:
36568 return;
36569 case 1:
36570 return MemsetFixed<1>(ptr, value);
36571 case 2:
36572 return MemsetFixed<2>(ptr, value);
36573 case 3:
36574 return MemsetFixed<3>(ptr, value);
36575 case 4:
36576 return MemsetFixed<4>(ptr, value);
36577 case 5:
36578 return MemsetFixed<5>(ptr, value);
36579 case 6:
36580 return MemsetFixed<6>(ptr, value);
36581 case 7:
36582 return MemsetFixed<7>(ptr, value);
36583 case 8:
36584 return MemsetFixed<8>(ptr, value);
36585 case 9:
36586 return MemsetFixed<9>(ptr, value);
36587 case 10:
36588 return MemsetFixed<10>(ptr, value);
36589 case 11:
36590 return MemsetFixed<11>(ptr, value);
36591 case 12:
36592 return MemsetFixed<12>(ptr, value);
36593 case 13:
36594 return MemsetFixed<13>(ptr, value);
36595 case 14:
36596 return MemsetFixed<14>(ptr, value);
36597 case 15:
36598 return MemsetFixed<15>(ptr, value);
36599 case 16:
36600 return MemsetFixed<16>(ptr, value);
36601 case 17:
36602 return MemsetFixed<17>(ptr, value);
36603 case 18:
36604 return MemsetFixed<18>(ptr, value);
36605 case 19:
36606 return MemsetFixed<19>(ptr, value);
36607 case 20:
36608 return MemsetFixed<20>(ptr, value);
36609 case 21:
36610 return MemsetFixed<21>(ptr, value);
36611 case 22:
36612 return MemsetFixed<22>(ptr, value);
36613 case 23:
36614 return MemsetFixed<23>(ptr, value);
36615 case 24:
36616 return MemsetFixed<24>(ptr, value);
36617 case 25:
36618 return MemsetFixed<25>(ptr, value);
36619 case 26:
36620 return MemsetFixed<26>(ptr, value);
36621 case 27:
36622 return MemsetFixed<27>(ptr, value);
36623 case 28:
36624 return MemsetFixed<28>(ptr, value);
36625 case 29:
36626 return MemsetFixed<29>(ptr, value);
36627 case 30:
36628 return MemsetFixed<30>(ptr, value);
36629 case 31:
36630 return MemsetFixed<31>(ptr, value);
36631 case 32:
36632 return MemsetFixed<32>(ptr, value);
36633 case 33:
36634 return MemsetFixed<33>(ptr, value);
36635 case 34:
36636 return MemsetFixed<34>(ptr, value);
36637 case 35:
36638 return MemsetFixed<35>(ptr, value);
36639 case 36:
36640 return MemsetFixed<36>(ptr, value);
36641 case 37:
36642 return MemsetFixed<37>(ptr, value);
36643 case 38:
36644 return MemsetFixed<38>(ptr, value);
36645 case 39:
36646 return MemsetFixed<39>(ptr, value);
36647 case 40:
36648 return MemsetFixed<40>(ptr, value);
36649 case 41:
36650 return MemsetFixed<41>(ptr, value);
36651 case 42:
36652 return MemsetFixed<42>(ptr, value);
36653 case 43:
36654 return MemsetFixed<43>(ptr, value);
36655 case 44:
36656 return MemsetFixed<44>(ptr, value);
36657 case 45:
36658 return MemsetFixed<45>(ptr, value);
36659 case 46:
36660 return MemsetFixed<46>(ptr, value);
36661 case 47:
36662 return MemsetFixed<47>(ptr, value);
36663 case 48:
36664 return MemsetFixed<48>(ptr, value);
36665 case 49:
36666 return MemsetFixed<49>(ptr, value);
36667 case 50:
36668 return MemsetFixed<50>(ptr, value);
36669 case 51:
36670 return MemsetFixed<51>(ptr, value);
36671 case 52:
36672 return MemsetFixed<52>(ptr, value);
36673 case 53:
36674 return MemsetFixed<53>(ptr, value);
36675 case 54:
36676 return MemsetFixed<54>(ptr, value);
36677 case 55:
36678 return MemsetFixed<55>(ptr, value);
36679 case 56:
36680 return MemsetFixed<56>(ptr, value);
36681 case 57:
36682 return MemsetFixed<57>(ptr, value);
36683 case 58:
36684 return MemsetFixed<58>(ptr, value);
36685 case 59:
36686 return MemsetFixed<59>(ptr, value);
36687 case 60:
36688 return MemsetFixed<60>(ptr, value);
36689 case 61:
36690 return MemsetFixed<61>(ptr, value);
36691 case 62:
36692 return MemsetFixed<62>(ptr, value);
36693 case 63:
36694 return MemsetFixed<63>(ptr, value);
36695 case 64:
36696 return MemsetFixed<64>(ptr, value);
36697 case 65:
36698 return MemsetFixed<65>(ptr, value);
36699 case 66:
36700 return MemsetFixed<66>(ptr, value);
36701 case 67:
36702 return MemsetFixed<67>(ptr, value);
36703 case 68:
36704 return MemsetFixed<68>(ptr, value);
36705 case 69:
36706 return MemsetFixed<69>(ptr, value);
36707 case 70:
36708 return MemsetFixed<70>(ptr, value);
36709 case 71:
36710 return MemsetFixed<71>(ptr, value);
36711 case 72:
36712 return MemsetFixed<72>(ptr, value);
36713 case 73:
36714 return MemsetFixed<73>(ptr, value);
36715 case 74:
36716 return MemsetFixed<74>(ptr, value);
36717 case 75:
36718 return MemsetFixed<75>(ptr, value);
36719 case 76:
36720 return MemsetFixed<76>(ptr, value);
36721 case 77:
36722 return MemsetFixed<77>(ptr, value);
36723 case 78:
36724 return MemsetFixed<78>(ptr, value);
36725 case 79:
36726 return MemsetFixed<79>(ptr, value);
36727 case 80:
36728 return MemsetFixed<80>(ptr, value);
36729 case 81:
36730 return MemsetFixed<81>(ptr, value);
36731 case 82:
36732 return MemsetFixed<82>(ptr, value);
36733 case 83:
36734 return MemsetFixed<83>(ptr, value);
36735 case 84:
36736 return MemsetFixed<84>(ptr, value);
36737 case 85:
36738 return MemsetFixed<85>(ptr, value);
36739 case 86:
36740 return MemsetFixed<86>(ptr, value);
36741 case 87:
36742 return MemsetFixed<87>(ptr, value);
36743 case 88:
36744 return MemsetFixed<88>(ptr, value);
36745 case 89:
36746 return MemsetFixed<89>(ptr, value);
36747 case 90:
36748 return MemsetFixed<90>(ptr, value);
36749 case 91:
36750 return MemsetFixed<91>(ptr, value);
36751 case 92:
36752 return MemsetFixed<92>(ptr, value);
36753 case 93:
36754 return MemsetFixed<93>(ptr, value);
36755 case 94:
36756 return MemsetFixed<94>(ptr, value);
36757 case 95:
36758 return MemsetFixed<95>(ptr, value);
36759 case 96:
36760 return MemsetFixed<96>(ptr, value);
36761 case 97:
36762 return MemsetFixed<97>(ptr, value);
36763 case 98:
36764 return MemsetFixed<98>(ptr, value);
36765 case 99:
36766 return MemsetFixed<99>(ptr, value);
36767 case 100:
36768 return MemsetFixed<100>(ptr, value);
36769 case 101:
36770 return MemsetFixed<101>(ptr, value);
36771 case 102:
36772 return MemsetFixed<102>(ptr, value);
36773 case 103:
36774 return MemsetFixed<103>(ptr, value);
36775 case 104:
36776 return MemsetFixed<104>(ptr, value);
36777 case 105:
36778 return MemsetFixed<105>(ptr, value);
36779 case 106:
36780 return MemsetFixed<106>(ptr, value);
36781 case 107:
36782 return MemsetFixed<107>(ptr, value);
36783 case 108:
36784 return MemsetFixed<108>(ptr, value);
36785 case 109:
36786 return MemsetFixed<109>(ptr, value);
36787 case 110:
36788 return MemsetFixed<110>(ptr, value);
36789 case 111:
36790 return MemsetFixed<111>(ptr, value);
36791 case 112:
36792 return MemsetFixed<112>(ptr, value);
36793 case 113:
36794 return MemsetFixed<113>(ptr, value);
36795 case 114:
36796 return MemsetFixed<114>(ptr, value);
36797 case 115:
36798 return MemsetFixed<115>(ptr, value);
36799 case 116:
36800 return MemsetFixed<116>(ptr, value);
36801 case 117:
36802 return MemsetFixed<117>(ptr, value);
36803 case 118:
36804 return MemsetFixed<118>(ptr, value);
36805 case 119:
36806 return MemsetFixed<119>(ptr, value);
36807 case 120:
36808 return MemsetFixed<120>(ptr, value);
36809 case 121:
36810 return MemsetFixed<121>(ptr, value);
36811 case 122:
36812 return MemsetFixed<122>(ptr, value);
36813 case 123:
36814 return MemsetFixed<123>(ptr, value);
36815 case 124:
36816 return MemsetFixed<124>(ptr, value);
36817 case 125:
36818 return MemsetFixed<125>(ptr, value);
36819 case 126:
36820 return MemsetFixed<126>(ptr, value);
36821 case 127:
36822 return MemsetFixed<127>(ptr, value);
36823 case 128:
36824 return MemsetFixed<128>(ptr, value);
36825 case 129:
36826 return MemsetFixed<129>(ptr, value);
36827 case 130:
36828 return MemsetFixed<130>(ptr, value);
36829 case 131:
36830 return MemsetFixed<131>(ptr, value);
36831 case 132:
36832 return MemsetFixed<132>(ptr, value);
36833 case 133:
36834 return MemsetFixed<133>(ptr, value);
36835 case 134:
36836 return MemsetFixed<134>(ptr, value);
36837 case 135:
36838 return MemsetFixed<135>(ptr, value);
36839 case 136:
36840 return MemsetFixed<136>(ptr, value);
36841 case 137:
36842 return MemsetFixed<137>(ptr, value);
36843 case 138:
36844 return MemsetFixed<138>(ptr, value);
36845 case 139:
36846 return MemsetFixed<139>(ptr, value);
36847 case 140:
36848 return MemsetFixed<140>(ptr, value);
36849 case 141:
36850 return MemsetFixed<141>(ptr, value);
36851 case 142:
36852 return MemsetFixed<142>(ptr, value);
36853 case 143:
36854 return MemsetFixed<143>(ptr, value);
36855 case 144:
36856 return MemsetFixed<144>(ptr, value);
36857 case 145:
36858 return MemsetFixed<145>(ptr, value);
36859 case 146:
36860 return MemsetFixed<146>(ptr, value);
36861 case 147:
36862 return MemsetFixed<147>(ptr, value);
36863 case 148:
36864 return MemsetFixed<148>(ptr, value);
36865 case 149:
36866 return MemsetFixed<149>(ptr, value);
36867 case 150:
36868 return MemsetFixed<150>(ptr, value);
36869 case 151:
36870 return MemsetFixed<151>(ptr, value);
36871 case 152:
36872 return MemsetFixed<152>(ptr, value);
36873 case 153:
36874 return MemsetFixed<153>(ptr, value);
36875 case 154:
36876 return MemsetFixed<154>(ptr, value);
36877 case 155:
36878 return MemsetFixed<155>(ptr, value);
36879 case 156:
36880 return MemsetFixed<156>(ptr, value);
36881 case 157:
36882 return MemsetFixed<157>(ptr, value);
36883 case 158:
36884 return MemsetFixed<158>(ptr, value);
36885 case 159:
36886 return MemsetFixed<159>(ptr, value);
36887 case 160:
36888 return MemsetFixed<160>(ptr, value);
36889 case 161:
36890 return MemsetFixed<161>(ptr, value);
36891 case 162:
36892 return MemsetFixed<162>(ptr, value);
36893 case 163:
36894 return MemsetFixed<163>(ptr, value);
36895 case 164:
36896 return MemsetFixed<164>(ptr, value);
36897 case 165:
36898 return MemsetFixed<165>(ptr, value);
36899 case 166:
36900 return MemsetFixed<166>(ptr, value);
36901 case 167:
36902 return MemsetFixed<167>(ptr, value);
36903 case 168:
36904 return MemsetFixed<168>(ptr, value);
36905 case 169:
36906 return MemsetFixed<169>(ptr, value);
36907 case 170:
36908 return MemsetFixed<170>(ptr, value);
36909 case 171:
36910 return MemsetFixed<171>(ptr, value);
36911 case 172:
36912 return MemsetFixed<172>(ptr, value);
36913 case 173:
36914 return MemsetFixed<173>(ptr, value);
36915 case 174:
36916 return MemsetFixed<174>(ptr, value);
36917 case 175:
36918 return MemsetFixed<175>(ptr, value);
36919 case 176:
36920 return MemsetFixed<176>(ptr, value);
36921 case 177:
36922 return MemsetFixed<177>(ptr, value);
36923 case 178:
36924 return MemsetFixed<178>(ptr, value);
36925 case 179:
36926 return MemsetFixed<179>(ptr, value);
36927 case 180:
36928 return MemsetFixed<180>(ptr, value);
36929 case 181:
36930 return MemsetFixed<181>(ptr, value);
36931 case 182:
36932 return MemsetFixed<182>(ptr, value);
36933 case 183:
36934 return MemsetFixed<183>(ptr, value);
36935 case 184:
36936 return MemsetFixed<184>(ptr, value);
36937 case 185:
36938 return MemsetFixed<185>(ptr, value);
36939 case 186:
36940 return MemsetFixed<186>(ptr, value);
36941 case 187:
36942 return MemsetFixed<187>(ptr, value);
36943 case 188:
36944 return MemsetFixed<188>(ptr, value);
36945 case 189:
36946 return MemsetFixed<189>(ptr, value);
36947 case 190:
36948 return MemsetFixed<190>(ptr, value);
36949 case 191:
36950 return MemsetFixed<191>(ptr, value);
36951 case 192:
36952 return MemsetFixed<192>(ptr, value);
36953 case 193:
36954 return MemsetFixed<193>(ptr, value);
36955 case 194:
36956 return MemsetFixed<194>(ptr, value);
36957 case 195:
36958 return MemsetFixed<195>(ptr, value);
36959 case 196:
36960 return MemsetFixed<196>(ptr, value);
36961 case 197:
36962 return MemsetFixed<197>(ptr, value);
36963 case 198:
36964 return MemsetFixed<198>(ptr, value);
36965 case 199:
36966 return MemsetFixed<199>(ptr, value);
36967 case 200:
36968 return MemsetFixed<200>(ptr, value);
36969 case 201:
36970 return MemsetFixed<201>(ptr, value);
36971 case 202:
36972 return MemsetFixed<202>(ptr, value);
36973 case 203:
36974 return MemsetFixed<203>(ptr, value);
36975 case 204:
36976 return MemsetFixed<204>(ptr, value);
36977 case 205:
36978 return MemsetFixed<205>(ptr, value);
36979 case 206:
36980 return MemsetFixed<206>(ptr, value);
36981 case 207:
36982 return MemsetFixed<207>(ptr, value);
36983 case 208:
36984 return MemsetFixed<208>(ptr, value);
36985 case 209:
36986 return MemsetFixed<209>(ptr, value);
36987 case 210:
36988 return MemsetFixed<210>(ptr, value);
36989 case 211:
36990 return MemsetFixed<211>(ptr, value);
36991 case 212:
36992 return MemsetFixed<212>(ptr, value);
36993 case 213:
36994 return MemsetFixed<213>(ptr, value);
36995 case 214:
36996 return MemsetFixed<214>(ptr, value);
36997 case 215:
36998 return MemsetFixed<215>(ptr, value);
36999 case 216:
37000 return MemsetFixed<216>(ptr, value);
37001 case 217:
37002 return MemsetFixed<217>(ptr, value);
37003 case 218:
37004 return MemsetFixed<218>(ptr, value);
37005 case 219:
37006 return MemsetFixed<219>(ptr, value);
37007 case 220:
37008 return MemsetFixed<220>(ptr, value);
37009 case 221:
37010 return MemsetFixed<221>(ptr, value);
37011 case 222:
37012 return MemsetFixed<222>(ptr, value);
37013 case 223:
37014 return MemsetFixed<223>(ptr, value);
37015 case 224:
37016 return MemsetFixed<224>(ptr, value);
37017 case 225:
37018 return MemsetFixed<225>(ptr, value);
37019 case 226:
37020 return MemsetFixed<226>(ptr, value);
37021 case 227:
37022 return MemsetFixed<227>(ptr, value);
37023 case 228:
37024 return MemsetFixed<228>(ptr, value);
37025 case 229:
37026 return MemsetFixed<229>(ptr, value);
37027 case 230:
37028 return MemsetFixed<230>(ptr, value);
37029 case 231:
37030 return MemsetFixed<231>(ptr, value);
37031 case 232:
37032 return MemsetFixed<232>(ptr, value);
37033 case 233:
37034 return MemsetFixed<233>(ptr, value);
37035 case 234:
37036 return MemsetFixed<234>(ptr, value);
37037 case 235:
37038 return MemsetFixed<235>(ptr, value);
37039 case 236:
37040 return MemsetFixed<236>(ptr, value);
37041 case 237:
37042 return MemsetFixed<237>(ptr, value);
37043 case 238:
37044 return MemsetFixed<238>(ptr, value);
37045 case 239:
37046 return MemsetFixed<239>(ptr, value);
37047 case 240:
37048 return MemsetFixed<240>(ptr, value);
37049 case 241:
37050 return MemsetFixed<241>(ptr, value);
37051 case 242:
37052 return MemsetFixed<242>(ptr, value);
37053 case 243:
37054 return MemsetFixed<243>(ptr, value);
37055 case 244:
37056 return MemsetFixed<244>(ptr, value);
37057 case 245:
37058 return MemsetFixed<245>(ptr, value);
37059 case 246:
37060 return MemsetFixed<246>(ptr, value);
37061 case 247:
37062 return MemsetFixed<247>(ptr, value);
37063 case 248:
37064 return MemsetFixed<248>(ptr, value);
37065 case 249:
37066 return MemsetFixed<249>(ptr, value);
37067 case 250:
37068 return MemsetFixed<250>(ptr, value);
37069 case 251:
37070 return MemsetFixed<251>(ptr, value);
37071 case 252:
37072 return MemsetFixed<252>(ptr, value);
37073 case 253:
37074 return MemsetFixed<253>(ptr, value);
37075 case 254:
37076 return MemsetFixed<254>(ptr, value);
37077 case 255:
37078 return MemsetFixed<255>(ptr, value);
37079 case 256:
37080 return MemsetFixed<256>(ptr, value);
37081 default:
37082 memset(ptr, value, size);
37083 }
37084 // LCOV_EXCL_STOP
37085}

◆ GetArrowExtensionInternal()

ArrowTypeExtension duckdb::GetArrowExtensionInternal ( unordered_map< ArrowExtensionMetadata, ArrowTypeExtension, HashArrowTypeExtension > &  type_extensions,
ArrowExtensionMetadata  info 
)
45172 {
45173 if (type_extensions.find(info) == type_extensions.end()) {
45174 auto og_info = info;
45175 info.SetArrowFormat("");
45176 if (type_extensions.find(info) == type_extensions.end()) {
45177 auto format = og_info.GetArrowFormat();
45178 auto type = ArrowType::GetTypeFromFormat(format);
45179 return ArrowTypeExtension(og_info, std::move(type));
45180 }
45181 }
45182 return type_extensions[info];
45183}
Definition duckdb.hpp:37818

◆ DuckDBAssertInternal()

DUCKDB_API void duckdb::DuckDBAssertInternal ( bool  condition,
const char condition_name,
const char file,
int  linenr 
)
46389 {
46390#ifdef DISABLE_ASSERTIONS
46391 return;
46392#endif
46393 if (condition) {
46394 return;
46395 }
46396 throw InternalException("Assertion triggered in file \"%s\" on line %d: %s", file, linenr, condition_name);
46397}

◆ PrintBits()

void duckdb::PrintBits ( const char  value)
46650 {
46651 string result;
46652 for (int i = 7; i >= 0; --i) {
46653 result += to_string((value >> i) & 1);
46654 }
46655 Printer::RawPrint(OutputStream::STREAM_STDOUT, result);
46656}

◆ BignumAddition()

void duckdb::BignumAddition ( data_ptr_t  result,
int64_t  result_end,
bool  is_target_absolute_bigger,
const BignumIntermediate lhs,
const BignumIntermediate rhs 
)
46841 {
46843
46844 int64_t i_target = lhs.size - 1; // last byte index in target
46845 int64_t i_source = rhs.size - 1; // last byte index in source
46846 int64_t i_result = result_end - 1; // last byte index in result
46847
46848 // Carry for addition
46849 uint16_t carry = 0;
46850 uint16_t borrow = 0;
46851 // Add bytes from right to left
46852 while (i_result >= 0) {
46853 // If the numbers are negative, we bit flip them
46856 // Add bytes and carry
46857 uint16_t sum;
46858 if (lhs.is_negative == rhs.is_negative) {
46859 sum = static_cast<uint16_t>(target_byte) + static_cast<uint16_t>(source_byte) + carry;
46860 carry = (sum >> 8) & 0xFF;
46861 } else {
46862 if (is_target_absolute_bigger) {
46863 sum = static_cast<uint16_t>(target_byte) - static_cast<uint16_t>(source_byte) - borrow;
46864 borrow = sum > static_cast<uint16_t>(target_byte) ? 1 : 0;
46865 } else {
46866 sum = static_cast<uint16_t>(source_byte) - static_cast<uint16_t>(target_byte) - borrow;
46867 borrow = sum > static_cast<uint16_t>(source_byte) ? 1 : 0;
46868 }
46869 }
46870 uint8_t result_byte = static_cast<uint8_t>(sum & 0xFF);
46871 // If the result is not positive, we must flip the bits again
46872 result[i_result] = is_result_negative ? ~result_byte : result_byte;
46873 i_target--;
46874 i_source--;
46875 i_result--;
46876 }
46877
46878 if (is_result_negative != lhs.is_negative) {
46879 // If we are flipping the sign we must be sure that we are flipping all extra bits from our target
46880 for (int64_t i = 0; i < result_end - rhs.size; ++i) {
46881 result[i] = is_result_negative ? 0xFF : 0x00;
46882 }
46883 }
46884}
Scalar sum(InputArray src)
bool is_negative
Information on the header.
Definition duckdb.cpp:46450
uint8_t GetAbsoluteByte(int64_t index) const
Get the absolute value of a byte.
Definition duckdb.cpp:46694

◆ ProduceOverUnderFlowError()

string duckdb::ProduceOverUnderFlowError ( bool  is_result_negative,
idx_t  actual_start,
idx_t  data_size 
)
46919 {
46920 // We must throw an error, usually we should print the numbers, but I have a feeling that it won't be possible
46921 // here.
46922 std::ostringstream error;
46923 if (is_result_negative) {
46924 error << "Underflow ";
46925 } else {
46926 error << "Overflow ";
46927 }
46928 error << "in Bignum Operation. A Bignum can hold max " << Bignum::MAX_DATA_SIZE
46929 << " data bytes. Current bignum has " << data_size - actual_start << " bytes.";
46930 return error.str();
46931}
void error(int _code, const String &_err, const char *_func, const char *_file, int _line)

◆ ConvertVectorToValue()

Value duckdb::ConvertVectorToValue ( vector< Value set)
47049 {
47050 if (set.empty()) {
47051 return Value::LIST(LogicalType::BOOLEAN, std::move(set));
47052 }
47053 return Value::LIST(std::move(set));
47054}

◆ ParseColumnList() [1/2]

vector< bool > duckdb::ParseColumnList ( const vector< Value > &  set,
vector< string > &  names,
const string &  option_name 
)
47056 {
47057 vector<bool> result;
47058
47059 if (set.empty()) {
47060 throw BinderException("\"%s\" expects a column list or * as parameter", loption);
47061 }
47062 // list of options: parse the list
47063 case_insensitive_map_t<bool> option_map;
47064 for (idx_t i = 0; i < set.size(); i++) {
47065 option_map[set[i].ToString()] = false;
47066 }
47067 result.resize(names.size(), false);
47068 for (idx_t i = 0; i < names.size(); i++) {
47069 auto entry = option_map.find(names[i]);
47070 if (entry != option_map.end()) {
47071 result[i] = true;
47072 entry->second = true;
47073 }
47074 }
47075 for (auto &entry : option_map) {
47076 if (!entry.second) {
47077 throw BinderException("\"%s\" expected to find %s, but it was not found in the table", loption,
47078 entry.first.c_str());
47079 }
47080 }
47081 return result;
47082}

◆ ParseColumnList() [2/2]

vector< bool > duckdb::ParseColumnList ( const Value value,
vector< string > &  names,
const string &  option_name 
)
47084 {
47085 vector<bool> result;
47086
47087 // Only accept a list of arguments
47088 if (value.type().id() != LogicalTypeId::LIST) {
47089 // Support a single argument if it's '*'
47090 if (value.type().id() == LogicalTypeId::VARCHAR && value.GetValue<string>() == "*") {
47091 result.resize(names.size(), true);
47092 return result;
47093 }
47094 throw BinderException("\"%s\" expects a column list or * as parameter", loption);
47095 }
47096 if (value.IsNull()) {
47097 throw BinderException("\"%s\" expects a column list or * as parameter, it can't be a NULL value", loption);
47098 }
47099 auto &children = ListValue::GetChildren(value);
47100 // accept '*' as single argument
47101 if (children.size() == 1 && children[0].type().id() == LogicalTypeId::VARCHAR &&
47102 children[0].GetValue<string>() == "*") {
47103 result.resize(names.size(), true);
47104 return result;
47105 }
47106 return ParseColumnList(children, names, loption);
47107}

◆ ParseColumnsOrdered() [1/2]

vector< idx_t > duckdb::ParseColumnsOrdered ( const vector< Value > &  set,
vector< string > &  names,
const string &  loption 
)
47109 {
47110 vector<idx_t> result;
47111
47112 if (set.empty()) {
47113 throw BinderException("\"%s\" expects a column list or * as parameter", loption);
47114 }
47115
47116 // Maps option to bool indicating if its found and the index in the original set
47117 case_insensitive_map_t<std::pair<bool, idx_t>> option_map;
47118 for (idx_t i = 0; i < set.size(); i++) {
47119 option_map[set[i].ToString()] = {false, i};
47120 }
47121 result.resize(option_map.size());
47122
47123 for (idx_t i = 0; i < names.size(); i++) {
47124 auto entry = option_map.find(names[i]);
47125 if (entry != option_map.end()) {
47126 result[entry->second.second] = i;
47127 entry->second.first = true;
47128 }
47129 }
47130 for (auto &entry : option_map) {
47131 if (!entry.second.first) {
47132 throw BinderException("\"%s\" expected to find %s, but it was not found in the table", loption,
47133 entry.first.c_str());
47134 }
47135 }
47136 return result;
47137}

◆ ParseColumnsOrdered() [2/2]

vector< idx_t > duckdb::ParseColumnsOrdered ( const Value value,
vector< string > &  names,
const string &  loption 
)
47139 {
47140 vector<idx_t> result;
47141
47142 // Only accept a list of arguments
47143 if (value.type().id() != LogicalTypeId::LIST) {
47144 // Support a single argument if it's '*'
47145 if (value.type().id() == LogicalTypeId::VARCHAR && value.GetValue<string>() == "*") {
47146 result.resize(names.size(), 0);
47147 std::iota(std::begin(result), std::end(result), 0);
47148 return result;
47149 }
47150 throw BinderException("\"%s\" expects a column list or * as parameter", loption);
47151 }
47152 auto &children = ListValue::GetChildren(value);
47153 // accept '*' as single argument
47154 if (children.size() == 1 && children[0].type().id() == LogicalTypeId::VARCHAR &&
47155 children[0].GetValue<string>() == "*") {
47156 result.resize(names.size(), 0);
47157 std::iota(std::begin(result), std::end(result), 0);
47158 return result;
47159 }
47160 return ParseColumnsOrdered(children, names, loption);
47161}

◆ IsWhitespaceEscape()

bool duckdb::IsWhitespaceEscape ( const char  c)
48343 {
48344 // \n and \t are whitespace escapes
48345 return c == 'n' || c == 't';
48346}

◆ Checksum() [1/2]

uint64_t duckdb::Checksum ( uint8_t buffer,
size_t  size 
)
protected

Compute a checksum over a buffer of size size.

49970 {
49971 uint64_t result = 5381;
49972 uint64_t *ptr = reinterpret_cast<uint64_t *>(buffer);
49973 size_t i;
49974 // for efficiency, we first checksum uint64_t values
49975 for (i = 0; i < size / 8; i++) {
49976 result ^= Checksum(ptr[i]);
49977 }
49978 if (size - i * 8 > 0) {
49979 // the remaining 0-7 bytes we hash using a string hash
49980 result ^= ChecksumRemainder(buffer + i * 8, size - i * 8);
49981 }
49982 return result;
49983}
GOpaque< Size > size(const GMat &src)
uint64_t Checksum(uint8_t *buffer, size_t size)
Compute a checksum over a buffer of size size.
Definition duckdb.cpp:49970
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Checksum() [2/2]

hash_t duckdb::Checksum ( uint64_t  x)
protected
49910 {
49911 return x * UINT64_C(0xbf58476d1ce4e5b9);
49912}

◆ ChecksumRemainder()

hash_t duckdb::ChecksumRemainder ( void ptr,
size_t  len 
)
protectednoexcept
49917 {
49918 static constexpr uint64_t M = UINT64_C(0xc6a4a7935bd1e995);
49919 static constexpr uint64_t SEED = UINT64_C(0xe17a1465);
49920 static constexpr unsigned int R = 47;
49921
49922 auto const *const data64 = static_cast<uint64_t const *>(ptr);
49923 uint64_t h = SEED ^ (len * M);
49924
49925 size_t const n_blocks = len / 8;
49926 for (size_t i = 0; i < n_blocks; ++i) {
49927 auto k = Load<uint64_t>(reinterpret_cast<const_data_ptr_t>(data64 + i));
49928
49929 k *= M;
49930 k ^= k >> R;
49931 k *= M;
49932
49933 h ^= k;
49934 h *= M;
49935 }
49936
49937 auto const *const data8 = reinterpret_cast<uint8_t const *>(data64 + n_blocks);
49938 switch (len & 7U) {
49939 case 7:
49940 h ^= static_cast<uint64_t>(data8[6]) << 48U;
49941 DUCKDB_EXPLICIT_FALLTHROUGH;
49942 case 6:
49943 h ^= static_cast<uint64_t>(data8[5]) << 40U;
49944 DUCKDB_EXPLICIT_FALLTHROUGH;
49945 case 5:
49946 h ^= static_cast<uint64_t>(data8[4]) << 32U;
49947 DUCKDB_EXPLICIT_FALLTHROUGH;
49948 case 4:
49949 h ^= static_cast<uint64_t>(data8[3]) << 24U;
49950 DUCKDB_EXPLICIT_FALLTHROUGH;
49951 case 3:
49952 h ^= static_cast<uint64_t>(data8[2]) << 16U;
49953 DUCKDB_EXPLICIT_FALLTHROUGH;
49954 case 2:
49955 h ^= static_cast<uint64_t>(data8[1]) << 8U;
49956 DUCKDB_EXPLICIT_FALLTHROUGH;
49957 case 1:
49958 h ^= static_cast<uint64_t>(data8[0]);
49959 h *= M;
49960 DUCKDB_EXPLICIT_FALLTHROUGH;
49961 default:
49962 break;
49963 }
49964 h ^= h >> R;
49965 h *= M;
49966 h ^= h >> R;
49967 return static_cast<hash_t>(h);
49968}
uint64_t hash_t
The type used for hashes.
Definition duckdb.hpp:243

◆ IsPowerOfTwo()

DUCKDB_API bool duckdb::IsPowerOfTwo ( uint64_t  v)
private
50313 {
50314 return (v & (v - 1)) == 0;
50315}
uint32_t v

◆ NextPowerOfTwo()

DUCKDB_API uint64_t duckdb::NextPowerOfTwo ( uint64_t  v)
private
50317 {
50318 auto v_in = v;
50319 if (v < 1) { // this is not strictly right but we seem to rely on it in places
50320 return 2;
50321 }
50322 v--;
50323 v |= v >> 1;
50324 v |= v >> 2;
50325 v |= v >> 4;
50326 v |= v >> 8;
50327 v |= v >> 16;
50328 v |= v >> 32;
50329 v++;
50330 if (v == 0) {
50331 throw OutOfRangeException("Can't find next power of 2 for %llu", v_in);
50332 }
50333 return v;
50334}

◆ PreviousPowerOfTwo()

DUCKDB_API uint64_t duckdb::PreviousPowerOfTwo ( uint64_t  v)
private
50336 {
50337 return NextPowerOfTwo((v / 2) + 1);
50338}

◆ IsInvalidSchema()

DUCKDB_API bool duckdb::IsInvalidSchema ( const string &  str)
private
50340 {
50341 return str.empty();
50342}

◆ IsInvalidCatalog()

DUCKDB_API bool duckdb::IsInvalidCatalog ( const string &  str)
private
50344 {
50345 return str.empty();
50346}

◆ IsRowIdColumnId()

DUCKDB_API bool duckdb::IsRowIdColumnId ( column_t  column_id)
private
50348 {
50349 return column_id == COLUMN_IDENTIFIER_ROW_ID;
50350}
const column_t COLUMN_IDENTIFIER_ROW_ID
Special value used to signify the ROW ID of a table.
Definition duckdb.cpp:50303

◆ IsVirtualColumn()

DUCKDB_API bool duckdb::IsVirtualColumn ( column_t  column_id)
private
50352 {
50353 return column_id >= VIRTUAL_COLUMN_START;
50354}

◆ ByteReverse()

static void duckdb::ByteReverse ( unsigned char buf,
unsigned  longs 
)
staticprivate
50581 {
50582 uint32_t t;
50583 do {
50584 t = (uint32_t)((unsigned)buf[3] << 8 | buf[2]) << 16 | ((unsigned)buf[1] << 8 | buf[0]);
50585 *reinterpret_cast<uint32_t *>(buf) = t;
50586 buf += 4;
50587 } while (--longs);
50588}

◆ MD5Transform()

static void duckdb::MD5Transform ( uint32_t  buf[4],
const uint32_t  in[16] 
)
staticprivate
50605 {
50606 uint32_t a, b, c, d;
50607
50608 a = buf[0];
50609 b = buf[1];
50610 c = buf[2];
50611 d = buf[3];
50612
50613 MD5STEP(F1, a, b, c, d, in[0] + 0xd76aa478, 7);
50614 MD5STEP(F1, d, a, b, c, in[1] + 0xe8c7b756, 12);
50615 MD5STEP(F1, c, d, a, b, in[2] + 0x242070db, 17);
50616 MD5STEP(F1, b, c, d, a, in[3] + 0xc1bdceee, 22);
50617 MD5STEP(F1, a, b, c, d, in[4] + 0xf57c0faf, 7);
50618 MD5STEP(F1, d, a, b, c, in[5] + 0x4787c62a, 12);
50619 MD5STEP(F1, c, d, a, b, in[6] + 0xa8304613, 17);
50620 MD5STEP(F1, b, c, d, a, in[7] + 0xfd469501, 22);
50621 MD5STEP(F1, a, b, c, d, in[8] + 0x698098d8, 7);
50622 MD5STEP(F1, d, a, b, c, in[9] + 0x8b44f7af, 12);
50623 MD5STEP(F1, c, d, a, b, in[10] + 0xffff5bb1, 17);
50624 MD5STEP(F1, b, c, d, a, in[11] + 0x895cd7be, 22);
50625 MD5STEP(F1, a, b, c, d, in[12] + 0x6b901122, 7);
50626 MD5STEP(F1, d, a, b, c, in[13] + 0xfd987193, 12);
50627 MD5STEP(F1, c, d, a, b, in[14] + 0xa679438e, 17);
50628 MD5STEP(F1, b, c, d, a, in[15] + 0x49b40821, 22);
50629
50630 MD5STEP(F2, a, b, c, d, in[1] + 0xf61e2562, 5);
50631 MD5STEP(F2, d, a, b, c, in[6] + 0xc040b340, 9);
50632 MD5STEP(F2, c, d, a, b, in[11] + 0x265e5a51, 14);
50633 MD5STEP(F2, b, c, d, a, in[0] + 0xe9b6c7aa, 20);
50634 MD5STEP(F2, a, b, c, d, in[5] + 0xd62f105d, 5);
50635 MD5STEP(F2, d, a, b, c, in[10] + 0x02441453, 9);
50636 MD5STEP(F2, c, d, a, b, in[15] + 0xd8a1e681, 14);
50637 MD5STEP(F2, b, c, d, a, in[4] + 0xe7d3fbc8, 20);
50638 MD5STEP(F2, a, b, c, d, in[9] + 0x21e1cde6, 5);
50639 MD5STEP(F2, d, a, b, c, in[14] + 0xc33707d6, 9);
50640 MD5STEP(F2, c, d, a, b, in[3] + 0xf4d50d87, 14);
50641 MD5STEP(F2, b, c, d, a, in[8] + 0x455a14ed, 20);
50642 MD5STEP(F2, a, b, c, d, in[13] + 0xa9e3e905, 5);
50643 MD5STEP(F2, d, a, b, c, in[2] + 0xfcefa3f8, 9);
50644 MD5STEP(F2, c, d, a, b, in[7] + 0x676f02d9, 14);
50645 MD5STEP(F2, b, c, d, a, in[12] + 0x8d2a4c8a, 20);
50646
50647 MD5STEP(F3, a, b, c, d, in[5] + 0xfffa3942, 4);
50648 MD5STEP(F3, d, a, b, c, in[8] + 0x8771f681, 11);
50649 MD5STEP(F3, c, d, a, b, in[11] + 0x6d9d6122, 16);
50650 MD5STEP(F3, b, c, d, a, in[14] + 0xfde5380c, 23);
50651 MD5STEP(F3, a, b, c, d, in[1] + 0xa4beea44, 4);
50652 MD5STEP(F3, d, a, b, c, in[4] + 0x4bdecfa9, 11);
50653 MD5STEP(F3, c, d, a, b, in[7] + 0xf6bb4b60, 16);
50654 MD5STEP(F3, b, c, d, a, in[10] + 0xbebfbc70, 23);
50655 MD5STEP(F3, a, b, c, d, in[13] + 0x289b7ec6, 4);
50656 MD5STEP(F3, d, a, b, c, in[0] + 0xeaa127fa, 11);
50657 MD5STEP(F3, c, d, a, b, in[3] + 0xd4ef3085, 16);
50658 MD5STEP(F3, b, c, d, a, in[6] + 0x04881d05, 23);
50659 MD5STEP(F3, a, b, c, d, in[9] + 0xd9d4d039, 4);
50660 MD5STEP(F3, d, a, b, c, in[12] + 0xe6db99e5, 11);
50661 MD5STEP(F3, c, d, a, b, in[15] + 0x1fa27cf8, 16);
50662 MD5STEP(F3, b, c, d, a, in[2] + 0xc4ac5665, 23);
50663
50664 MD5STEP(F4, a, b, c, d, in[0] + 0xf4292244, 6);
50665 MD5STEP(F4, d, a, b, c, in[7] + 0x432aff97, 10);
50666 MD5STEP(F4, c, d, a, b, in[14] + 0xab9423a7, 15);
50667 MD5STEP(F4, b, c, d, a, in[5] + 0xfc93a039, 21);
50668 MD5STEP(F4, a, b, c, d, in[12] + 0x655b59c3, 6);
50669 MD5STEP(F4, d, a, b, c, in[3] + 0x8f0ccc92, 10);
50670 MD5STEP(F4, c, d, a, b, in[10] + 0xffeff47d, 15);
50671 MD5STEP(F4, b, c, d, a, in[1] + 0x85845dd1, 21);
50672 MD5STEP(F4, a, b, c, d, in[8] + 0x6fa87e4f, 6);
50673 MD5STEP(F4, d, a, b, c, in[15] + 0xfe2ce6e0, 10);
50674 MD5STEP(F4, c, d, a, b, in[6] + 0xa3014314, 15);
50675 MD5STEP(F4, b, c, d, a, in[13] + 0x4e0811a1, 21);
50676 MD5STEP(F4, a, b, c, d, in[4] + 0xf7537e82, 6);
50677 MD5STEP(F4, d, a, b, c, in[11] + 0xbd3af235, 10);
50678 MD5STEP(F4, c, d, a, b, in[2] + 0x2ad7d2bb, 15);
50679 MD5STEP(F4, b, c, d, a, in[9] + 0xeb86d391, 21);
50680
50681 buf[0] += a;
50682 buf[1] += b;
50683 buf[2] += c;
50684 buf[3] += d;
50685}

◆ TransformNewLine()

static string duckdb::TransformNewLine ( string  new_line)
staticprotected
50967 {
50968 new_line = StringUtil::Replace(new_line, "\\r", "\r");
50969 return StringUtil::Replace(new_line, "\\n", "\n");
50970}

◆ GetFileSize()

static idx_t duckdb::GetFileSize ( unique_ptr< BufferedFileWriter > &  file_writer,
idx_t bytes_written 
)
staticprotected
51166 {
51167 if (file_writer) {
51168 return file_writer->GetFileSize();
51169 }
51170 return bytes_written;
51171}

◆ DecryptBuffer()

static void duckdb::DecryptBuffer ( EncryptionState encryption_state,
const_data_ptr_t  temp_key,
data_ptr_t  buffer,
idx_t  buffer_size,
data_ptr_t  metadata 
)
static

load the stored nonce and tag

Initialize the decryption

check the tag

52049 {
52051 EncryptionTag tag;
52052 EncryptionNonce nonce(encryption_state.metadata->GetCipher(), encryption_state.metadata->GetVersion());
52053 memcpy(nonce.data(), metadata, nonce.size());
52054 memcpy(tag.data(), metadata + nonce.size(), tag.size());
52055
52057 encryption_state.InitializeDecryption(nonce, temp_key);
52058
52059 auto aes_res = encryption_state.Process(buffer, buffer_size, buffer, buffer_size);
52060
52061 if (aes_res != buffer_size) {
52062 throw IOException("Buffer decryption failure: in- and output size differ (%llu/%llu)", buffer_size, aes_res);
52063 }
52064
52066 encryption_state.Finalize(buffer, 0, tag.data(), tag.size());
52067}
Definition duckdb.hpp:716
Definition duckdb.cpp:10930
Definition duckdb.cpp:10909
Here is the caller graph for this function:

◆ IsBigintDatepart()

bool duckdb::IsBigintDatepart ( DatePartSpecifier  part_code)
inline
52624 {
52625 return size_t(part_code) < size_t(DatePartSpecifier::BEGIN_DOUBLE);
52626}

◆ TryGetDatePartSpecifier()

bool duckdb::TryGetDatePartSpecifier ( const string &  specifier,
DatePartSpecifier &  result 
)
67668 {
67669 auto specifier = StringUtil::Lower(specifier_p);
67670 if (specifier == "year" || specifier == "yr" || specifier == "y" || specifier == "years" || specifier == "yrs") {
67671 result = DatePartSpecifier::YEAR;
67672 } else if (specifier == "month" || specifier == "mon" || specifier == "months" || specifier == "mons") {
67673 result = DatePartSpecifier::MONTH;
67674 } else if (specifier == "day" || specifier == "days" || specifier == "d" || specifier == "dayofmonth") {
67675 result = DatePartSpecifier::DAY;
67676 } else if (specifier == "decade" || specifier == "dec" || specifier == "decades" || specifier == "decs") {
67677 result = DatePartSpecifier::DECADE;
67678 } else if (specifier == "century" || specifier == "cent" || specifier == "centuries" || specifier == "c") {
67679 result = DatePartSpecifier::CENTURY;
67680 } else if (specifier == "millennium" || specifier == "mil" || specifier == "millenniums" ||
67681 specifier == "millennia" || specifier == "mils" || specifier == "millenium") {
67682 result = DatePartSpecifier::MILLENNIUM;
67683 } else if (specifier == "microseconds" || specifier == "microsecond" || specifier == "us" || specifier == "usec" ||
67684 specifier == "usecs" || specifier == "usecond" || specifier == "useconds") {
67685 result = DatePartSpecifier::MICROSECONDS;
67686 } else if (specifier == "milliseconds" || specifier == "millisecond" || specifier == "ms" || specifier == "msec" ||
67687 specifier == "msecs" || specifier == "msecond" || specifier == "mseconds") {
67688 result = DatePartSpecifier::MILLISECONDS;
67689 } else if (specifier == "second" || specifier == "sec" || specifier == "seconds" || specifier == "secs" ||
67690 specifier == "s") {
67691 result = DatePartSpecifier::SECOND;
67692 } else if (specifier == "minute" || specifier == "min" || specifier == "minutes" || specifier == "mins" ||
67693 specifier == "m") {
67694 result = DatePartSpecifier::MINUTE;
67695 } else if (specifier == "hour" || specifier == "hr" || specifier == "hours" || specifier == "hrs" ||
67696 specifier == "h") {
67697 result = DatePartSpecifier::HOUR;
67698 } else if (specifier == "epoch") {
67699 // seconds since 1970-01-01
67700 result = DatePartSpecifier::EPOCH;
67701 } else if (specifier == "dow" || specifier == "dayofweek" || specifier == "weekday") {
67702 // day of the week (Sunday = 0, Saturday = 6)
67703 result = DatePartSpecifier::DOW;
67704 } else if (specifier == "isodow") {
67705 // isodow (Monday = 1, Sunday = 7)
67706 result = DatePartSpecifier::ISODOW;
67707 } else if (specifier == "week" || specifier == "weeks" || specifier == "w" || specifier == "weekofyear") {
67708 // ISO week number
67709 result = DatePartSpecifier::WEEK;
67710 } else if (specifier == "doy" || specifier == "dayofyear") {
67711 // day of the year (1-365/366)
67712 result = DatePartSpecifier::DOY;
67713 } else if (specifier == "quarter" || specifier == "quarters") {
67714 // quarter of the year (1-4)
67715 result = DatePartSpecifier::QUARTER;
67716 } else if (specifier == "yearweek") {
67717 // Combined isoyear and isoweek YYYYWW
67718 result = DatePartSpecifier::YEARWEEK;
67719 } else if (specifier == "isoyear") {
67720 // ISO year (first week of the year may be in previous year)
67721 result = DatePartSpecifier::ISOYEAR;
67722 } else if (specifier == "era") {
67723 result = DatePartSpecifier::ERA;
67724 } else if (specifier == "timezone") {
67725 result = DatePartSpecifier::TIMEZONE;
67726 } else if (specifier == "timezone_hour") {
67727 result = DatePartSpecifier::TIMEZONE_HOUR;
67728 } else if (specifier == "timezone_minute") {
67729 result = DatePartSpecifier::TIMEZONE_MINUTE;
67730 } else if (specifier == "julian" || specifier == "jd") {
67731 result = DatePartSpecifier::JULIAN_DAY;
67732 } else {
67733 return false;
67734 }
67735 return true;
67736}

◆ GetDatePartSpecifier()

DatePartSpecifier duckdb::GetDatePartSpecifier ( const string &  specifier)
67738 {
67739 DatePartSpecifier result;
67740 if (!TryGetDatePartSpecifier(specifier, result)) {
67741 throw ConversionException("extract specifier \"%s\" not recognized", specifier);
67742 }
67743 return result;
67744}
Definition duckdb.cpp:31174

◆ IntegerCastLoop()

template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation, char decimal_separator = '.'>
static bool duckdb::IntegerCastLoop ( const char buf,
idx_t  len,
T &  result,
bool  strict 
)
static
54355 {
54357 if (NEGATIVE) {
54358 start_pos = 1;
54359 } else {
54360 if (*buf == '+') {
54361 if (strict) {
54362 // leading plus is not allowed in strict mode
54363 return false;
54364 }
54365 start_pos = 1;
54366 } else {
54367 start_pos = 0;
54368 }
54369 }
54370 idx_t pos = start_pos;
54371 while (pos < len) {
54372 if (!StringUtil::CharacterIsDigit(buf[pos])) {
54373 // not a digit!
54374 if (buf[pos] == decimal_separator) {
54375 if (strict) {
54376 return false;
54377 }
54378 bool number_before_period = pos > start_pos;
54379 // decimal point: we accept decimal values for integers as well
54380 // we just truncate them
54381 // make sure everything after the period is a number
54382 pos++;
54383 idx_t start_digit = pos;
54384 while (pos < len) {
54385 if (!StringUtil::CharacterIsDigit(buf[pos])) {
54386 break;
54387 }
54388 if (!OP::template HandleDecimal<T, NEGATIVE, ALLOW_EXPONENT>(
54389 result, UnsafeNumericCast<uint8_t>(buf[pos] - '0'))) {
54390 return false;
54391 }
54392 pos++;
54393
54394 if (pos != len && buf[pos] == '_') {
54395 // Skip one underscore if it is not the last character and followed by a digit
54396 pos++;
54397 if (pos == len || !StringUtil::CharacterIsDigit(buf[pos])) {
54398 return false;
54399 }
54400 }
54401 }
54402 // make sure there is either (1) one number after the period, or (2) one number before the period
54403 // i.e. we accept "1." and ".1" as valid numbers, but not "."
54404 if (!(number_before_period || pos > start_digit)) {
54405 return false;
54406 }
54407 if (pos >= len) {
54408 break;
54409 }
54410 }
54411 if (StringUtil::CharacterIsSpace(buf[pos])) {
54412 // skip any trailing spaces
54413 while (++pos < len) {
54414 if (!StringUtil::CharacterIsSpace(buf[pos])) {
54415 return false;
54416 }
54417 }
54418 break;
54419 }
54420 if (ALLOW_EXPONENT) {
54421 if (buf[pos] == 'e' || buf[pos] == 'E') {
54422 if (strict) {
54423 return false;
54424 }
54425 if (pos == start_pos) {
54426 return false;
54427 }
54428 pos++;
54429 if (pos >= len) {
54430 return false;
54431 }
54432 using ExponentData = IntegerCastData<int16_t>;
54433 ExponentData exponent {};
54434 int negative = buf[pos] == '-';
54435 if (negative) {
54436 if (!IntegerCastLoop<ExponentData, true, false, IntegerCastOperation, decimal_separator>(
54437 buf + pos, len - pos, exponent, strict)) {
54438 return false;
54439 }
54440 } else {
54441 if (!IntegerCastLoop<ExponentData, false, false, IntegerCastOperation, decimal_separator>(
54442 buf + pos, len - pos, exponent, strict)) {
54443 return false;
54444 }
54445 }
54446 return OP::template HandleExponent<T, NEGATIVE>(result, exponent.result);
54447 }
54448 }
54449 return false;
54450 }
54451 auto digit = UnsafeNumericCast<uint8_t>(buf[pos++] - '0');
54452 if (!OP::template HandleDigit<T, NEGATIVE>(result, digit)) {
54453 return false;
54454 }
54455
54456 if (pos != len && buf[pos] == '_' && !strict) {
54457 // Skip one underscore if it is not the last character and followed by a digit
54458 pos++;
54459 if (pos == len || !StringUtil::CharacterIsDigit(buf[pos])) {
54460 return false;
54461 }
54462 }
54463 }
54464 if (!OP::template Finalize<T, NEGATIVE>(result)) {
54465 return false;
54466 }
54467 return pos > start_pos;
54468}

◆ IntegerHexCastLoop()

template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation>
static bool duckdb::IntegerHexCastLoop ( const char buf,
idx_t  len,
T &  result,
bool  strict 
)
static
54471 {
54472 if (ALLOW_EXPONENT || NEGATIVE) {
54473 return false;
54474 }
54475 idx_t start_pos = 1;
54476 idx_t pos = start_pos;
54477 char current_char;
54478 while (pos < len) {
54479 current_char = StringUtil::CharacterToLower(buf[pos]);
54480 if (!StringUtil::CharacterIsHex(current_char)) {
54481 return false;
54482 }
54483 uint8_t digit;
54484 if (current_char >= 'a') {
54485 digit = UnsafeNumericCast<uint8_t>(current_char - 'a' + 10);
54486 } else {
54487 digit = UnsafeNumericCast<uint8_t>(current_char - '0');
54488 }
54489 pos++;
54490
54491 if (pos != len && buf[pos] == '_') {
54492 // Skip one underscore if it is not the last character and followed by a hex
54493 pos++;
54494 if (pos == len || !StringUtil::CharacterIsHex(buf[pos])) {
54495 return false;
54496 }
54497 }
54498
54499 if (!OP::template HandleHexDigit<T, NEGATIVE>(result, digit)) {
54500 return false;
54501 }
54502 }
54503 if (!OP::template Finalize<T, NEGATIVE>(result)) {
54504 return false;
54505 }
54506 return pos > start_pos;
54507}

◆ IntegerBinaryCastLoop()

template<class T , bool NEGATIVE, bool ALLOW_EXPONENT, class OP = IntegerCastOperation>
static bool duckdb::IntegerBinaryCastLoop ( const char buf,
idx_t  len,
T &  result,
bool  strict 
)
static
54510 {
54511 if (ALLOW_EXPONENT || NEGATIVE) {
54512 return false;
54513 }
54514 idx_t start_pos = 1;
54515 idx_t pos = start_pos;
54516 uint8_t digit;
54517 char current_char;
54518 while (pos < len) {
54519 current_char = buf[pos];
54520 if (current_char == '0') {
54521 digit = 0;
54522 } else if (current_char == '1') {
54523 digit = 1;
54524 } else {
54525 return false;
54526 }
54527 pos++;
54528 if (pos != len && buf[pos] == '_') {
54529 // Skip one underscore if it is not the last character and followed by a digit
54530 pos++;
54531 if (pos == len || (buf[pos] != '0' && buf[pos] != '1')) {
54532 return false;
54533 }
54534 }
54535
54536 if (!OP::template HandleBinaryDigit<T, NEGATIVE>(result, digit)) {
54537 return false;
54538 }
54539 }
54540 if (!OP::template Finalize<T, NEGATIVE>(result)) {
54541 return false;
54542 }
54543 return pos > start_pos;
54544}

◆ TryIntegerCast()

template<class T , bool IS_SIGNED = true, bool ALLOW_EXPONENT = true, class OP = IntegerCastOperation, bool ZERO_INITIALIZE = true, char decimal_separator = '.'>
static bool duckdb::TryIntegerCast ( const char buf,
idx_t  len,
T &  result,
bool  strict 
)
static
54548 {
54549 // skip any spaces at the start
54550 while (len > 0 && StringUtil::CharacterIsSpace(*buf)) {
54551 buf++;
54552 len--;
54553 }
54554 if (len == 0) {
54555 return false;
54556 }
54557 if (ZERO_INITIALIZE) {
54558 memset(&result, 0, sizeof(T));
54559 }
54560 // if the number is negative, we set the negative flag and skip the negative sign
54561 if (*buf == '-') {
54562 if (!IS_SIGNED) {
54563 // Need to check if its not -0
54564 idx_t pos = 1;
54565 while (pos < len) {
54566 if (buf[pos++] != '0') {
54567 return false;
54568 }
54569 }
54570 }
54571 return IntegerCastLoop<T, true, ALLOW_EXPONENT, OP, decimal_separator>(buf, len, result, strict);
54572 }
54573 if (len > 1 && *buf == '0') {
54574 if (buf[1] == 'x' || buf[1] == 'X') {
54575 // If it starts with 0x or 0X, we parse it as a hex value
54576 buf++;
54577 len--;
54578 return IntegerHexCastLoop<T, false, false, OP>(buf, len, result, strict);
54579 } else if (buf[1] == 'b' || buf[1] == 'B') {
54580 // If it starts with 0b or 0B, we parse it as a binary value
54581 buf++;
54582 len--;
54583 return IntegerBinaryCastLoop<T, false, false, OP>(buf, len, result, strict);
54584 } else if (strict && StringUtil::CharacterIsDigit(buf[1])) {
54585 // leading zeros are not allowed in strict mode
54586 return false;
54587 }
54588 }
54589 return IntegerCastLoop<T, false, ALLOW_EXPONENT, OP, decimal_separator>(buf, len, result, strict);
54590}

◆ TrySimpleIntegerCast()

template<typename T , bool IS_SIGNED = true>
static bool duckdb::TrySimpleIntegerCast ( const char buf,
idx_t  len,
T &  result,
bool  strict 
)
inlinestatic
54593 {
54595 if (TryIntegerCast<IntegerCastData<T>, IS_SIGNED, false, IntegerCastOperation>(buf, len, simple_data, strict)) {
54596 result = (T)simple_data.result;
54597 return true;
54598 }
54599
54600 // Simple integer cast failed, try again with decimals/exponents included
54601 // FIXME: This could definitely be improved as some extra work is being done here. It is more important that
54602 // "normal" integers (without exponent/decimals) are still being parsed quickly.
54603 IntegerDecimalCastData<T> cast_data;
54604 if (TryIntegerCast<IntegerDecimalCastData<T>, IS_SIGNED, true, IntegerDecimalCastOperation>(buf, len, cast_data,
54605 strict)) {
54606 result = (T)cast_data.result;
54607 return true;
54608 }
54609 return false;
54610}
Definition duckdb.cpp:54172

◆ TryDecimalStringCast() [1/3]

template<class T , char decimal_separator = '.'>
bool duckdb::TryDecimalStringCast ( string_t  input,
T &  result,
CastParameters parameters,
uint8_t  width,
uint8_t  scale 
)
55262 {
55263 return TryDecimalStringCast<T, decimal_separator>(input.GetData(), input.GetSize(), result, parameters, width,
55264 scale);
55265}

◆ TryDecimalStringCast() [2/3]

template<class T , char decimal_separator = '.'>
bool duckdb::TryDecimalStringCast ( const char string_ptr,
idx_t  string_size,
T &  result,
CastParameters parameters,
uint8_t  width,
uint8_t  scale 
)
55269 {
55270 DecimalCastData<T> state;
55271 state.result = 0;
55272 state.width = width;
55273 state.scale = scale;
55274 state.digit_count = 0;
55275 state.decimal_count = 0;
55276 state.excessive_decimals = 0;
55277 state.exponent_type = ExponentType::NONE;
55278 state.round_set = false;
55279 state.should_round = false;
55281 if (!TryIntegerCast<DecimalCastData<T>, true, true, DecimalCastOperation, false, decimal_separator>(
55282 string_ptr, string_size, state, false)) {
55284 string error = StringUtil::Format("Could not convert string \"%s\" to DECIMAL(%d,%d)", value.GetString(),
55285 (int)width, (int)scale);
55286 HandleCastError::AssignError(error, parameters);
55287 return false;
55288 }
55289 result = state.result;
55290 return true;
55291}
Definition duckdb.cpp:55099
Definition duckdb.cpp:55067

◆ TryDecimalStringCast() [3/3]

template<class T , char decimal_separator = '.'>
bool duckdb::TryDecimalStringCast ( const char string_ptr,
idx_t  string_size,
T &  result,
uint8_t  width,
uint8_t  scale 
)
55294 {
55295 DecimalCastData<T> state;
55296 state.result = 0;
55297 state.width = width;
55298 state.scale = scale;
55299 state.digit_count = 0;
55300 state.decimal_count = 0;
55301 state.excessive_decimals = 0;
55302 state.exponent_type = ExponentType::NONE;
55303 state.round_set = false;
55304 state.should_round = false;
55306 if (!TryIntegerCast<DecimalCastData<T>, true, true, DecimalCastOperation, false, decimal_separator>(
55307 string_ptr, string_size, state, false)) {
55308 return false;
55309 }
55310 result = state.result;
55311 return true;
55312}

◆ SortKeyLessThan()

template<idx_t REMAINING>
static bool duckdb::SortKeyLessThan ( const uint64_t *const lhs,
const uint64_t *const rhs 
)
static
55400 {
55401 return (*lhs < *rhs) || ((*lhs == *rhs) && SortKeyLessThan<REMAINING - 1>(lhs + 1, rhs + 1));
55402}

◆ SortKeyLessThan< 1 >()

template<>
bool duckdb::SortKeyLessThan< 1 > ( const uint64_t *const lhs,
const uint64_t *const rhs 
)
inline
55405 {
55406 return *lhs < *rhs;
55407}

◆ GetARTConflictTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetARTConflictTypeValues ( )
private
61951 {
61952 static constexpr StringUtil::EnumStringLiteral values[] {
61953 { static_cast<uint32_t>(ARTConflictType::NO_CONFLICT), "NO_CONFLICT" },
61954 { static_cast<uint32_t>(ARTConflictType::CONSTRAINT), "CONSTRAINT" },
61955 { static_cast<uint32_t>(ARTConflictType::TRANSACTION), "TRANSACTION" }
61956 };
61957 return values;
61958}
Definition duckdb.hpp:4106

◆ GetARTHandlingResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetARTHandlingResultValues ( )
private
61970 {
61971 static constexpr StringUtil::EnumStringLiteral values[] {
61972 { static_cast<uint32_t>(ARTHandlingResult::CONTINUE), "CONTINUE" },
61973 { static_cast<uint32_t>(ARTHandlingResult::SKIP), "SKIP" },
61974 { static_cast<uint32_t>(ARTHandlingResult::YIELD), "YIELD" },
61975 { static_cast<uint32_t>(ARTHandlingResult::NONE), "NONE" }
61976 };
61977 return values;
61978}

◆ GetARTScanHandlingValues()

const StringUtil::EnumStringLiteral * duckdb::GetARTScanHandlingValues ( )
private
61990 {
61991 static constexpr StringUtil::EnumStringLiteral values[] {
61992 { static_cast<uint32_t>(ARTScanHandling::EMPLACE), "EMPLACE" },
61993 { static_cast<uint32_t>(ARTScanHandling::POP), "POP" }
61994 };
61995 return values;
61996}

◆ GetARTScanResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetARTScanResultValues ( )
private
62008 {
62009 static constexpr StringUtil::EnumStringLiteral values[] {
62010 { static_cast<uint32_t>(ARTScanResult::COMPLETED), "COMPLETED" },
62011 { static_cast<uint32_t>(ARTScanResult::PAUSED), "PAUSED" }
62012 };
62013 return values;
62014}

◆ GetAccessModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAccessModeValues ( )
private
62026 {
62027 static constexpr StringUtil::EnumStringLiteral values[] {
62028 { static_cast<uint32_t>(AccessMode::UNDEFINED), "UNDEFINED" },
62029 { static_cast<uint32_t>(AccessMode::AUTOMATIC), "AUTOMATIC" },
62030 { static_cast<uint32_t>(AccessMode::READ_ONLY), "READ_ONLY" },
62031 { static_cast<uint32_t>(AccessMode::READ_WRITE), "READ_WRITE" }
62032 };
62033 return values;
62034}

◆ GetAggregateCombineTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAggregateCombineTypeValues ( )
private
62046 {
62047 static constexpr StringUtil::EnumStringLiteral values[] {
62048 { static_cast<uint32_t>(AggregateCombineType::PRESERVE_INPUT), "PRESERVE_INPUT" },
62049 { static_cast<uint32_t>(AggregateCombineType::ALLOW_DESTRUCTIVE), "ALLOW_DESTRUCTIVE" }
62050 };
62051 return values;
62052}

◆ GetAggregateDistinctDependentValues()

const StringUtil::EnumStringLiteral * duckdb::GetAggregateDistinctDependentValues ( )
private
62064 {
62065 static constexpr StringUtil::EnumStringLiteral values[] {
62066 { static_cast<uint32_t>(AggregateDistinctDependent::DISTINCT_DEPENDENT), "DISTINCT_DEPENDENT" },
62067 { static_cast<uint32_t>(AggregateDistinctDependent::NOT_DISTINCT_DEPENDENT), "NOT_DISTINCT_DEPENDENT" }
62068 };
62069 return values;
62070}

◆ GetAggregateHandlingValues()

const StringUtil::EnumStringLiteral * duckdb::GetAggregateHandlingValues ( )
private
62082 {
62083 static constexpr StringUtil::EnumStringLiteral values[] {
62084 { static_cast<uint32_t>(AggregateHandling::STANDARD_HANDLING), "STANDARD_HANDLING" },
62085 { static_cast<uint32_t>(AggregateHandling::NO_AGGREGATES_ALLOWED), "NO_AGGREGATES_ALLOWED" },
62086 { static_cast<uint32_t>(AggregateHandling::FORCE_AGGREGATES), "FORCE_AGGREGATES" }
62087 };
62088 return values;
62089}

◆ GetAggregateOrderDependentValues()

const StringUtil::EnumStringLiteral * duckdb::GetAggregateOrderDependentValues ( )
private
62101 {
62102 static constexpr StringUtil::EnumStringLiteral values[] {
62103 { static_cast<uint32_t>(AggregateOrderDependent::ORDER_DEPENDENT), "ORDER_DEPENDENT" },
62104 { static_cast<uint32_t>(AggregateOrderDependent::NOT_ORDER_DEPENDENT), "NOT_ORDER_DEPENDENT" }
62105 };
62106 return values;
62107}

◆ GetAggregateTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAggregateTypeValues ( )
private
62119 {
62120 static constexpr StringUtil::EnumStringLiteral values[] {
62121 { static_cast<uint32_t>(AggregateType::NON_DISTINCT), "NON_DISTINCT" },
62122 { static_cast<uint32_t>(AggregateType::DISTINCT), "DISTINCT" }
62123 };
62124 return values;
62125}

◆ GetAllowParserOverrideValues()

const StringUtil::EnumStringLiteral * duckdb::GetAllowParserOverrideValues ( )
private
62137 {
62138 static constexpr StringUtil::EnumStringLiteral values[] {
62139 { static_cast<uint32_t>(AllowParserOverride::DEFAULT_OVERRIDE), "DEFAULT" },
62140 { static_cast<uint32_t>(AllowParserOverride::FALLBACK_OVERRIDE), "FALLBACK" },
62141 { static_cast<uint32_t>(AllowParserOverride::STRICT_OVERRIDE), "STRICT" }
62142 };
62143 return values;
62144}

◆ GetAlterDatabaseTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterDatabaseTypeValues ( )
private
62156 {
62157 static constexpr StringUtil::EnumStringLiteral values[] {
62158 { static_cast<uint32_t>(AlterDatabaseType::RENAME_DATABASE), "RENAME_DATABASE" }
62159 };
62160 return values;
62161}

◆ GetAlterForeignKeyTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterForeignKeyTypeValues ( )
private
62173 {
62174 static constexpr StringUtil::EnumStringLiteral values[] {
62175 { static_cast<uint32_t>(AlterForeignKeyType::AFT_ADD), "AFT_ADD" },
62176 { static_cast<uint32_t>(AlterForeignKeyType::AFT_DELETE), "AFT_DELETE" }
62177 };
62178 return values;
62179}

◆ GetAlterScalarFunctionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterScalarFunctionTypeValues ( )
private
62191 {
62192 static constexpr StringUtil::EnumStringLiteral values[] {
62193 { static_cast<uint32_t>(AlterScalarFunctionType::INVALID), "INVALID" },
62194 { static_cast<uint32_t>(AlterScalarFunctionType::ADD_FUNCTION_OVERLOADS), "ADD_FUNCTION_OVERLOADS" }
62195 };
62196 return values;
62197}

◆ GetAlterTableFunctionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterTableFunctionTypeValues ( )
private
62209 {
62210 static constexpr StringUtil::EnumStringLiteral values[] {
62211 { static_cast<uint32_t>(AlterTableFunctionType::INVALID), "INVALID" },
62212 { static_cast<uint32_t>(AlterTableFunctionType::ADD_FUNCTION_OVERLOADS), "ADD_FUNCTION_OVERLOADS" }
62213 };
62214 return values;
62215}

◆ GetAlterTableTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterTableTypeValues ( )
private
62227 {
62228 static constexpr StringUtil::EnumStringLiteral values[] {
62229 { static_cast<uint32_t>(AlterTableType::INVALID), "INVALID" },
62230 { static_cast<uint32_t>(AlterTableType::RENAME_COLUMN), "RENAME_COLUMN" },
62231 { static_cast<uint32_t>(AlterTableType::RENAME_TABLE), "RENAME_TABLE" },
62232 { static_cast<uint32_t>(AlterTableType::ADD_COLUMN), "ADD_COLUMN" },
62233 { static_cast<uint32_t>(AlterTableType::REMOVE_COLUMN), "REMOVE_COLUMN" },
62234 { static_cast<uint32_t>(AlterTableType::ALTER_COLUMN_TYPE), "ALTER_COLUMN_TYPE" },
62235 { static_cast<uint32_t>(AlterTableType::SET_DEFAULT), "SET_DEFAULT" },
62236 { static_cast<uint32_t>(AlterTableType::FOREIGN_KEY_CONSTRAINT), "FOREIGN_KEY_CONSTRAINT" },
62237 { static_cast<uint32_t>(AlterTableType::SET_NOT_NULL), "SET_NOT_NULL" },
62238 { static_cast<uint32_t>(AlterTableType::DROP_NOT_NULL), "DROP_NOT_NULL" },
62239 { static_cast<uint32_t>(AlterTableType::SET_COLUMN_COMMENT), "SET_COLUMN_COMMENT" },
62240 { static_cast<uint32_t>(AlterTableType::ADD_CONSTRAINT), "ADD_CONSTRAINT" },
62241 { static_cast<uint32_t>(AlterTableType::SET_PARTITIONED_BY), "SET_PARTITIONED_BY" },
62242 { static_cast<uint32_t>(AlterTableType::SET_SORTED_BY), "SET_SORTED_BY" },
62243 { static_cast<uint32_t>(AlterTableType::ADD_FIELD), "ADD_FIELD" },
62244 { static_cast<uint32_t>(AlterTableType::REMOVE_FIELD), "REMOVE_FIELD" },
62245 { static_cast<uint32_t>(AlterTableType::RENAME_FIELD), "RENAME_FIELD" },
62246 { static_cast<uint32_t>(AlterTableType::SET_TABLE_OPTIONS), "SET_TABLE_OPTIONS" },
62247 { static_cast<uint32_t>(AlterTableType::RESET_TABLE_OPTIONS), "RESET_TABLE_OPTIONS" }
62248 };
62249 return values;
62250}

◆ GetAlterTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterTypeValues ( )
private
62262 {
62263 static constexpr StringUtil::EnumStringLiteral values[] {
62264 { static_cast<uint32_t>(AlterType::INVALID), "INVALID" },
62265 { static_cast<uint32_t>(AlterType::ALTER_TABLE), "ALTER_TABLE" },
62266 { static_cast<uint32_t>(AlterType::ALTER_VIEW), "ALTER_VIEW" },
62267 { static_cast<uint32_t>(AlterType::ALTER_SEQUENCE), "ALTER_SEQUENCE" },
62268 { static_cast<uint32_t>(AlterType::CHANGE_OWNERSHIP), "CHANGE_OWNERSHIP" },
62269 { static_cast<uint32_t>(AlterType::ALTER_SCALAR_FUNCTION), "ALTER_SCALAR_FUNCTION" },
62270 { static_cast<uint32_t>(AlterType::ALTER_TABLE_FUNCTION), "ALTER_TABLE_FUNCTION" },
62271 { static_cast<uint32_t>(AlterType::SET_COMMENT), "SET_COMMENT" },
62272 { static_cast<uint32_t>(AlterType::SET_COLUMN_COMMENT), "SET_COLUMN_COMMENT" },
62273 { static_cast<uint32_t>(AlterType::ALTER_DATABASE), "ALTER_DATABASE" }
62274 };
62275 return values;
62276}

◆ GetAlterViewTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAlterViewTypeValues ( )
private
62288 {
62289 static constexpr StringUtil::EnumStringLiteral values[] {
62290 { static_cast<uint32_t>(AlterViewType::INVALID), "INVALID" },
62291 { static_cast<uint32_t>(AlterViewType::RENAME_VIEW), "RENAME_VIEW" }
62292 };
62293 return values;
62294}

◆ GetAppenderTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAppenderTypeValues ( )
private
62306 {
62307 static constexpr StringUtil::EnumStringLiteral values[] {
62308 { static_cast<uint32_t>(AppenderType::LOGICAL), "LOGICAL" },
62309 { static_cast<uint32_t>(AppenderType::PHYSICAL), "PHYSICAL" }
62310 };
62311 return values;
62312}

◆ GetArrowArrayPhysicalTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowArrayPhysicalTypeValues ( )
private
62324 {
62325 static constexpr StringUtil::EnumStringLiteral values[] {
62326 { static_cast<uint32_t>(ArrowArrayPhysicalType::DICTIONARY_ENCODED), "DICTIONARY_ENCODED" },
62327 { static_cast<uint32_t>(ArrowArrayPhysicalType::RUN_END_ENCODED), "RUN_END_ENCODED" },
62328 { static_cast<uint32_t>(ArrowArrayPhysicalType::DEFAULT), "DEFAULT" }
62329 };
62330 return values;
62331}

◆ GetArrowDateTimeTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowDateTimeTypeValues ( )
private
62343 {
62344 static constexpr StringUtil::EnumStringLiteral values[] {
62345 { static_cast<uint32_t>(ArrowDateTimeType::MILLISECONDS), "MILLISECONDS" },
62346 { static_cast<uint32_t>(ArrowDateTimeType::MICROSECONDS), "MICROSECONDS" },
62347 { static_cast<uint32_t>(ArrowDateTimeType::NANOSECONDS), "NANOSECONDS" },
62348 { static_cast<uint32_t>(ArrowDateTimeType::SECONDS), "SECONDS" },
62349 { static_cast<uint32_t>(ArrowDateTimeType::DAYS), "DAYS" },
62350 { static_cast<uint32_t>(ArrowDateTimeType::MONTHS), "MONTHS" },
62351 { static_cast<uint32_t>(ArrowDateTimeType::MONTH_DAY_NANO), "MONTH_DAY_NANO" }
62352 };
62353 return values;
62354}

◆ GetArrowFormatVersionValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowFormatVersionValues ( )
private
62366 {
62367 static constexpr StringUtil::EnumStringLiteral values[] {
62368 { static_cast<uint32_t>(ArrowFormatVersion::V1_0), "1.0" },
62369 { static_cast<uint32_t>(ArrowFormatVersion::V1_1), "1.1" },
62370 { static_cast<uint32_t>(ArrowFormatVersion::V1_2), "1.2" },
62371 { static_cast<uint32_t>(ArrowFormatVersion::V1_3), "1.3" },
62372 { static_cast<uint32_t>(ArrowFormatVersion::V1_4), "1.4" },
62373 { static_cast<uint32_t>(ArrowFormatVersion::V1_5), "1.5" }
62374 };
62375 return values;
62376}

◆ GetArrowOffsetSizeValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowOffsetSizeValues ( )
private
62388 {
62389 static constexpr StringUtil::EnumStringLiteral values[] {
62390 { static_cast<uint32_t>(ArrowOffsetSize::REGULAR), "REGULAR" },
62391 { static_cast<uint32_t>(ArrowOffsetSize::LARGE), "LARGE" }
62392 };
62393 return values;
62394}

◆ GetArrowTypeInfoTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowTypeInfoTypeValues ( )
private
62406 {
62407 static constexpr StringUtil::EnumStringLiteral values[] {
62408 { static_cast<uint32_t>(ArrowTypeInfoType::LIST), "LIST" },
62409 { static_cast<uint32_t>(ArrowTypeInfoType::STRUCT), "STRUCT" },
62410 { static_cast<uint32_t>(ArrowTypeInfoType::DATE_TIME), "DATE_TIME" },
62411 { static_cast<uint32_t>(ArrowTypeInfoType::STRING), "STRING" },
62412 { static_cast<uint32_t>(ArrowTypeInfoType::ARRAY), "ARRAY" },
62413 { static_cast<uint32_t>(ArrowTypeInfoType::DECIMAL), "DECIMAL" }
62414 };
62415 return values;
62416}

◆ GetArrowVariableSizeTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetArrowVariableSizeTypeValues ( )
private
62428 {
62429 static constexpr StringUtil::EnumStringLiteral values[] {
62430 { static_cast<uint32_t>(ArrowVariableSizeType::NORMAL), "NORMAL" },
62431 { static_cast<uint32_t>(ArrowVariableSizeType::FIXED_SIZE), "FIXED_SIZE" },
62432 { static_cast<uint32_t>(ArrowVariableSizeType::SUPER_SIZE), "SUPER_SIZE" },
62433 { static_cast<uint32_t>(ArrowVariableSizeType::VIEW), "VIEW" }
62434 };
62435 return values;
62436}

◆ GetAsyncResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAsyncResultTypeValues ( )
private
62448 {
62449 static constexpr StringUtil::EnumStringLiteral values[] {
62450 { static_cast<uint32_t>(AsyncResultType::INVALID), "INVALID" },
62451 { static_cast<uint32_t>(AsyncResultType::IMPLICIT), "IMPLICIT" },
62452 { static_cast<uint32_t>(AsyncResultType::HAVE_MORE_OUTPUT), "HAVE_MORE_OUTPUT" },
62453 { static_cast<uint32_t>(AsyncResultType::FINISHED), "FINISHED" },
62454 { static_cast<uint32_t>(AsyncResultType::BLOCKED), "BLOCKED" }
62455 };
62456 return values;
62457}

◆ GetAsyncResultsExecutionModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetAsyncResultsExecutionModeValues ( )
private
62469 {
62470 static constexpr StringUtil::EnumStringLiteral values[] {
62471 { static_cast<uint32_t>(AsyncResultsExecutionMode::SYNCHRONOUS), "SYNCHRONOUS" },
62472 { static_cast<uint32_t>(AsyncResultsExecutionMode::TASK_EXECUTOR), "TASK_EXECUTOR" }
62473 };
62474 return values;
62475}

◆ GetBaseColumnPrunerModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetBaseColumnPrunerModeValues ( )
private
62487 {
62488 static constexpr StringUtil::EnumStringLiteral values[] {
62489 { static_cast<uint32_t>(BaseColumnPrunerMode::DEFAULT), "DEFAULT" },
62490 { static_cast<uint32_t>(BaseColumnPrunerMode::DISABLE_PUSHDOWN_EXTRACT), "DISABLE_PUSHDOWN_EXTRACT" }
62491 };
62492 return values;
62493}

◆ GetBinderTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetBinderTypeValues ( )
private
62505 {
62506 static constexpr StringUtil::EnumStringLiteral values[] {
62507 { static_cast<uint32_t>(BinderType::REGULAR_BINDER), "REGULAR_BINDER" },
62508 { static_cast<uint32_t>(BinderType::VIEW_BINDER), "VIEW_BINDER" }
62509 };
62510 return values;
62511}

◆ GetBindingModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetBindingModeValues ( )
private
62523 {
62524 static constexpr StringUtil::EnumStringLiteral values[] {
62525 { static_cast<uint32_t>(BindingMode::STANDARD_BINDING), "STANDARD_BINDING" },
62526 { static_cast<uint32_t>(BindingMode::EXTRACT_NAMES), "EXTRACT_NAMES" },
62527 { static_cast<uint32_t>(BindingMode::EXTRACT_REPLACEMENT_SCANS), "EXTRACT_REPLACEMENT_SCANS" },
62528 { static_cast<uint32_t>(BindingMode::EXTRACT_QUALIFIED_NAMES), "EXTRACT_QUALIFIED_NAMES" }
62529 };
62530 return values;
62531}

◆ GetBitpackingModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetBitpackingModeValues ( )
private
62543 {
62544 static constexpr StringUtil::EnumStringLiteral values[] {
62545 { static_cast<uint32_t>(BitpackingMode::INVALID), "INVALID" },
62546 { static_cast<uint32_t>(BitpackingMode::AUTO), "AUTO" },
62547 { static_cast<uint32_t>(BitpackingMode::CONSTANT), "CONSTANT" },
62548 { static_cast<uint32_t>(BitpackingMode::CONSTANT_DELTA), "CONSTANT_DELTA" },
62549 { static_cast<uint32_t>(BitpackingMode::DELTA_FOR), "DELTA_FOR" },
62550 { static_cast<uint32_t>(BitpackingMode::FOR), "FOR" }
62551 };
62552 return values;
62553}

◆ GetBlockIteratorStateTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetBlockIteratorStateTypeValues ( )
private
62565 {
62566 static constexpr StringUtil::EnumStringLiteral values[] {
62567 { static_cast<uint32_t>(BlockIteratorStateType::IN_MEMORY), "IN_MEMORY" },
62568 { static_cast<uint32_t>(BlockIteratorStateType::EXTERNAL), "EXTERNAL" }
62569 };
62570 return values;
62571}

◆ GetBlockStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetBlockStateValues ( )
private
62583 {
62584 static constexpr StringUtil::EnumStringLiteral values[] {
62585 { static_cast<uint32_t>(BlockState::BLOCK_UNLOADED), "BLOCK_UNLOADED" },
62586 { static_cast<uint32_t>(BlockState::BLOCK_LOADED), "BLOCK_LOADED" }
62587 };
62588 return values;
62589}

◆ GetBufferedIndexReplayValues()

const StringUtil::EnumStringLiteral * duckdb::GetBufferedIndexReplayValues ( )
private
62601 {
62602 static constexpr StringUtil::EnumStringLiteral values[] {
62603 { static_cast<uint32_t>(BufferedIndexReplay::INSERT_ENTRY), "INSERT_ENTRY" },
62604 { static_cast<uint32_t>(BufferedIndexReplay::DEL_ENTRY), "DEL_ENTRY" }
62605 };
62606 return values;
62607}

◆ GetCAPIResultSetTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCAPIResultSetTypeValues ( )
private
62619 {
62620 static constexpr StringUtil::EnumStringLiteral values[] {
62621 { static_cast<uint32_t>(CAPIResultSetType::CAPI_RESULT_TYPE_NONE), "CAPI_RESULT_TYPE_NONE" },
62622 { static_cast<uint32_t>(CAPIResultSetType::CAPI_RESULT_TYPE_MATERIALIZED), "CAPI_RESULT_TYPE_MATERIALIZED" },
62623 { static_cast<uint32_t>(CAPIResultSetType::CAPI_RESULT_TYPE_STREAMING), "CAPI_RESULT_TYPE_STREAMING" },
62624 { static_cast<uint32_t>(CAPIResultSetType::CAPI_RESULT_TYPE_DEPRECATED), "CAPI_RESULT_TYPE_DEPRECATED" }
62625 };
62626 return values;
62627}

◆ GetCSVStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetCSVStateValues ( )
private
62639 {
62640 static constexpr StringUtil::EnumStringLiteral values[] {
62641 { static_cast<uint32_t>(CSVState::STANDARD), "STANDARD" },
62642 { static_cast<uint32_t>(CSVState::DELIMITER), "DELIMITER" },
62643 { static_cast<uint32_t>(CSVState::DELIMITER_FIRST_BYTE), "DELIMITER_FIRST_BYTE" },
62644 { static_cast<uint32_t>(CSVState::DELIMITER_SECOND_BYTE), "DELIMITER_SECOND_BYTE" },
62645 { static_cast<uint32_t>(CSVState::DELIMITER_THIRD_BYTE), "DELIMITER_THIRD_BYTE" },
62646 { static_cast<uint32_t>(CSVState::RECORD_SEPARATOR), "RECORD_SEPARATOR" },
62647 { static_cast<uint32_t>(CSVState::CARRIAGE_RETURN), "CARRIAGE_RETURN" },
62648 { static_cast<uint32_t>(CSVState::QUOTED), "QUOTED" },
62649 { static_cast<uint32_t>(CSVState::UNQUOTED), "UNQUOTED" },
62650 { static_cast<uint32_t>(CSVState::ESCAPE), "ESCAPE" },
62651 { static_cast<uint32_t>(CSVState::INVALID), "INVALID" },
62652 { static_cast<uint32_t>(CSVState::NOT_SET), "NOT_SET" },
62653 { static_cast<uint32_t>(CSVState::QUOTED_NEW_LINE), "QUOTED_NEW_LINE" },
62654 { static_cast<uint32_t>(CSVState::EMPTY_SPACE), "EMPTY_SPACE" },
62655 { static_cast<uint32_t>(CSVState::COMMENT), "COMMENT" },
62656 { static_cast<uint32_t>(CSVState::STANDARD_NEWLINE), "STANDARD_NEWLINE" },
62657 { static_cast<uint32_t>(CSVState::UNQUOTED_ESCAPE), "UNQUOTED_ESCAPE" },
62658 { static_cast<uint32_t>(CSVState::ESCAPED_RETURN), "ESCAPED_RETURN" },
62659 { static_cast<uint32_t>(CSVState::MAYBE_QUOTED), "MAYBE_QUOTED" }
62660 };
62661 return values;
62662}

◆ GetCTEMaterializeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCTEMaterializeValues ( )
private
62674 {
62675 static constexpr StringUtil::EnumStringLiteral values[] {
62676 { static_cast<uint32_t>(CTEMaterialize::CTE_MATERIALIZE_DEFAULT), "CTE_MATERIALIZE_DEFAULT" },
62677 { static_cast<uint32_t>(CTEMaterialize::CTE_MATERIALIZE_ALWAYS), "CTE_MATERIALIZE_ALWAYS" },
62678 { static_cast<uint32_t>(CTEMaterialize::CTE_MATERIALIZE_NEVER), "CTE_MATERIALIZE_NEVER" }
62679 };
62680 return values;
62681}

◆ GetCacheValidationModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCacheValidationModeValues ( )
private
62693 {
62694 static constexpr StringUtil::EnumStringLiteral values[] {
62695 { static_cast<uint32_t>(CacheValidationMode::VALIDATE_ALL), "VALIDATE_ALL" },
62696 { static_cast<uint32_t>(CacheValidationMode::VALIDATE_REMOTE), "VALIDATE_REMOTE" },
62697 { static_cast<uint32_t>(CacheValidationMode::NO_VALIDATION), "NO_VALIDATION" }
62698 };
62699 return values;
62700}

◆ GetCachingModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCachingModeValues ( )
private
62712 {
62713 static constexpr StringUtil::EnumStringLiteral values[] {
62714 { static_cast<uint32_t>(CachingMode::ALWAYS_CACHE), "ALWAYS_CACHE" },
62715 { static_cast<uint32_t>(CachingMode::CACHE_REMOTE_ONLY), "CACHE_REMOTE_ONLY" },
62716 { static_cast<uint32_t>(CachingMode::NO_CACHING), "NO_CACHING" }
62717 };
62718 return values;
62719}

◆ GetCatalogLookupBehaviorValues()

const StringUtil::EnumStringLiteral * duckdb::GetCatalogLookupBehaviorValues ( )
private
62731 {
62732 static constexpr StringUtil::EnumStringLiteral values[] {
62733 { static_cast<uint32_t>(CatalogLookupBehavior::STANDARD), "STANDARD" },
62734 { static_cast<uint32_t>(CatalogLookupBehavior::LOWER_PRIORITY), "LOWER_PRIORITY" },
62735 { static_cast<uint32_t>(CatalogLookupBehavior::NEVER_LOOKUP), "NEVER_LOOKUP" }
62736 };
62737 return values;
62738}

◆ GetCatalogTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCatalogTypeValues ( )
private
62750 {
62751 static constexpr StringUtil::EnumStringLiteral values[] {
62752 { static_cast<uint32_t>(CatalogType::INVALID), "INVALID" },
62753 { static_cast<uint32_t>(CatalogType::TABLE_ENTRY), "TABLE_ENTRY" },
62754 { static_cast<uint32_t>(CatalogType::SCHEMA_ENTRY), "SCHEMA_ENTRY" },
62755 { static_cast<uint32_t>(CatalogType::VIEW_ENTRY), "VIEW_ENTRY" },
62756 { static_cast<uint32_t>(CatalogType::INDEX_ENTRY), "INDEX_ENTRY" },
62757 { static_cast<uint32_t>(CatalogType::PREPARED_STATEMENT), "PREPARED_STATEMENT" },
62758 { static_cast<uint32_t>(CatalogType::SEQUENCE_ENTRY), "SEQUENCE_ENTRY" },
62759 { static_cast<uint32_t>(CatalogType::COLLATION_ENTRY), "COLLATION_ENTRY" },
62760 { static_cast<uint32_t>(CatalogType::TYPE_ENTRY), "TYPE_ENTRY" },
62761 { static_cast<uint32_t>(CatalogType::DATABASE_ENTRY), "DATABASE_ENTRY" },
62762 { static_cast<uint32_t>(CatalogType::COORDINATE_SYSTEM_ENTRY), "COORDINATE_SYSTEM_ENTRY" },
62763 { static_cast<uint32_t>(CatalogType::TABLE_FUNCTION_ENTRY), "TABLE_FUNCTION_ENTRY" },
62764 { static_cast<uint32_t>(CatalogType::SCALAR_FUNCTION_ENTRY), "SCALAR_FUNCTION_ENTRY" },
62765 { static_cast<uint32_t>(CatalogType::AGGREGATE_FUNCTION_ENTRY), "AGGREGATE_FUNCTION_ENTRY" },
62766 { static_cast<uint32_t>(CatalogType::PRAGMA_FUNCTION_ENTRY), "PRAGMA_FUNCTION_ENTRY" },
62767 { static_cast<uint32_t>(CatalogType::COPY_FUNCTION_ENTRY), "COPY_FUNCTION_ENTRY" },
62768 { static_cast<uint32_t>(CatalogType::MACRO_ENTRY), "MACRO_ENTRY" },
62769 { static_cast<uint32_t>(CatalogType::TABLE_MACRO_ENTRY), "TABLE_MACRO_ENTRY" },
62770 { static_cast<uint32_t>(CatalogType::DELETED_ENTRY), "DELETED_ENTRY" },
62771 { static_cast<uint32_t>(CatalogType::RENAMED_ENTRY), "RENAMED_ENTRY" },
62772 { static_cast<uint32_t>(CatalogType::SECRET_ENTRY), "SECRET_ENTRY" },
62773 { static_cast<uint32_t>(CatalogType::SECRET_TYPE_ENTRY), "SECRET_TYPE_ENTRY" },
62774 { static_cast<uint32_t>(CatalogType::SECRET_FUNCTION_ENTRY), "SECRET_FUNCTION_ENTRY" },
62775 { static_cast<uint32_t>(CatalogType::DEPENDENCY_ENTRY), "DEPENDENCY_ENTRY" }
62776 };
62777 return values;
62778}

◆ GetCheckpointAbortValues()

const StringUtil::EnumStringLiteral * duckdb::GetCheckpointAbortValues ( )
private
62790 {
62791 static constexpr StringUtil::EnumStringLiteral values[] {
62792 { static_cast<uint32_t>(CheckpointAbort::NO_ABORT), "NONE" },
62793 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_BEFORE_TRUNCATE), "BEFORE_TRUNCATE" },
62794 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_BEFORE_HEADER), "BEFORE_HEADER" },
62795 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_AFTER_FREE_LIST_WRITE), "AFTER_FREE_LIST_WRITE" },
62796 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_BEFORE_WAL_FINISH), "BEFORE_WAL_FINISH" },
62797 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_BEFORE_MOVING_RECOVERY), "BEFORE_MOVING_RECOVERY" },
62798 { static_cast<uint32_t>(CheckpointAbort::DEBUG_ABORT_BEFORE_DELETING_CHECKPOINT_WAL), "BEFORE_DELETING_CHECKPOINT_WAL" }
62799 };
62800 return values;
62801}

◆ GetChunkInfoTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetChunkInfoTypeValues ( )
private
62813 {
62814 static constexpr StringUtil::EnumStringLiteral values[] {
62815 { static_cast<uint32_t>(ChunkInfoType::CONSTANT_INFO), "CONSTANT_INFO" },
62816 { static_cast<uint32_t>(ChunkInfoType::VECTOR_INFO), "VECTOR_INFO" },
62817 { static_cast<uint32_t>(ChunkInfoType::EMPTY_INFO), "EMPTY_INFO" }
62818 };
62819 return values;
62820}

◆ GetColumnDataAllocatorTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetColumnDataAllocatorTypeValues ( )
private
62832 {
62833 static constexpr StringUtil::EnumStringLiteral values[] {
62834 { static_cast<uint32_t>(ColumnDataAllocatorType::BUFFER_MANAGER_ALLOCATOR), "BUFFER_MANAGER_ALLOCATOR" },
62835 { static_cast<uint32_t>(ColumnDataAllocatorType::IN_MEMORY_ALLOCATOR), "IN_MEMORY_ALLOCATOR" },
62836 { static_cast<uint32_t>(ColumnDataAllocatorType::HYBRID), "HYBRID" }
62837 };
62838 return values;
62839}

◆ GetColumnDataScanPropertiesValues()

const StringUtil::EnumStringLiteral * duckdb::GetColumnDataScanPropertiesValues ( )
private
62851 {
62852 static constexpr StringUtil::EnumStringLiteral values[] {
62853 { static_cast<uint32_t>(ColumnDataScanProperties::INVALID), "INVALID" },
62854 { static_cast<uint32_t>(ColumnDataScanProperties::ALLOW_ZERO_COPY), "ALLOW_ZERO_COPY" },
62855 { static_cast<uint32_t>(ColumnDataScanProperties::DISALLOW_ZERO_COPY), "DISALLOW_ZERO_COPY" }
62856 };
62857 return values;
62858}

◆ GetColumnIndexTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetColumnIndexTypeValues ( )
private
62870 {
62871 static constexpr StringUtil::EnumStringLiteral values[] {
62872 { static_cast<uint32_t>(ColumnIndexType::INVALID), "INVALID" },
62873 { static_cast<uint32_t>(ColumnIndexType::FULL_READ), "FULL_READ" },
62874 { static_cast<uint32_t>(ColumnIndexType::PUSHDOWN_EXTRACT), "PUSHDOWN_EXTRACT" }
62875 };
62876 return values;
62877}

◆ GetColumnSegmentTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetColumnSegmentTypeValues ( )
private
62889 {
62890 static constexpr StringUtil::EnumStringLiteral values[] {
62891 { static_cast<uint32_t>(ColumnSegmentType::TRANSIENT), "TRANSIENT" },
62892 { static_cast<uint32_t>(ColumnSegmentType::PERSISTENT), "PERSISTENT" }
62893 };
62894 return values;
62895}

◆ GetCompressedMaterializationDirectionValues()

const StringUtil::EnumStringLiteral * duckdb::GetCompressedMaterializationDirectionValues ( )
private
62907 {
62908 static constexpr StringUtil::EnumStringLiteral values[] {
62909 { static_cast<uint32_t>(CompressedMaterializationDirection::INVALID), "INVALID" },
62910 { static_cast<uint32_t>(CompressedMaterializationDirection::COMPRESS), "COMPRESS" },
62911 { static_cast<uint32_t>(CompressedMaterializationDirection::DECOMPRESS), "DECOMPRESS" }
62912 };
62913 return values;
62914}

◆ GetCompressionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCompressionTypeValues ( )
private
62926 {
62927 static constexpr StringUtil::EnumStringLiteral values[] {
62928 { static_cast<uint32_t>(CompressionType::COMPRESSION_AUTO), "AUTO" },
62929 { static_cast<uint32_t>(CompressionType::COMPRESSION_UNCOMPRESSED), "UNCOMPRESSED" },
62930 { static_cast<uint32_t>(CompressionType::COMPRESSION_CONSTANT), "CONSTANT" },
62931 { static_cast<uint32_t>(CompressionType::COMPRESSION_RLE), "RLE" },
62932 { static_cast<uint32_t>(CompressionType::COMPRESSION_DICTIONARY), "DICTIONARY" },
62933 { static_cast<uint32_t>(CompressionType::COMPRESSION_PFOR_DELTA), "PFOR" },
62934 { static_cast<uint32_t>(CompressionType::COMPRESSION_BITPACKING), "BITPACKING" },
62935 { static_cast<uint32_t>(CompressionType::COMPRESSION_FSST), "FSST" },
62936 { static_cast<uint32_t>(CompressionType::COMPRESSION_CHIMP), "CHIMP" },
62937 { static_cast<uint32_t>(CompressionType::COMPRESSION_PATAS), "PATAS" },
62938 { static_cast<uint32_t>(CompressionType::COMPRESSION_ALP), "ALP" },
62939 { static_cast<uint32_t>(CompressionType::COMPRESSION_ALPRD), "ALPRD" },
62940 { static_cast<uint32_t>(CompressionType::COMPRESSION_ZSTD), "ZSTD" },
62941 { static_cast<uint32_t>(CompressionType::COMPRESSION_ROARING), "ROARING" },
62942 { static_cast<uint32_t>(CompressionType::COMPRESSION_EMPTY), "EMPTY" },
62943 { static_cast<uint32_t>(CompressionType::COMPRESSION_DICT_FSST), "DICT_FSST" },
62944 { static_cast<uint32_t>(CompressionType::COMPRESSION_COUNT), "COMPRESSION_COUNT" }
62945 };
62946 return values;
62947}

◆ GetCompressionValidityValues()

const StringUtil::EnumStringLiteral * duckdb::GetCompressionValidityValues ( )
private
62959 {
62960 static constexpr StringUtil::EnumStringLiteral values[] {
62961 { static_cast<uint32_t>(CompressionValidity::REQUIRES_VALIDITY), "REQUIRES_VALIDITY" },
62962 { static_cast<uint32_t>(CompressionValidity::NO_VALIDITY_REQUIRED), "NO_VALIDITY_REQUIRED" }
62963 };
62964 return values;
62965}

◆ GetConflictManagerModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetConflictManagerModeValues ( )
private
62977 {
62978 static constexpr StringUtil::EnumStringLiteral values[] {
62979 { static_cast<uint32_t>(ConflictManagerMode::SCAN), "SCAN" },
62980 { static_cast<uint32_t>(ConflictManagerMode::THROW), "THROW" }
62981 };
62982 return values;
62983}

◆ GetConstraintTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetConstraintTypeValues ( )
private
62995 {
62996 static constexpr StringUtil::EnumStringLiteral values[] {
62997 { static_cast<uint32_t>(ConstraintType::INVALID), "INVALID" },
62998 { static_cast<uint32_t>(ConstraintType::NOT_NULL), "NOT_NULL" },
62999 { static_cast<uint32_t>(ConstraintType::CHECK), "CHECK" },
63000 { static_cast<uint32_t>(ConstraintType::UNIQUE), "UNIQUE" },
63001 { static_cast<uint32_t>(ConstraintType::FOREIGN_KEY), "FOREIGN_KEY" }
63002 };
63003 return values;
63004}

◆ GetCoordinateReferenceSystemTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCoordinateReferenceSystemTypeValues ( )
private
63016 {
63017 static constexpr StringUtil::EnumStringLiteral values[] {
63018 { static_cast<uint32_t>(CoordinateReferenceSystemType::INVALID), "INVALID" },
63019 { static_cast<uint32_t>(CoordinateReferenceSystemType::SRID), "SRID" },
63020 { static_cast<uint32_t>(CoordinateReferenceSystemType::AUTH_CODE), "AUTH_CODE" },
63021 { static_cast<uint32_t>(CoordinateReferenceSystemType::PROJJSON), "PROJJSON" },
63022 { static_cast<uint32_t>(CoordinateReferenceSystemType::WKT2_2019), "WKT2_2019" }
63023 };
63024 return values;
63025}

◆ GetCopyFunctionReturnTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCopyFunctionReturnTypeValues ( )
private
63037 {
63038 static constexpr StringUtil::EnumStringLiteral values[] {
63039 { static_cast<uint32_t>(CopyFunctionReturnType::CHANGED_ROWS), "CHANGED_ROWS" },
63040 { static_cast<uint32_t>(CopyFunctionReturnType::CHANGED_ROWS_AND_FILE_LIST), "CHANGED_ROWS_AND_FILE_LIST" },
63041 { static_cast<uint32_t>(CopyFunctionReturnType::WRITTEN_FILE_STATISTICS), "WRITTEN_FILE_STATISTICS" }
63042 };
63043 return values;
63044}

◆ GetCopyOverwriteModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCopyOverwriteModeValues ( )
private
63056 {
63057 static constexpr StringUtil::EnumStringLiteral values[] {
63058 { static_cast<uint32_t>(CopyOverwriteMode::COPY_ERROR_ON_CONFLICT), "COPY_ERROR_ON_CONFLICT" },
63059 { static_cast<uint32_t>(CopyOverwriteMode::COPY_OVERWRITE), "COPY_OVERWRITE" },
63060 { static_cast<uint32_t>(CopyOverwriteMode::COPY_OVERWRITE_OR_IGNORE), "COPY_OVERWRITE_OR_IGNORE" },
63061 { static_cast<uint32_t>(CopyOverwriteMode::COPY_APPEND), "COPY_APPEND" }
63062 };
63063 return values;
63064}

◆ GetCopyToTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetCopyToTypeValues ( )
private
63076 {
63077 static constexpr StringUtil::EnumStringLiteral values[] {
63078 { static_cast<uint32_t>(CopyToType::COPY_TO_FILE), "COPY_TO_FILE" },
63079 { static_cast<uint32_t>(CopyToType::EXPORT_DATABASE), "EXPORT_DATABASE" }
63080 };
63081 return values;
63082}

◆ GetDataFileTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDataFileTypeValues ( )
private
63094 {
63095 static constexpr StringUtil::EnumStringLiteral values[] {
63096 { static_cast<uint32_t>(DataFileType::FILE_DOES_NOT_EXIST), "FILE_DOES_NOT_EXIST" },
63097 { static_cast<uint32_t>(DataFileType::DUCKDB_FILE), "DUCKDB_FILE" },
63098 { static_cast<uint32_t>(DataFileType::SQLITE_FILE), "SQLITE_FILE" },
63099 { static_cast<uint32_t>(DataFileType::PARQUET_FILE), "PARQUET_FILE" },
63100 { static_cast<uint32_t>(DataFileType::UNKNOWN_FILE), "UNKNOWN_FILE" }
63101 };
63102 return values;
63103}

◆ GetDateCastResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetDateCastResultValues ( )
private
63115 {
63116 static constexpr StringUtil::EnumStringLiteral values[] {
63117 { static_cast<uint32_t>(DateCastResult::SUCCESS), "SUCCESS" },
63118 { static_cast<uint32_t>(DateCastResult::ERROR_INCORRECT_FORMAT), "ERROR_INCORRECT_FORMAT" },
63119 { static_cast<uint32_t>(DateCastResult::ERROR_RANGE), "ERROR_RANGE" }
63120 };
63121 return values;
63122}

◆ GetDatePartSpecifierValues()

const StringUtil::EnumStringLiteral * duckdb::GetDatePartSpecifierValues ( )
private
63134 {
63135 static constexpr StringUtil::EnumStringLiteral values[] {
63136 { static_cast<uint32_t>(DatePartSpecifier::YEAR), "YEAR" },
63137 { static_cast<uint32_t>(DatePartSpecifier::MONTH), "MONTH" },
63138 { static_cast<uint32_t>(DatePartSpecifier::DAY), "DAY" },
63139 { static_cast<uint32_t>(DatePartSpecifier::DECADE), "DECADE" },
63140 { static_cast<uint32_t>(DatePartSpecifier::CENTURY), "CENTURY" },
63141 { static_cast<uint32_t>(DatePartSpecifier::MILLENNIUM), "MILLENNIUM" },
63142 { static_cast<uint32_t>(DatePartSpecifier::MICROSECONDS), "MICROSECONDS" },
63143 { static_cast<uint32_t>(DatePartSpecifier::MILLISECONDS), "MILLISECONDS" },
63144 { static_cast<uint32_t>(DatePartSpecifier::SECOND), "SECOND" },
63145 { static_cast<uint32_t>(DatePartSpecifier::MINUTE), "MINUTE" },
63146 { static_cast<uint32_t>(DatePartSpecifier::HOUR), "HOUR" },
63147 { static_cast<uint32_t>(DatePartSpecifier::DOW), "DOW" },
63148 { static_cast<uint32_t>(DatePartSpecifier::ISODOW), "ISODOW" },
63149 { static_cast<uint32_t>(DatePartSpecifier::WEEK), "WEEK" },
63150 { static_cast<uint32_t>(DatePartSpecifier::ISOYEAR), "ISOYEAR" },
63151 { static_cast<uint32_t>(DatePartSpecifier::QUARTER), "QUARTER" },
63152 { static_cast<uint32_t>(DatePartSpecifier::DOY), "DOY" },
63153 { static_cast<uint32_t>(DatePartSpecifier::YEARWEEK), "YEARWEEK" },
63154 { static_cast<uint32_t>(DatePartSpecifier::ERA), "ERA" },
63155 { static_cast<uint32_t>(DatePartSpecifier::TIMEZONE), "TIMEZONE" },
63156 { static_cast<uint32_t>(DatePartSpecifier::TIMEZONE_HOUR), "TIMEZONE_HOUR" },
63157 { static_cast<uint32_t>(DatePartSpecifier::TIMEZONE_MINUTE), "TIMEZONE_MINUTE" },
63158 { static_cast<uint32_t>(DatePartSpecifier::EPOCH), "EPOCH" },
63159 { static_cast<uint32_t>(DatePartSpecifier::JULIAN_DAY), "JULIAN_DAY" },
63160 { static_cast<uint32_t>(DatePartSpecifier::INVALID), "INVALID" }
63161 };
63162 return values;
63163}

◆ GetDebugInitializeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDebugInitializeValues ( )
private
63175 {
63176 static constexpr StringUtil::EnumStringLiteral values[] {
63177 { static_cast<uint32_t>(DebugInitialize::NO_INITIALIZE), "NO_INITIALIZE" },
63178 { static_cast<uint32_t>(DebugInitialize::DEBUG_ZERO_INITIALIZE), "DEBUG_ZERO_INITIALIZE" },
63179 { static_cast<uint32_t>(DebugInitialize::DEBUG_ONE_INITIALIZE), "DEBUG_ONE_INITIALIZE" }
63180 };
63181 return values;
63182}

◆ GetDebugVectorVerificationValues()

const StringUtil::EnumStringLiteral * duckdb::GetDebugVectorVerificationValues ( )
private
63194 {
63195 static constexpr StringUtil::EnumStringLiteral values[] {
63196 { static_cast<uint32_t>(DebugVectorVerification::NONE), "NONE" },
63197 { static_cast<uint32_t>(DebugVectorVerification::DICTIONARY_EXPRESSION), "DICTIONARY_EXPRESSION" },
63198 { static_cast<uint32_t>(DebugVectorVerification::DICTIONARY_OPERATOR), "DICTIONARY_OPERATOR" },
63199 { static_cast<uint32_t>(DebugVectorVerification::CONSTANT_OPERATOR), "CONSTANT_OPERATOR" },
63200 { static_cast<uint32_t>(DebugVectorVerification::SEQUENCE_OPERATOR), "SEQUENCE_OPERATOR" },
63201 { static_cast<uint32_t>(DebugVectorVerification::NESTED_SHUFFLE), "NESTED_SHUFFLE" },
63202 { static_cast<uint32_t>(DebugVectorVerification::VARIANT_VECTOR), "VARIANT_VECTOR" }
63203 };
63204 return values;
63205}

◆ GetDecimalBitWidthValues()

const StringUtil::EnumStringLiteral * duckdb::GetDecimalBitWidthValues ( )
private
63217 {
63218 static constexpr StringUtil::EnumStringLiteral values[] {
63219 { static_cast<uint32_t>(DecimalBitWidth::DECIMAL_32), "DECIMAL_32" },
63220 { static_cast<uint32_t>(DecimalBitWidth::DECIMAL_64), "DECIMAL_64" },
63221 { static_cast<uint32_t>(DecimalBitWidth::DECIMAL_128), "DECIMAL_128" },
63222 { static_cast<uint32_t>(DecimalBitWidth::DECIMAL_256), "DECIMAL_256" }
63223 };
63224 return values;
63225}

◆ GetDefaultOrderByNullTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDefaultOrderByNullTypeValues ( )
private
63237 {
63238 static constexpr StringUtil::EnumStringLiteral values[] {
63239 { static_cast<uint32_t>(DefaultOrderByNullType::INVALID), "INVALID" },
63240 { static_cast<uint32_t>(DefaultOrderByNullType::NULLS_FIRST), "NULLS_FIRST" },
63241 { static_cast<uint32_t>(DefaultOrderByNullType::NULLS_LAST), "NULLS_LAST" },
63242 { static_cast<uint32_t>(DefaultOrderByNullType::NULLS_FIRST_ON_ASC_LAST_ON_DESC), "NULLS_FIRST_ON_ASC_LAST_ON_DESC" },
63243 { static_cast<uint32_t>(DefaultOrderByNullType::NULLS_LAST_ON_ASC_FIRST_ON_DESC), "NULLS_LAST_ON_ASC_FIRST_ON_DESC" }
63244 };
63245 return values;
63246}

◆ GetDependencyEntryTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDependencyEntryTypeValues ( )
private
63258 {
63259 static constexpr StringUtil::EnumStringLiteral values[] {
63260 { static_cast<uint32_t>(DependencyEntryType::SUBJECT), "SUBJECT" },
63261 { static_cast<uint32_t>(DependencyEntryType::DEPENDENT), "DEPENDENT" }
63262 };
63263 return values;
63264}

◆ GetDeprecatedIndexTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDeprecatedIndexTypeValues ( )
private
63276 {
63277 static constexpr StringUtil::EnumStringLiteral values[] {
63278 { static_cast<uint32_t>(DeprecatedIndexType::INVALID), "INVALID" },
63279 { static_cast<uint32_t>(DeprecatedIndexType::ART), "ART" },
63280 { static_cast<uint32_t>(DeprecatedIndexType::EXTENSION), "EXTENSION" }
63281 };
63282 return values;
63283}

◆ GetDeprecatedUsingKeySyntaxValues()

const StringUtil::EnumStringLiteral * duckdb::GetDeprecatedUsingKeySyntaxValues ( )
private
63295 {
63296 static constexpr StringUtil::EnumStringLiteral values[] {
63297 { static_cast<uint32_t>(DeprecatedUsingKeySyntax::DEFAULT), "DEFAULT" },
63298 { static_cast<uint32_t>(DeprecatedUsingKeySyntax::UNION_AS_UNION_ALL), "UNION_AS_UNION_ALL" }
63299 };
63300 return values;
63301}

◆ GetDestroyBufferUponValues()

const StringUtil::EnumStringLiteral * duckdb::GetDestroyBufferUponValues ( )
private
63313 {
63314 static constexpr StringUtil::EnumStringLiteral values[] {
63315 { static_cast<uint32_t>(DestroyBufferUpon::BLOCK), "BLOCK" },
63316 { static_cast<uint32_t>(DestroyBufferUpon::EVICTION), "EVICTION" },
63317 { static_cast<uint32_t>(DestroyBufferUpon::UNPIN), "UNPIN" }
63318 };
63319 return values;
63320}

◆ GetDistinctTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetDistinctTypeValues ( )
private
63332 {
63333 static constexpr StringUtil::EnumStringLiteral values[] {
63334 { static_cast<uint32_t>(DistinctType::DISTINCT), "DISTINCT" },
63335 { static_cast<uint32_t>(DistinctType::DISTINCT_ON), "DISTINCT_ON" }
63336 };
63337 return values;
63338}

◆ GetErrorTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetErrorTypeValues ( )
private
63350 {
63351 static constexpr StringUtil::EnumStringLiteral values[] {
63352 { static_cast<uint32_t>(ErrorType::UNSIGNED_EXTENSION), "UNSIGNED_EXTENSION" },
63353 { static_cast<uint32_t>(ErrorType::INVALIDATED_TRANSACTION), "INVALIDATED_TRANSACTION" },
63354 { static_cast<uint32_t>(ErrorType::INVALIDATED_DATABASE), "INVALIDATED_DATABASE" },
63355 { static_cast<uint32_t>(ErrorType::ERROR_COUNT), "ERROR_COUNT" },
63356 { static_cast<uint32_t>(ErrorType::INVALID), "INVALID" }
63357 };
63358 return values;
63359}

◆ GetExceptionFormatValueTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExceptionFormatValueTypeValues ( )
private
63371 {
63372 static constexpr StringUtil::EnumStringLiteral values[] {
63373 { static_cast<uint32_t>(ExceptionFormatValueType::FORMAT_VALUE_TYPE_DOUBLE), "FORMAT_VALUE_TYPE_DOUBLE" },
63374 { static_cast<uint32_t>(ExceptionFormatValueType::FORMAT_VALUE_TYPE_INTEGER), "FORMAT_VALUE_TYPE_INTEGER" },
63375 { static_cast<uint32_t>(ExceptionFormatValueType::FORMAT_VALUE_TYPE_STRING), "FORMAT_VALUE_TYPE_STRING" }
63376 };
63377 return values;
63378}

◆ GetExceptionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExceptionTypeValues ( )
private
63390 {
63391 static constexpr StringUtil::EnumStringLiteral values[] {
63392 { static_cast<uint32_t>(ExceptionType::INVALID), "INVALID" },
63393 { static_cast<uint32_t>(ExceptionType::OUT_OF_RANGE), "OUT_OF_RANGE" },
63394 { static_cast<uint32_t>(ExceptionType::CONVERSION), "CONVERSION" },
63395 { static_cast<uint32_t>(ExceptionType::UNKNOWN_TYPE), "UNKNOWN_TYPE" },
63396 { static_cast<uint32_t>(ExceptionType::DECIMAL), "DECIMAL" },
63397 { static_cast<uint32_t>(ExceptionType::MISMATCH_TYPE), "MISMATCH_TYPE" },
63398 { static_cast<uint32_t>(ExceptionType::DIVIDE_BY_ZERO), "DIVIDE_BY_ZERO" },
63399 { static_cast<uint32_t>(ExceptionType::OBJECT_SIZE), "OBJECT_SIZE" },
63400 { static_cast<uint32_t>(ExceptionType::INVALID_TYPE), "INVALID_TYPE" },
63401 { static_cast<uint32_t>(ExceptionType::SERIALIZATION), "SERIALIZATION" },
63402 { static_cast<uint32_t>(ExceptionType::TRANSACTION), "TRANSACTION" },
63403 { static_cast<uint32_t>(ExceptionType::NOT_IMPLEMENTED), "NOT_IMPLEMENTED" },
63404 { static_cast<uint32_t>(ExceptionType::EXPRESSION), "EXPRESSION" },
63405 { static_cast<uint32_t>(ExceptionType::CATALOG), "CATALOG" },
63406 { static_cast<uint32_t>(ExceptionType::PARSER), "PARSER" },
63407 { static_cast<uint32_t>(ExceptionType::PLANNER), "PLANNER" },
63408 { static_cast<uint32_t>(ExceptionType::SCHEDULER), "SCHEDULER" },
63409 { static_cast<uint32_t>(ExceptionType::EXECUTOR), "EXECUTOR" },
63410 { static_cast<uint32_t>(ExceptionType::CONSTRAINT), "CONSTRAINT" },
63411 { static_cast<uint32_t>(ExceptionType::INDEX), "INDEX" },
63412 { static_cast<uint32_t>(ExceptionType::STAT), "STAT" },
63413 { static_cast<uint32_t>(ExceptionType::CONNECTION), "CONNECTION" },
63414 { static_cast<uint32_t>(ExceptionType::SYNTAX), "SYNTAX" },
63415 { static_cast<uint32_t>(ExceptionType::SETTINGS), "SETTINGS" },
63416 { static_cast<uint32_t>(ExceptionType::BINDER), "BINDER" },
63417 { static_cast<uint32_t>(ExceptionType::NETWORK), "NETWORK" },
63418 { static_cast<uint32_t>(ExceptionType::OPTIMIZER), "OPTIMIZER" },
63419 { static_cast<uint32_t>(ExceptionType::NULL_POINTER), "NULL_POINTER" },
63420 { static_cast<uint32_t>(ExceptionType::IO), "IO" },
63421 { static_cast<uint32_t>(ExceptionType::INTERRUPT), "INTERRUPT" },
63422 { static_cast<uint32_t>(ExceptionType::FATAL), "FATAL" },
63423 { static_cast<uint32_t>(ExceptionType::INTERNAL), "INTERNAL" },
63424 { static_cast<uint32_t>(ExceptionType::INVALID_INPUT), "INVALID_INPUT" },
63425 { static_cast<uint32_t>(ExceptionType::OUT_OF_MEMORY), "OUT_OF_MEMORY" },
63426 { static_cast<uint32_t>(ExceptionType::PERMISSION), "PERMISSION" },
63427 { static_cast<uint32_t>(ExceptionType::PARAMETER_NOT_RESOLVED), "PARAMETER_NOT_RESOLVED" },
63428 { static_cast<uint32_t>(ExceptionType::PARAMETER_NOT_ALLOWED), "PARAMETER_NOT_ALLOWED" },
63429 { static_cast<uint32_t>(ExceptionType::DEPENDENCY), "DEPENDENCY" },
63430 { static_cast<uint32_t>(ExceptionType::HTTP), "HTTP" },
63431 { static_cast<uint32_t>(ExceptionType::MISSING_EXTENSION), "MISSING_EXTENSION" },
63432 { static_cast<uint32_t>(ExceptionType::AUTOLOAD), "AUTOLOAD" },
63433 { static_cast<uint32_t>(ExceptionType::SEQUENCE), "SEQUENCE" },
63434 { static_cast<uint32_t>(ExceptionType::INVALID_CONFIGURATION), "INVALID_CONFIGURATION" }
63435 };
63436 return values;
63437}

◆ GetExplainFormatValues()

const StringUtil::EnumStringLiteral * duckdb::GetExplainFormatValues ( )
private
63449 {
63450 static constexpr StringUtil::EnumStringLiteral values[] {
63451 { static_cast<uint32_t>(ExplainFormat::DEFAULT), "DEFAULT" },
63452 { static_cast<uint32_t>(ExplainFormat::TEXT), "TEXT" },
63453 { static_cast<uint32_t>(ExplainFormat::JSON), "JSON" },
63454 { static_cast<uint32_t>(ExplainFormat::HTML), "HTML" },
63455 { static_cast<uint32_t>(ExplainFormat::GRAPHVIZ), "GRAPHVIZ" },
63456 { static_cast<uint32_t>(ExplainFormat::YAML), "YAML" },
63457 { static_cast<uint32_t>(ExplainFormat::MERMAID), "MERMAID" }
63458 };
63459 return values;
63460}

◆ GetExplainOutputTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExplainOutputTypeValues ( )
private
63472 {
63473 static constexpr StringUtil::EnumStringLiteral values[] {
63474 { static_cast<uint32_t>(ExplainOutputType::ALL), "ALL" },
63475 { static_cast<uint32_t>(ExplainOutputType::OPTIMIZED_ONLY), "OPTIMIZED_ONLY" },
63476 { static_cast<uint32_t>(ExplainOutputType::PHYSICAL_ONLY), "PHYSICAL_ONLY" }
63477 };
63478 return values;
63479}

◆ GetExplainTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExplainTypeValues ( )
private
63491 {
63492 static constexpr StringUtil::EnumStringLiteral values[] {
63493 { static_cast<uint32_t>(ExplainType::EXPLAIN_STANDARD), "EXPLAIN_STANDARD" },
63494 { static_cast<uint32_t>(ExplainType::EXPLAIN_ANALYZE), "EXPLAIN_ANALYZE" }
63495 };
63496 return values;
63497}

◆ GetExponentTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExponentTypeValues ( )
private
63509 {
63510 static constexpr StringUtil::EnumStringLiteral values[] {
63511 { static_cast<uint32_t>(ExponentType::NONE), "NONE" },
63512 { static_cast<uint32_t>(ExponentType::POSITIVE), "POSITIVE" },
63513 { static_cast<uint32_t>(ExponentType::NEGATIVE), "NEGATIVE" }
63514 };
63515 return values;
63516}

◆ GetExpressionClassValues()

const StringUtil::EnumStringLiteral * duckdb::GetExpressionClassValues ( )
private
63528 {
63529 static constexpr StringUtil::EnumStringLiteral values[] {
63530 { static_cast<uint32_t>(ExpressionClass::INVALID), "INVALID" },
63531 { static_cast<uint32_t>(ExpressionClass::AGGREGATE), "AGGREGATE" },
63532 { static_cast<uint32_t>(ExpressionClass::CASE), "CASE" },
63533 { static_cast<uint32_t>(ExpressionClass::CAST), "CAST" },
63534 { static_cast<uint32_t>(ExpressionClass::COLUMN_REF), "COLUMN_REF" },
63535 { static_cast<uint32_t>(ExpressionClass::COMPARISON), "COMPARISON" },
63536 { static_cast<uint32_t>(ExpressionClass::CONJUNCTION), "CONJUNCTION" },
63537 { static_cast<uint32_t>(ExpressionClass::CONSTANT), "CONSTANT" },
63538 { static_cast<uint32_t>(ExpressionClass::DEFAULT), "DEFAULT" },
63539 { static_cast<uint32_t>(ExpressionClass::FUNCTION), "FUNCTION" },
63540 { static_cast<uint32_t>(ExpressionClass::OPERATOR), "OPERATOR" },
63541 { static_cast<uint32_t>(ExpressionClass::STAR), "STAR" },
63542 { static_cast<uint32_t>(ExpressionClass::SUBQUERY), "SUBQUERY" },
63543 { static_cast<uint32_t>(ExpressionClass::WINDOW), "WINDOW" },
63544 { static_cast<uint32_t>(ExpressionClass::PARAMETER), "PARAMETER" },
63545 { static_cast<uint32_t>(ExpressionClass::COLLATE), "COLLATE" },
63546 { static_cast<uint32_t>(ExpressionClass::LAMBDA), "LAMBDA" },
63547 { static_cast<uint32_t>(ExpressionClass::POSITIONAL_REFERENCE), "POSITIONAL_REFERENCE" },
63548 { static_cast<uint32_t>(ExpressionClass::BETWEEN), "BETWEEN" },
63549 { static_cast<uint32_t>(ExpressionClass::LAMBDA_REF), "LAMBDA_REF" },
63550 { static_cast<uint32_t>(ExpressionClass::TYPE), "TYPE" },
63551 { static_cast<uint32_t>(ExpressionClass::BOUND_AGGREGATE), "BOUND_AGGREGATE" },
63552 { static_cast<uint32_t>(ExpressionClass::BOUND_CASE), "BOUND_CASE" },
63553 { static_cast<uint32_t>(ExpressionClass::BOUND_CAST), "BOUND_CAST" },
63554 { static_cast<uint32_t>(ExpressionClass::BOUND_COLUMN_REF), "BOUND_COLUMN_REF" },
63555 { static_cast<uint32_t>(ExpressionClass::BOUND_COMPARISON), "BOUND_COMPARISON" },
63556 { static_cast<uint32_t>(ExpressionClass::BOUND_CONJUNCTION), "BOUND_CONJUNCTION" },
63557 { static_cast<uint32_t>(ExpressionClass::BOUND_CONSTANT), "BOUND_CONSTANT" },
63558 { static_cast<uint32_t>(ExpressionClass::BOUND_DEFAULT), "BOUND_DEFAULT" },
63559 { static_cast<uint32_t>(ExpressionClass::BOUND_FUNCTION), "BOUND_FUNCTION" },
63560 { static_cast<uint32_t>(ExpressionClass::BOUND_OPERATOR), "BOUND_OPERATOR" },
63561 { static_cast<uint32_t>(ExpressionClass::BOUND_PARAMETER), "BOUND_PARAMETER" },
63562 { static_cast<uint32_t>(ExpressionClass::BOUND_REF), "BOUND_REF" },
63563 { static_cast<uint32_t>(ExpressionClass::BOUND_SUBQUERY), "BOUND_SUBQUERY" },
63564 { static_cast<uint32_t>(ExpressionClass::BOUND_WINDOW), "BOUND_WINDOW" },
63565 { static_cast<uint32_t>(ExpressionClass::BOUND_BETWEEN), "BOUND_BETWEEN" },
63566 { static_cast<uint32_t>(ExpressionClass::BOUND_UNNEST), "BOUND_UNNEST" },
63567 { static_cast<uint32_t>(ExpressionClass::BOUND_LAMBDA), "BOUND_LAMBDA" },
63568 { static_cast<uint32_t>(ExpressionClass::BOUND_LAMBDA_REF), "BOUND_LAMBDA_REF" },
63569 { static_cast<uint32_t>(ExpressionClass::BOUND_EXPRESSION), "BOUND_EXPRESSION" },
63570 { static_cast<uint32_t>(ExpressionClass::BOUND_EXPANDED), "BOUND_EXPANDED" }
63571 };
63572 return values;
63573}

◆ GetExpressionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExpressionTypeValues ( )
private
63585 {
63586 static constexpr StringUtil::EnumStringLiteral values[] {
63587 { static_cast<uint32_t>(ExpressionType::INVALID), "INVALID" },
63588 { static_cast<uint32_t>(ExpressionType::OPERATOR_CAST), "OPERATOR_CAST" },
63589 { static_cast<uint32_t>(ExpressionType::OPERATOR_NOT), "OPERATOR_NOT" },
63590 { static_cast<uint32_t>(ExpressionType::OPERATOR_IS_NULL), "OPERATOR_IS_NULL" },
63591 { static_cast<uint32_t>(ExpressionType::OPERATOR_IS_NOT_NULL), "OPERATOR_IS_NOT_NULL" },
63592 { static_cast<uint32_t>(ExpressionType::OPERATOR_UNPACK), "OPERATOR_UNPACK" },
63593 { static_cast<uint32_t>(ExpressionType::COMPARE_EQUAL), "COMPARE_EQUAL" },
63594 { static_cast<uint32_t>(ExpressionType::COMPARE_NOTEQUAL), "COMPARE_NOTEQUAL" },
63595 { static_cast<uint32_t>(ExpressionType::COMPARE_LESSTHAN), "COMPARE_LESSTHAN" },
63596 { static_cast<uint32_t>(ExpressionType::COMPARE_GREATERTHAN), "COMPARE_GREATERTHAN" },
63597 { static_cast<uint32_t>(ExpressionType::COMPARE_LESSTHANOREQUALTO), "COMPARE_LESSTHANOREQUALTO" },
63598 { static_cast<uint32_t>(ExpressionType::COMPARE_GREATERTHANOREQUALTO), "COMPARE_GREATERTHANOREQUALTO" },
63599 { static_cast<uint32_t>(ExpressionType::COMPARE_IN), "COMPARE_IN" },
63600 { static_cast<uint32_t>(ExpressionType::COMPARE_NOT_IN), "COMPARE_NOT_IN" },
63601 { static_cast<uint32_t>(ExpressionType::COMPARE_DISTINCT_FROM), "COMPARE_DISTINCT_FROM" },
63602 { static_cast<uint32_t>(ExpressionType::COMPARE_BETWEEN), "COMPARE_BETWEEN" },
63603 { static_cast<uint32_t>(ExpressionType::COMPARE_NOT_BETWEEN), "COMPARE_NOT_BETWEEN" },
63604 { static_cast<uint32_t>(ExpressionType::COMPARE_NOT_DISTINCT_FROM), "COMPARE_NOT_DISTINCT_FROM" },
63605 { static_cast<uint32_t>(ExpressionType::CONJUNCTION_AND), "CONJUNCTION_AND" },
63606 { static_cast<uint32_t>(ExpressionType::CONJUNCTION_OR), "CONJUNCTION_OR" },
63607 { static_cast<uint32_t>(ExpressionType::VALUE_CONSTANT), "VALUE_CONSTANT" },
63608 { static_cast<uint32_t>(ExpressionType::VALUE_PARAMETER), "VALUE_PARAMETER" },
63609 { static_cast<uint32_t>(ExpressionType::VALUE_TUPLE), "VALUE_TUPLE" },
63610 { static_cast<uint32_t>(ExpressionType::VALUE_TUPLE_ADDRESS), "VALUE_TUPLE_ADDRESS" },
63611 { static_cast<uint32_t>(ExpressionType::VALUE_NULL), "VALUE_NULL" },
63612 { static_cast<uint32_t>(ExpressionType::VALUE_VECTOR), "VALUE_VECTOR" },
63613 { static_cast<uint32_t>(ExpressionType::VALUE_SCALAR), "VALUE_SCALAR" },
63614 { static_cast<uint32_t>(ExpressionType::VALUE_DEFAULT), "VALUE_DEFAULT" },
63615 { static_cast<uint32_t>(ExpressionType::AGGREGATE), "AGGREGATE" },
63616 { static_cast<uint32_t>(ExpressionType::BOUND_AGGREGATE), "BOUND_AGGREGATE" },
63617 { static_cast<uint32_t>(ExpressionType::GROUPING_FUNCTION), "GROUPING_FUNCTION" },
63618 { static_cast<uint32_t>(ExpressionType::WINDOW_AGGREGATE), "WINDOW_AGGREGATE" },
63619 { static_cast<uint32_t>(ExpressionType::WINDOW_RANK), "WINDOW_RANK" },
63620 { static_cast<uint32_t>(ExpressionType::WINDOW_RANK_DENSE), "WINDOW_RANK_DENSE" },
63621 { static_cast<uint32_t>(ExpressionType::WINDOW_NTILE), "WINDOW_NTILE" },
63622 { static_cast<uint32_t>(ExpressionType::WINDOW_PERCENT_RANK), "WINDOW_PERCENT_RANK" },
63623 { static_cast<uint32_t>(ExpressionType::WINDOW_CUME_DIST), "WINDOW_CUME_DIST" },
63624 { static_cast<uint32_t>(ExpressionType::WINDOW_ROW_NUMBER), "WINDOW_ROW_NUMBER" },
63625 { static_cast<uint32_t>(ExpressionType::WINDOW_FIRST_VALUE), "WINDOW_FIRST_VALUE" },
63626 { static_cast<uint32_t>(ExpressionType::WINDOW_LAST_VALUE), "WINDOW_LAST_VALUE" },
63627 { static_cast<uint32_t>(ExpressionType::WINDOW_LEAD), "WINDOW_LEAD" },
63628 { static_cast<uint32_t>(ExpressionType::WINDOW_LAG), "WINDOW_LAG" },
63629 { static_cast<uint32_t>(ExpressionType::WINDOW_NTH_VALUE), "WINDOW_NTH_VALUE" },
63630 { static_cast<uint32_t>(ExpressionType::WINDOW_FILL), "WINDOW_FILL" },
63631 { static_cast<uint32_t>(ExpressionType::FUNCTION), "FUNCTION" },
63632 { static_cast<uint32_t>(ExpressionType::BOUND_FUNCTION), "BOUND_FUNCTION" },
63633 { static_cast<uint32_t>(ExpressionType::CASE_EXPR), "CASE_EXPR" },
63634 { static_cast<uint32_t>(ExpressionType::OPERATOR_NULLIF), "OPERATOR_NULLIF" },
63635 { static_cast<uint32_t>(ExpressionType::OPERATOR_COALESCE), "OPERATOR_COALESCE" },
63636 { static_cast<uint32_t>(ExpressionType::ARRAY_EXTRACT), "ARRAY_EXTRACT" },
63637 { static_cast<uint32_t>(ExpressionType::ARRAY_SLICE), "ARRAY_SLICE" },
63638 { static_cast<uint32_t>(ExpressionType::STRUCT_EXTRACT), "STRUCT_EXTRACT" },
63639 { static_cast<uint32_t>(ExpressionType::ARRAY_CONSTRUCTOR), "ARRAY_CONSTRUCTOR" },
63640 { static_cast<uint32_t>(ExpressionType::ARROW), "ARROW" },
63641 { static_cast<uint32_t>(ExpressionType::OPERATOR_TRY), "OPERATOR_TRY" },
63642 { static_cast<uint32_t>(ExpressionType::SUBQUERY), "SUBQUERY" },
63643 { static_cast<uint32_t>(ExpressionType::STAR), "STAR" },
63644 { static_cast<uint32_t>(ExpressionType::TABLE_STAR), "TABLE_STAR" },
63645 { static_cast<uint32_t>(ExpressionType::PLACEHOLDER), "PLACEHOLDER" },
63646 { static_cast<uint32_t>(ExpressionType::COLUMN_REF), "COLUMN_REF" },
63647 { static_cast<uint32_t>(ExpressionType::FUNCTION_REF), "FUNCTION_REF" },
63648 { static_cast<uint32_t>(ExpressionType::TABLE_REF), "TABLE_REF" },
63649 { static_cast<uint32_t>(ExpressionType::LAMBDA_REF), "LAMBDA_REF" },
63650 { static_cast<uint32_t>(ExpressionType::TYPE), "TYPE" },
63651 { static_cast<uint32_t>(ExpressionType::CAST), "CAST" },
63652 { static_cast<uint32_t>(ExpressionType::BOUND_REF), "BOUND_REF" },
63653 { static_cast<uint32_t>(ExpressionType::BOUND_COLUMN_REF), "BOUND_COLUMN_REF" },
63654 { static_cast<uint32_t>(ExpressionType::BOUND_UNNEST), "BOUND_UNNEST" },
63655 { static_cast<uint32_t>(ExpressionType::COLLATE), "COLLATE" },
63656 { static_cast<uint32_t>(ExpressionType::LAMBDA), "LAMBDA" },
63657 { static_cast<uint32_t>(ExpressionType::POSITIONAL_REFERENCE), "POSITIONAL_REFERENCE" },
63658 { static_cast<uint32_t>(ExpressionType::BOUND_LAMBDA_REF), "BOUND_LAMBDA_REF" },
63659 { static_cast<uint32_t>(ExpressionType::BOUND_EXPANDED), "BOUND_EXPANDED" }
63660 };
63661 return values;
63662}

◆ GetExtensionABITypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtensionABITypeValues ( )
private
63674 {
63675 static constexpr StringUtil::EnumStringLiteral values[] {
63676 { static_cast<uint32_t>(ExtensionABIType::UNKNOWN), "UNKNOWN" },
63677 { static_cast<uint32_t>(ExtensionABIType::CPP), "CPP" },
63678 { static_cast<uint32_t>(ExtensionABIType::C_STRUCT), "C_STRUCT" },
63679 { static_cast<uint32_t>(ExtensionABIType::C_STRUCT_UNSTABLE), "C_STRUCT_UNSTABLE" }
63680 };
63681 return values;
63682}

◆ GetExtensionInstallModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtensionInstallModeValues ( )
private
63694 {
63695 static constexpr StringUtil::EnumStringLiteral values[] {
63696 { static_cast<uint32_t>(ExtensionInstallMode::UNKNOWN), "UNKNOWN" },
63697 { static_cast<uint32_t>(ExtensionInstallMode::REPOSITORY), "REPOSITORY" },
63698 { static_cast<uint32_t>(ExtensionInstallMode::CUSTOM_PATH), "CUSTOM_PATH" },
63699 { static_cast<uint32_t>(ExtensionInstallMode::STATICALLY_LINKED), "STATICALLY_LINKED" },
63700 { static_cast<uint32_t>(ExtensionInstallMode::NOT_INSTALLED), "NOT_INSTALLED" }
63701 };
63702 return values;
63703}

◆ GetExtensionLoadResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtensionLoadResultValues ( )
private
63715 {
63716 static constexpr StringUtil::EnumStringLiteral values[] {
63717 { static_cast<uint32_t>(ExtensionLoadResult::LOADED_EXTENSION), "LOADED_EXTENSION" },
63718 { static_cast<uint32_t>(ExtensionLoadResult::EXTENSION_UNKNOWN), "EXTENSION_UNKNOWN" },
63719 { static_cast<uint32_t>(ExtensionLoadResult::NOT_LOADED), "NOT_LOADED" }
63720 };
63721 return values;
63722}

◆ GetExtensionUpdateResultTagValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtensionUpdateResultTagValues ( )
private
63734 {
63735 static constexpr StringUtil::EnumStringLiteral values[] {
63736 { static_cast<uint32_t>(ExtensionUpdateResultTag::UNKNOWN), "UNKNOWN" },
63737 { static_cast<uint32_t>(ExtensionUpdateResultTag::NO_UPDATE_AVAILABLE), "NO_UPDATE_AVAILABLE" },
63738 { static_cast<uint32_t>(ExtensionUpdateResultTag::NOT_A_REPOSITORY), "NOT_A_REPOSITORY" },
63739 { static_cast<uint32_t>(ExtensionUpdateResultTag::NOT_INSTALLED), "NOT_INSTALLED" },
63740 { static_cast<uint32_t>(ExtensionUpdateResultTag::STATICALLY_LOADED), "STATICALLY_LOADED" },
63741 { static_cast<uint32_t>(ExtensionUpdateResultTag::MISSING_INSTALL_INFO), "MISSING_INSTALL_INFO" },
63742 { static_cast<uint32_t>(ExtensionUpdateResultTag::REDOWNLOADED), "REDOWNLOADED" },
63743 { static_cast<uint32_t>(ExtensionUpdateResultTag::UPDATED), "UPDATED" }
63744 };
63745 return values;
63746}

◆ GetExtraDropInfoTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtraDropInfoTypeValues ( )
private
63758 {
63759 static constexpr StringUtil::EnumStringLiteral values[] {
63760 { static_cast<uint32_t>(ExtraDropInfoType::INVALID), "INVALID" },
63761 { static_cast<uint32_t>(ExtraDropInfoType::SECRET_INFO), "SECRET_INFO" }
63762 };
63763 return values;
63764}

◆ GetExtraPersistentColumnDataTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtraPersistentColumnDataTypeValues ( )
private
63776 {
63777 static constexpr StringUtil::EnumStringLiteral values[] {
63778 { static_cast<uint32_t>(ExtraPersistentColumnDataType::INVALID), "INVALID" },
63779 { static_cast<uint32_t>(ExtraPersistentColumnDataType::VARIANT), "VARIANT" },
63780 { static_cast<uint32_t>(ExtraPersistentColumnDataType::GEOMETRY), "GEOMETRY" }
63781 };
63782 return values;
63783}

◆ GetExtraTypeInfoTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetExtraTypeInfoTypeValues ( )
private
63795 {
63796 static constexpr StringUtil::EnumStringLiteral values[] {
63797 { static_cast<uint32_t>(ExtraTypeInfoType::INVALID_TYPE_INFO), "INVALID_TYPE_INFO" },
63798 { static_cast<uint32_t>(ExtraTypeInfoType::GENERIC_TYPE_INFO), "GENERIC_TYPE_INFO" },
63799 { static_cast<uint32_t>(ExtraTypeInfoType::DECIMAL_TYPE_INFO), "DECIMAL_TYPE_INFO" },
63800 { static_cast<uint32_t>(ExtraTypeInfoType::STRING_TYPE_INFO), "STRING_TYPE_INFO" },
63801 { static_cast<uint32_t>(ExtraTypeInfoType::LIST_TYPE_INFO), "LIST_TYPE_INFO" },
63802 { static_cast<uint32_t>(ExtraTypeInfoType::STRUCT_TYPE_INFO), "STRUCT_TYPE_INFO" },
63803 { static_cast<uint32_t>(ExtraTypeInfoType::ENUM_TYPE_INFO), "ENUM_TYPE_INFO" },
63804 { static_cast<uint32_t>(ExtraTypeInfoType::UNBOUND_TYPE_INFO), "UNBOUND_TYPE_INFO" },
63805 { static_cast<uint32_t>(ExtraTypeInfoType::AGGREGATE_STATE_TYPE_INFO), "AGGREGATE_STATE_TYPE_INFO" },
63806 { static_cast<uint32_t>(ExtraTypeInfoType::ARRAY_TYPE_INFO), "ARRAY_TYPE_INFO" },
63807 { static_cast<uint32_t>(ExtraTypeInfoType::ANY_TYPE_INFO), "ANY_TYPE_INFO" },
63808 { static_cast<uint32_t>(ExtraTypeInfoType::INTEGER_LITERAL_TYPE_INFO), "INTEGER_LITERAL_TYPE_INFO" },
63809 { static_cast<uint32_t>(ExtraTypeInfoType::TEMPLATE_TYPE_INFO), "TEMPLATE_TYPE_INFO" },
63810 { static_cast<uint32_t>(ExtraTypeInfoType::GEO_TYPE_INFO), "GEO_TYPE_INFO" }
63811 };
63812 return values;
63813}

◆ GetFileBufferTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileBufferTypeValues ( )
private
63825 {
63826 static constexpr StringUtil::EnumStringLiteral values[] {
63827 { static_cast<uint32_t>(FileBufferType::BLOCK), "BLOCK" },
63828 { static_cast<uint32_t>(FileBufferType::MANAGED_BUFFER), "MANAGED_BUFFER" },
63829 { static_cast<uint32_t>(FileBufferType::TINY_BUFFER), "TINY_BUFFER" },
63830 { static_cast<uint32_t>(FileBufferType::EXTERNAL_FILE), "EXTERNAL_FILE" }
63831 };
63832 return values;
63833}

◆ GetFileCompressionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileCompressionTypeValues ( )
private
63845 {
63846 static constexpr StringUtil::EnumStringLiteral values[] {
63847 { static_cast<uint32_t>(FileCompressionType::AUTO_DETECT), "AUTO_DETECT" },
63848 { static_cast<uint32_t>(FileCompressionType::UNCOMPRESSED), "UNCOMPRESSED" },
63849 { static_cast<uint32_t>(FileCompressionType::GZIP), "GZIP" },
63850 { static_cast<uint32_t>(FileCompressionType::ZSTD), "ZSTD" }
63851 };
63852 return values;
63853}

◆ GetFileExpandResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileExpandResultValues ( )
private
63865 {
63866 static constexpr StringUtil::EnumStringLiteral values[] {
63867 { static_cast<uint32_t>(FileExpandResult::NO_FILES), "NO_FILES" },
63868 { static_cast<uint32_t>(FileExpandResult::SINGLE_FILE), "SINGLE_FILE" },
63869 { static_cast<uint32_t>(FileExpandResult::MULTIPLE_FILES), "MULTIPLE_FILES" }
63870 };
63871 return values;
63872}

◆ GetFileGlobOptionsValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileGlobOptionsValues ( )
private
63884 {
63885 static constexpr StringUtil::EnumStringLiteral values[] {
63886 { static_cast<uint32_t>(FileGlobOptions::DISALLOW_EMPTY), "DISALLOW_EMPTY" },
63887 { static_cast<uint32_t>(FileGlobOptions::ALLOW_EMPTY), "ALLOW_EMPTY" },
63888 { static_cast<uint32_t>(FileGlobOptions::FALLBACK_GLOB), "FALLBACK_GLOB" }
63889 };
63890 return values;
63891}

◆ GetFileLockTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileLockTypeValues ( )
private
63903 {
63904 static constexpr StringUtil::EnumStringLiteral values[] {
63905 { static_cast<uint32_t>(FileLockType::NO_LOCK), "NO_LOCK" },
63906 { static_cast<uint32_t>(FileLockType::READ_LOCK), "READ_LOCK" },
63907 { static_cast<uint32_t>(FileLockType::WRITE_LOCK), "WRITE_LOCK" }
63908 };
63909 return values;
63910}

◆ GetFileNameSegmentTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetFileNameSegmentTypeValues ( )
private
63922 {
63923 static constexpr StringUtil::EnumStringLiteral values[] {
63924 { static_cast<uint32_t>(FileNameSegmentType::LITERAL), "LITERAL" },
63925 { static_cast<uint32_t>(FileNameSegmentType::UUID_V4), "UUID_V4" },
63926 { static_cast<uint32_t>(FileNameSegmentType::UUID_V7), "UUID_V7" },
63927 { static_cast<uint32_t>(FileNameSegmentType::OFFSET), "OFFSET" }
63928 };
63929 return values;
63930}

◆ GetFilterPropagateResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetFilterPropagateResultValues ( )
private
63942 {
63943 static constexpr StringUtil::EnumStringLiteral values[] {
63944 { static_cast<uint32_t>(FilterPropagateResult::NO_PRUNING_POSSIBLE), "NO_PRUNING_POSSIBLE" },
63945 { static_cast<uint32_t>(FilterPropagateResult::FILTER_ALWAYS_TRUE), "FILTER_ALWAYS_TRUE" },
63946 { static_cast<uint32_t>(FilterPropagateResult::FILTER_ALWAYS_FALSE), "FILTER_ALWAYS_FALSE" },
63947 { static_cast<uint32_t>(FilterPropagateResult::FILTER_TRUE_OR_NULL), "FILTER_TRUE_OR_NULL" },
63948 { static_cast<uint32_t>(FilterPropagateResult::FILTER_FALSE_OR_NULL), "FILTER_FALSE_OR_NULL" }
63949 };
63950 return values;
63951}

◆ GetForeignKeyTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetForeignKeyTypeValues ( )
private
63963 {
63964 static constexpr StringUtil::EnumStringLiteral values[] {
63965 { static_cast<uint32_t>(ForeignKeyType::FK_TYPE_PRIMARY_KEY_TABLE), "FK_TYPE_PRIMARY_KEY_TABLE" },
63966 { static_cast<uint32_t>(ForeignKeyType::FK_TYPE_FOREIGN_KEY_TABLE), "FK_TYPE_FOREIGN_KEY_TABLE" },
63967 { static_cast<uint32_t>(ForeignKeyType::FK_TYPE_SELF_REFERENCE_TABLE), "FK_TYPE_SELF_REFERENCE_TABLE" }
63968 };
63969 return values;
63970}

◆ GetFunctionCollationHandlingValues()

const StringUtil::EnumStringLiteral * duckdb::GetFunctionCollationHandlingValues ( )
private
63982 {
63983 static constexpr StringUtil::EnumStringLiteral values[] {
63984 { static_cast<uint32_t>(FunctionCollationHandling::PROPAGATE_COLLATIONS), "PROPAGATE_COLLATIONS" },
63985 { static_cast<uint32_t>(FunctionCollationHandling::PUSH_COMBINABLE_COLLATIONS), "PUSH_COMBINABLE_COLLATIONS" },
63986 { static_cast<uint32_t>(FunctionCollationHandling::IGNORE_COLLATIONS), "IGNORE_COLLATIONS" }
63987 };
63988 return values;
63989}

◆ GetFunctionErrorsValues()

const StringUtil::EnumStringLiteral * duckdb::GetFunctionErrorsValues ( )
private
64001 {
64002 static constexpr StringUtil::EnumStringLiteral values[] {
64003 { static_cast<uint32_t>(FunctionErrors::CANNOT_ERROR), "CANNOT_ERROR" },
64004 { static_cast<uint32_t>(FunctionErrors::CAN_THROW_RUNTIME_ERROR), "CAN_THROW_RUNTIME_ERROR" }
64005 };
64006 return values;
64007}

◆ GetFunctionNullHandlingValues()

const StringUtil::EnumStringLiteral * duckdb::GetFunctionNullHandlingValues ( )
private
64019 {
64020 static constexpr StringUtil::EnumStringLiteral values[] {
64021 { static_cast<uint32_t>(FunctionNullHandling::DEFAULT_NULL_HANDLING), "DEFAULT_NULL_HANDLING" },
64022 { static_cast<uint32_t>(FunctionNullHandling::SPECIAL_HANDLING), "SPECIAL_HANDLING" }
64023 };
64024 return values;
64025}

◆ GetFunctionStabilityValues()

const StringUtil::EnumStringLiteral * duckdb::GetFunctionStabilityValues ( )
private
64037 {
64038 static constexpr StringUtil::EnumStringLiteral values[] {
64039 { static_cast<uint32_t>(FunctionStability::CONSISTENT), "CONSISTENT" },
64040 { static_cast<uint32_t>(FunctionStability::VOLATILE), "VOLATILE" },
64041 { static_cast<uint32_t>(FunctionStability::CONSISTENT_WITHIN_QUERY), "CONSISTENT_WITHIN_QUERY" }
64042 };
64043 return values;
64044}

◆ GetGateStatusValues()

const StringUtil::EnumStringLiteral * duckdb::GetGateStatusValues ( )
private
64056 {
64057 static constexpr StringUtil::EnumStringLiteral values[] {
64058 { static_cast<uint32_t>(GateStatus::GATE_NOT_SET), "GATE_NOT_SET" },
64059 { static_cast<uint32_t>(GateStatus::GATE_SET), "GATE_SET" }
64060 };
64061 return values;
64062}

◆ GetGeometryStorageTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetGeometryStorageTypeValues ( )
private
64074 {
64075 static constexpr StringUtil::EnumStringLiteral values[] {
64076 { static_cast<uint32_t>(GeometryStorageType::SPATIAL), "SPATIAL" },
64077 { static_cast<uint32_t>(GeometryStorageType::WKB), "WKB" },
64078 { static_cast<uint32_t>(GeometryStorageType::POINT_XY), "POINT_XY" },
64079 { static_cast<uint32_t>(GeometryStorageType::LINESTRING_XY), "LINESTRING_XY" },
64080 { static_cast<uint32_t>(GeometryStorageType::POLYGON_XY), "POLYGON_XY" },
64081 { static_cast<uint32_t>(GeometryStorageType::MULTIPOINT_XY), "MULTIPOINT_XY" },
64082 { static_cast<uint32_t>(GeometryStorageType::MULTILINESTRING_XY), "MULTILINESTRING_XY" },
64083 { static_cast<uint32_t>(GeometryStorageType::MULTIPOLYGON_XY), "MULTIPOLYGON_XY" },
64084 { static_cast<uint32_t>(GeometryStorageType::POINT_XYZ), "POINT_XYZ" },
64085 { static_cast<uint32_t>(GeometryStorageType::LINESTRING_XYZ), "LINESTRING_XYZ" },
64086 { static_cast<uint32_t>(GeometryStorageType::POLYGON_XYZ), "POLYGON_XYZ" },
64087 { static_cast<uint32_t>(GeometryStorageType::MULTIPOINT_XYZ), "MULTIPOINT_XYZ" },
64088 { static_cast<uint32_t>(GeometryStorageType::MULTILINESTRING_XYZ), "MULTILINESTRING_XYZ" },
64089 { static_cast<uint32_t>(GeometryStorageType::MULTIPOLYGON_XYZ), "MULTIPOLYGON_XYZ" },
64090 { static_cast<uint32_t>(GeometryStorageType::POINT_XYM), "POINT_XYM" },
64091 { static_cast<uint32_t>(GeometryStorageType::LINESTRING_XYM), "LINESTRING_XYM" },
64092 { static_cast<uint32_t>(GeometryStorageType::POLYGON_XYM), "POLYGON_XYM" },
64093 { static_cast<uint32_t>(GeometryStorageType::MULTIPOINT_XYM), "MULTIPOINT_XYM" },
64094 { static_cast<uint32_t>(GeometryStorageType::MULTILINESTRING_XYM), "MULTILINESTRING_XYM" },
64095 { static_cast<uint32_t>(GeometryStorageType::MULTIPOLYGON_XYM), "MULTIPOLYGON_XYM" },
64096 { static_cast<uint32_t>(GeometryStorageType::POINT_XYZM), "POINT_XYZM" },
64097 { static_cast<uint32_t>(GeometryStorageType::LINESTRING_XYZM), "LINESTRING_XYZM" },
64098 { static_cast<uint32_t>(GeometryStorageType::POLYGON_XYZM), "POLYGON_XYZM" },
64099 { static_cast<uint32_t>(GeometryStorageType::MULTIPOINT_XYZM), "MULTIPOINT_XYZM" },
64100 { static_cast<uint32_t>(GeometryStorageType::MULTILINESTRING_XYZM), "MULTILINESTRING_XYZM" },
64101 { static_cast<uint32_t>(GeometryStorageType::MULTIPOLYGON_XYZM), "MULTIPOLYGON_XYZM" }
64102 };
64103 return values;
64104}

◆ GetGeometryTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetGeometryTypeValues ( )
private
64116 {
64117 static constexpr StringUtil::EnumStringLiteral values[] {
64118 { static_cast<uint32_t>(GeometryType::INVALID), "INVALID" },
64119 { static_cast<uint32_t>(GeometryType::POINT), "POINT" },
64120 { static_cast<uint32_t>(GeometryType::LINESTRING), "LINESTRING" },
64121 { static_cast<uint32_t>(GeometryType::POLYGON), "POLYGON" },
64122 { static_cast<uint32_t>(GeometryType::MULTIPOINT), "MULTIPOINT" },
64123 { static_cast<uint32_t>(GeometryType::MULTILINESTRING), "MULTILINESTRING" },
64124 { static_cast<uint32_t>(GeometryType::MULTIPOLYGON), "MULTIPOLYGON" },
64125 { static_cast<uint32_t>(GeometryType::GEOMETRYCOLLECTION), "GEOMETRYCOLLECTION" }
64126 };
64127 return values;
64128}

◆ GetHLLStorageTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetHLLStorageTypeValues ( )
private
64140 {
64141 static constexpr StringUtil::EnumStringLiteral values[] {
64142 { static_cast<uint32_t>(HLLStorageType::HLL_V1), "HLL_V1" },
64143 { static_cast<uint32_t>(HLLStorageType::HLL_V2), "HLL_V2" }
64144 };
64145 return values;
64146}

◆ GetHTTPStatusCodeValues()

const StringUtil::EnumStringLiteral * duckdb::GetHTTPStatusCodeValues ( )
private
64158 {
64159 static constexpr StringUtil::EnumStringLiteral values[] {
64160 { static_cast<uint32_t>(HTTPStatusCode::INVALID), "INVALID" },
64161 { static_cast<uint32_t>(HTTPStatusCode::Continue_100), "Continue_100" },
64162 { static_cast<uint32_t>(HTTPStatusCode::SwitchingProtocol_101), "SwitchingProtocol_101" },
64163 { static_cast<uint32_t>(HTTPStatusCode::Processing_102), "Processing_102" },
64164 { static_cast<uint32_t>(HTTPStatusCode::EarlyHints_103), "EarlyHints_103" },
64165 { static_cast<uint32_t>(HTTPStatusCode::OK_200), "OK_200" },
64166 { static_cast<uint32_t>(HTTPStatusCode::Created_201), "Created_201" },
64167 { static_cast<uint32_t>(HTTPStatusCode::Accepted_202), "Accepted_202" },
64168 { static_cast<uint32_t>(HTTPStatusCode::NonAuthoritativeInformation_203), "NonAuthoritativeInformation_203" },
64169 { static_cast<uint32_t>(HTTPStatusCode::NoContent_204), "NoContent_204" },
64170 { static_cast<uint32_t>(HTTPStatusCode::ResetContent_205), "ResetContent_205" },
64171 { static_cast<uint32_t>(HTTPStatusCode::PartialContent_206), "PartialContent_206" },
64172 { static_cast<uint32_t>(HTTPStatusCode::MultiStatus_207), "MultiStatus_207" },
64173 { static_cast<uint32_t>(HTTPStatusCode::AlreadyReported_208), "AlreadyReported_208" },
64174 { static_cast<uint32_t>(HTTPStatusCode::IMUsed_226), "IMUsed_226" },
64175 { static_cast<uint32_t>(HTTPStatusCode::MultipleChoices_300), "MultipleChoices_300" },
64176 { static_cast<uint32_t>(HTTPStatusCode::MovedPermanently_301), "MovedPermanently_301" },
64177 { static_cast<uint32_t>(HTTPStatusCode::Found_302), "Found_302" },
64178 { static_cast<uint32_t>(HTTPStatusCode::SeeOther_303), "SeeOther_303" },
64179 { static_cast<uint32_t>(HTTPStatusCode::NotModified_304), "NotModified_304" },
64180 { static_cast<uint32_t>(HTTPStatusCode::UseProxy_305), "UseProxy_305" },
64181 { static_cast<uint32_t>(HTTPStatusCode::unused_306), "unused_306" },
64182 { static_cast<uint32_t>(HTTPStatusCode::TemporaryRedirect_307), "TemporaryRedirect_307" },
64183 { static_cast<uint32_t>(HTTPStatusCode::PermanentRedirect_308), "PermanentRedirect_308" },
64184 { static_cast<uint32_t>(HTTPStatusCode::BadRequest_400), "BadRequest_400" },
64185 { static_cast<uint32_t>(HTTPStatusCode::Unauthorized_401), "Unauthorized_401" },
64186 { static_cast<uint32_t>(HTTPStatusCode::PaymentRequired_402), "PaymentRequired_402" },
64187 { static_cast<uint32_t>(HTTPStatusCode::Forbidden_403), "Forbidden_403" },
64188 { static_cast<uint32_t>(HTTPStatusCode::NotFound_404), "NotFound_404" },
64189 { static_cast<uint32_t>(HTTPStatusCode::MethodNotAllowed_405), "MethodNotAllowed_405" },
64190 { static_cast<uint32_t>(HTTPStatusCode::NotAcceptable_406), "NotAcceptable_406" },
64191 { static_cast<uint32_t>(HTTPStatusCode::ProxyAuthenticationRequired_407), "ProxyAuthenticationRequired_407" },
64192 { static_cast<uint32_t>(HTTPStatusCode::RequestTimeout_408), "RequestTimeout_408" },
64193 { static_cast<uint32_t>(HTTPStatusCode::Conflict_409), "Conflict_409" },
64194 { static_cast<uint32_t>(HTTPStatusCode::Gone_410), "Gone_410" },
64195 { static_cast<uint32_t>(HTTPStatusCode::LengthRequired_411), "LengthRequired_411" },
64196 { static_cast<uint32_t>(HTTPStatusCode::PreconditionFailed_412), "PreconditionFailed_412" },
64197 { static_cast<uint32_t>(HTTPStatusCode::PayloadTooLarge_413), "PayloadTooLarge_413" },
64198 { static_cast<uint32_t>(HTTPStatusCode::UriTooLong_414), "UriTooLong_414" },
64199 { static_cast<uint32_t>(HTTPStatusCode::UnsupportedMediaType_415), "UnsupportedMediaType_415" },
64200 { static_cast<uint32_t>(HTTPStatusCode::RangeNotSatisfiable_416), "RangeNotSatisfiable_416" },
64201 { static_cast<uint32_t>(HTTPStatusCode::ExpectationFailed_417), "ExpectationFailed_417" },
64202 { static_cast<uint32_t>(HTTPStatusCode::ImATeapot_418), "ImATeapot_418" },
64203 { static_cast<uint32_t>(HTTPStatusCode::MisdirectedRequest_421), "MisdirectedRequest_421" },
64204 { static_cast<uint32_t>(HTTPStatusCode::UnprocessableContent_422), "UnprocessableContent_422" },
64205 { static_cast<uint32_t>(HTTPStatusCode::Locked_423), "Locked_423" },
64206 { static_cast<uint32_t>(HTTPStatusCode::FailedDependency_424), "FailedDependency_424" },
64207 { static_cast<uint32_t>(HTTPStatusCode::TooEarly_425), "TooEarly_425" },
64208 { static_cast<uint32_t>(HTTPStatusCode::UpgradeRequired_426), "UpgradeRequired_426" },
64209 { static_cast<uint32_t>(HTTPStatusCode::PreconditionRequired_428), "PreconditionRequired_428" },
64210 { static_cast<uint32_t>(HTTPStatusCode::TooManyRequests_429), "TooManyRequests_429" },
64211 { static_cast<uint32_t>(HTTPStatusCode::RequestHeaderFieldsTooLarge_431), "RequestHeaderFieldsTooLarge_431" },
64212 { static_cast<uint32_t>(HTTPStatusCode::UnavailableForLegalReasons_451), "UnavailableForLegalReasons_451" },
64213 { static_cast<uint32_t>(HTTPStatusCode::InternalServerError_500), "InternalServerError_500" },
64214 { static_cast<uint32_t>(HTTPStatusCode::NotImplemented_501), "NotImplemented_501" },
64215 { static_cast<uint32_t>(HTTPStatusCode::BadGateway_502), "BadGateway_502" },
64216 { static_cast<uint32_t>(HTTPStatusCode::ServiceUnavailable_503), "ServiceUnavailable_503" },
64217 { static_cast<uint32_t>(HTTPStatusCode::GatewayTimeout_504), "GatewayTimeout_504" },
64218 { static_cast<uint32_t>(HTTPStatusCode::HttpVersionNotSupported_505), "HttpVersionNotSupported_505" },
64219 { static_cast<uint32_t>(HTTPStatusCode::VariantAlsoNegotiates_506), "VariantAlsoNegotiates_506" },
64220 { static_cast<uint32_t>(HTTPStatusCode::InsufficientStorage_507), "InsufficientStorage_507" },
64221 { static_cast<uint32_t>(HTTPStatusCode::LoopDetected_508), "LoopDetected_508" },
64222 { static_cast<uint32_t>(HTTPStatusCode::NotExtended_510), "NotExtended_510" },
64223 { static_cast<uint32_t>(HTTPStatusCode::NetworkAuthenticationRequired_511), "NetworkAuthenticationRequired_511" }
64224 };
64225 return values;
64226}

◆ GetIndexAppendModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetIndexAppendModeValues ( )
private
64238 {
64239 static constexpr StringUtil::EnumStringLiteral values[] {
64240 { static_cast<uint32_t>(IndexAppendMode::DEFAULT), "DEFAULT" },
64241 { static_cast<uint32_t>(IndexAppendMode::IGNORE_DUPLICATES), "IGNORE_DUPLICATES" },
64242 { static_cast<uint32_t>(IndexAppendMode::INSERT_DUPLICATES), "INSERT_DUPLICATES" }
64243 };
64244 return values;
64245}

◆ GetIndexBindStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetIndexBindStateValues ( )
private
64257 {
64258 static constexpr StringUtil::EnumStringLiteral values[] {
64259 { static_cast<uint32_t>(IndexBindState::UNBOUND), "UNBOUND" },
64260 { static_cast<uint32_t>(IndexBindState::BINDING), "BINDING" },
64261 { static_cast<uint32_t>(IndexBindState::BOUND), "BOUND" }
64262 };
64263 return values;
64264}

◆ GetIndexConstraintTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetIndexConstraintTypeValues ( )
private
64276 {
64277 static constexpr StringUtil::EnumStringLiteral values[] {
64278 { static_cast<uint32_t>(IndexConstraintType::NONE), "NONE" },
64279 { static_cast<uint32_t>(IndexConstraintType::UNIQUE), "UNIQUE" },
64280 { static_cast<uint32_t>(IndexConstraintType::PRIMARY), "PRIMARY" },
64281 { static_cast<uint32_t>(IndexConstraintType::FOREIGN), "FOREIGN" }
64282 };
64283 return values;
64284}

◆ GetInsertColumnOrderValues()

const StringUtil::EnumStringLiteral * duckdb::GetInsertColumnOrderValues ( )
private
64296 {
64297 static constexpr StringUtil::EnumStringLiteral values[] {
64298 { static_cast<uint32_t>(InsertColumnOrder::INSERT_BY_POSITION), "INSERT_BY_POSITION" },
64299 { static_cast<uint32_t>(InsertColumnOrder::INSERT_BY_NAME), "INSERT_BY_NAME" }
64300 };
64301 return values;
64302}

◆ GetInterruptModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetInterruptModeValues ( )
private
64314 {
64315 static constexpr StringUtil::EnumStringLiteral values[] {
64316 { static_cast<uint32_t>(InterruptMode::NO_INTERRUPTS), "NO_INTERRUPTS" },
64317 { static_cast<uint32_t>(InterruptMode::TASK), "TASK" },
64318 { static_cast<uint32_t>(InterruptMode::BLOCKING), "BLOCKING" }
64319 };
64320 return values;
64321}

◆ GetJoinRefTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetJoinRefTypeValues ( )
private
64333 {
64334 static constexpr StringUtil::EnumStringLiteral values[] {
64335 { static_cast<uint32_t>(JoinRefType::REGULAR), "REGULAR" },
64336 { static_cast<uint32_t>(JoinRefType::NATURAL), "NATURAL" },
64337 { static_cast<uint32_t>(JoinRefType::CROSS), "CROSS" },
64338 { static_cast<uint32_t>(JoinRefType::POSITIONAL), "POSITIONAL" },
64339 { static_cast<uint32_t>(JoinRefType::ASOF), "ASOF" },
64340 { static_cast<uint32_t>(JoinRefType::DEPENDENT), "DEPENDENT" }
64341 };
64342 return values;
64343}

◆ GetJoinTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetJoinTypeValues ( )
private
64355 {
64356 static constexpr StringUtil::EnumStringLiteral values[] {
64357 { static_cast<uint32_t>(JoinType::INVALID), "INVALID" },
64358 { static_cast<uint32_t>(JoinType::LEFT), "LEFT" },
64359 { static_cast<uint32_t>(JoinType::RIGHT), "RIGHT" },
64360 { static_cast<uint32_t>(JoinType::INNER), "INNER" },
64361 { static_cast<uint32_t>(JoinType::OUTER), "FULL" },
64362 { static_cast<uint32_t>(JoinType::SEMI), "SEMI" },
64363 { static_cast<uint32_t>(JoinType::ANTI), "ANTI" },
64364 { static_cast<uint32_t>(JoinType::MARK), "MARK" },
64365 { static_cast<uint32_t>(JoinType::SINGLE), "SINGLE" },
64366 { static_cast<uint32_t>(JoinType::RIGHT_SEMI), "RIGHT_SEMI" },
64367 { static_cast<uint32_t>(JoinType::RIGHT_ANTI), "RIGHT_ANTI" }
64368 };
64369 return values;
64370}

◆ GetKeywordCategoryValues()

const StringUtil::EnumStringLiteral * duckdb::GetKeywordCategoryValues ( )
private
64382 {
64383 static constexpr StringUtil::EnumStringLiteral values[] {
64384 { static_cast<uint32_t>(KeywordCategory::KEYWORD_RESERVED), "KEYWORD_RESERVED" },
64385 { static_cast<uint32_t>(KeywordCategory::KEYWORD_UNRESERVED), "KEYWORD_UNRESERVED" },
64386 { static_cast<uint32_t>(KeywordCategory::KEYWORD_TYPE_FUNC), "KEYWORD_TYPE_FUNC" },
64387 { static_cast<uint32_t>(KeywordCategory::KEYWORD_COL_NAME), "KEYWORD_COL_NAME" },
64388 { static_cast<uint32_t>(KeywordCategory::KEYWORD_NONE), "KEYWORD_NONE" }
64389 };
64390 return values;
64391}

◆ GetLambdaSyntaxValues()

const StringUtil::EnumStringLiteral * duckdb::GetLambdaSyntaxValues ( )
private
64403 {
64404 static constexpr StringUtil::EnumStringLiteral values[] {
64405 { static_cast<uint32_t>(LambdaSyntax::DEFAULT), "DEFAULT" },
64406 { static_cast<uint32_t>(LambdaSyntax::ENABLE_SINGLE_ARROW), "ENABLE_SINGLE_ARROW" },
64407 { static_cast<uint32_t>(LambdaSyntax::DISABLE_SINGLE_ARROW), "DISABLE_SINGLE_ARROW" }
64408 };
64409 return values;
64410}

◆ GetLambdaSyntaxTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLambdaSyntaxTypeValues ( )
private
64422 {
64423 static constexpr StringUtil::EnumStringLiteral values[] {
64424 { static_cast<uint32_t>(LambdaSyntaxType::SINGLE_ARROW_STORAGE), "SINGLE_ARROW_STORAGE" },
64425 { static_cast<uint32_t>(LambdaSyntaxType::SINGLE_ARROW), "SINGLE_ARROW" },
64426 { static_cast<uint32_t>(LambdaSyntaxType::LAMBDA_KEYWORD), "LAMBDA_KEYWORD" }
64427 };
64428 return values;
64429}

◆ GetLimitNodeTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLimitNodeTypeValues ( )
private
64441 {
64442 static constexpr StringUtil::EnumStringLiteral values[] {
64443 { static_cast<uint32_t>(LimitNodeType::UNSET), "UNSET" },
64444 { static_cast<uint32_t>(LimitNodeType::CONSTANT_VALUE), "CONSTANT_VALUE" },
64445 { static_cast<uint32_t>(LimitNodeType::CONSTANT_PERCENTAGE), "CONSTANT_PERCENTAGE" },
64446 { static_cast<uint32_t>(LimitNodeType::EXPRESSION_VALUE), "EXPRESSION_VALUE" },
64447 { static_cast<uint32_t>(LimitNodeType::EXPRESSION_PERCENTAGE), "EXPRESSION_PERCENTAGE" }
64448 };
64449 return values;
64450}

◆ GetLoadTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLoadTypeValues ( )
private
64462 {
64463 static constexpr StringUtil::EnumStringLiteral values[] {
64464 { static_cast<uint32_t>(LoadType::LOAD), "LOAD" },
64465 { static_cast<uint32_t>(LoadType::INSTALL), "INSTALL" },
64466 { static_cast<uint32_t>(LoadType::FORCE_INSTALL), "FORCE_INSTALL" }
64467 };
64468 return values;
64469}

◆ GetLogContextScopeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLogContextScopeValues ( )
private
64481 {
64482 static constexpr StringUtil::EnumStringLiteral values[] {
64483 { static_cast<uint32_t>(LogContextScope::DATABASE), "DATABASE" },
64484 { static_cast<uint32_t>(LogContextScope::CONNECTION), "CONNECTION" },
64485 { static_cast<uint32_t>(LogContextScope::THREAD), "THREAD" }
64486 };
64487 return values;
64488}

◆ GetLogLevelValues()

const StringUtil::EnumStringLiteral * duckdb::GetLogLevelValues ( )
private
64500 {
64501 static constexpr StringUtil::EnumStringLiteral values[] {
64502 { static_cast<uint32_t>(LogLevel::LOG_TRACE), "TRACE" },
64503 { static_cast<uint32_t>(LogLevel::LOG_DEBUG), "DEBUG" },
64504 { static_cast<uint32_t>(LogLevel::LOG_INFO), "INFO" },
64505 { static_cast<uint32_t>(LogLevel::LOG_WARNING), "WARNING" },
64506 { static_cast<uint32_t>(LogLevel::LOG_ERROR), "ERROR" },
64507 { static_cast<uint32_t>(LogLevel::LOG_FATAL), "FATAL" }
64508 };
64509 return values;
64510}

◆ GetLogModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLogModeValues ( )
private
64522 {
64523 static constexpr StringUtil::EnumStringLiteral values[] {
64524 { static_cast<uint32_t>(LogMode::LEVEL_ONLY), "LEVEL_ONLY" },
64525 { static_cast<uint32_t>(LogMode::DISABLE_SELECTED), "DISABLE_SELECTED" },
64526 { static_cast<uint32_t>(LogMode::ENABLE_SELECTED), "ENABLE_SELECTED" }
64527 };
64528 return values;
64529}

◆ GetLoggingTargetTableValues()

const StringUtil::EnumStringLiteral * duckdb::GetLoggingTargetTableValues ( )
private
64541 {
64542 static constexpr StringUtil::EnumStringLiteral values[] {
64543 { static_cast<uint32_t>(LoggingTargetTable::ALL_LOGS), "ALL_LOGS" },
64544 { static_cast<uint32_t>(LoggingTargetTable::LOG_ENTRIES), "LOG_ENTRIES" },
64545 { static_cast<uint32_t>(LoggingTargetTable::LOG_CONTEXTS), "LOG_CONTEXTS" }
64546 };
64547 return values;
64548}

◆ GetLogicalOperatorTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLogicalOperatorTypeValues ( )
private
64560 {
64561 static constexpr StringUtil::EnumStringLiteral values[] {
64562 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_INVALID), "LOGICAL_INVALID" },
64563 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_PROJECTION), "LOGICAL_PROJECTION" },
64564 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_FILTER), "LOGICAL_FILTER" },
64565 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_AGGREGATE_AND_GROUP_BY), "LOGICAL_AGGREGATE_AND_GROUP_BY" },
64566 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_WINDOW), "LOGICAL_WINDOW" },
64567 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_UNNEST), "LOGICAL_UNNEST" },
64568 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_LIMIT), "LOGICAL_LIMIT" },
64569 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_ORDER_BY), "LOGICAL_ORDER_BY" },
64570 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_TOP_N), "LOGICAL_TOP_N" },
64571 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_COPY_TO_FILE), "LOGICAL_COPY_TO_FILE" },
64572 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DISTINCT), "LOGICAL_DISTINCT" },
64573 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_SAMPLE), "LOGICAL_SAMPLE" },
64574 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_PIVOT), "LOGICAL_PIVOT" },
64575 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_COPY_DATABASE), "LOGICAL_COPY_DATABASE" },
64576 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_GET), "LOGICAL_GET" },
64577 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CHUNK_GET), "LOGICAL_CHUNK_GET" },
64578 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DELIM_GET), "LOGICAL_DELIM_GET" },
64579 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXPRESSION_GET), "LOGICAL_EXPRESSION_GET" },
64580 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DUMMY_SCAN), "LOGICAL_DUMMY_SCAN" },
64581 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EMPTY_RESULT), "LOGICAL_EMPTY_RESULT" },
64582 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CTE_REF), "LOGICAL_CTE_REF" },
64583 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_JOIN), "LOGICAL_JOIN" },
64584 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DELIM_JOIN), "LOGICAL_DELIM_JOIN" },
64585 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_COMPARISON_JOIN), "LOGICAL_COMPARISON_JOIN" },
64586 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_ANY_JOIN), "LOGICAL_ANY_JOIN" },
64587 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CROSS_PRODUCT), "LOGICAL_CROSS_PRODUCT" },
64588 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_POSITIONAL_JOIN), "LOGICAL_POSITIONAL_JOIN" },
64589 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_ASOF_JOIN), "LOGICAL_ASOF_JOIN" },
64590 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DEPENDENT_JOIN), "LOGICAL_DEPENDENT_JOIN" },
64591 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_UNION), "LOGICAL_UNION" },
64592 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXCEPT), "LOGICAL_EXCEPT" },
64593 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_INTERSECT), "LOGICAL_INTERSECT" },
64594 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_RECURSIVE_CTE), "LOGICAL_RECURSIVE_CTE" },
64595 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_MATERIALIZED_CTE), "LOGICAL_MATERIALIZED_CTE" },
64596 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_INSERT), "LOGICAL_INSERT" },
64597 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DELETE), "LOGICAL_DELETE" },
64598 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_UPDATE), "LOGICAL_UPDATE" },
64599 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_MERGE_INTO), "LOGICAL_MERGE_INTO" },
64600 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_ALTER), "LOGICAL_ALTER" },
64601 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_TABLE), "LOGICAL_CREATE_TABLE" },
64602 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_INDEX), "LOGICAL_CREATE_INDEX" },
64603 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_SEQUENCE), "LOGICAL_CREATE_SEQUENCE" },
64604 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_VIEW), "LOGICAL_CREATE_VIEW" },
64605 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_SCHEMA), "LOGICAL_CREATE_SCHEMA" },
64606 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_MACRO), "LOGICAL_CREATE_MACRO" },
64607 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DROP), "LOGICAL_DROP" },
64608 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_PRAGMA), "LOGICAL_PRAGMA" },
64609 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_TRANSACTION), "LOGICAL_TRANSACTION" },
64610 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_TYPE), "LOGICAL_CREATE_TYPE" },
64611 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_ATTACH), "LOGICAL_ATTACH" },
64612 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_DETACH), "LOGICAL_DETACH" },
64613 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXPLAIN), "LOGICAL_EXPLAIN" },
64614 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_PREPARE), "LOGICAL_PREPARE" },
64615 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXECUTE), "LOGICAL_EXECUTE" },
64616 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXPORT), "LOGICAL_EXPORT" },
64617 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_VACUUM), "LOGICAL_VACUUM" },
64618 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_SET), "LOGICAL_SET" },
64619 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_LOAD), "LOGICAL_LOAD" },
64620 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_RESET), "LOGICAL_RESET" },
64621 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_UPDATE_EXTENSIONS), "LOGICAL_UPDATE_EXTENSIONS" },
64622 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_CREATE_SECRET), "LOGICAL_CREATE_SECRET" },
64623 { static_cast<uint32_t>(LogicalOperatorType::LOGICAL_EXTENSION_OPERATOR), "LOGICAL_EXTENSION_OPERATOR" }
64624 };
64625 return values;
64626}

◆ GetLogicalTypeIdValues()

const StringUtil::EnumStringLiteral * duckdb::GetLogicalTypeIdValues ( )
private
64638 {
64639 static constexpr StringUtil::EnumStringLiteral values[] {
64640 { static_cast<uint32_t>(LogicalTypeId::INVALID), "INVALID" },
64641 { static_cast<uint32_t>(LogicalTypeId::SQLNULL), "NULL" },
64642 { static_cast<uint32_t>(LogicalTypeId::UNKNOWN), "UNKNOWN" },
64643 { static_cast<uint32_t>(LogicalTypeId::ANY), "ANY" },
64644 { static_cast<uint32_t>(LogicalTypeId::UNBOUND), "UNBOUND" },
64645 { static_cast<uint32_t>(LogicalTypeId::TEMPLATE), "TEMPLATE" },
64646 { static_cast<uint32_t>(LogicalTypeId::TYPE), "TYPE" },
64647 { static_cast<uint32_t>(LogicalTypeId::BOOLEAN), "BOOLEAN" },
64648 { static_cast<uint32_t>(LogicalTypeId::TINYINT), "TINYINT" },
64649 { static_cast<uint32_t>(LogicalTypeId::SMALLINT), "SMALLINT" },
64650 { static_cast<uint32_t>(LogicalTypeId::INTEGER), "INTEGER" },
64651 { static_cast<uint32_t>(LogicalTypeId::BIGINT), "BIGINT" },
64652 { static_cast<uint32_t>(LogicalTypeId::DATE), "DATE" },
64653 { static_cast<uint32_t>(LogicalTypeId::TIME), "TIME" },
64654 { static_cast<uint32_t>(LogicalTypeId::TIMESTAMP_SEC), "TIMESTAMP_S" },
64655 { static_cast<uint32_t>(LogicalTypeId::TIMESTAMP_MS), "TIMESTAMP_MS" },
64656 { static_cast<uint32_t>(LogicalTypeId::TIMESTAMP), "TIMESTAMP" },
64657 { static_cast<uint32_t>(LogicalTypeId::TIMESTAMP_NS), "TIMESTAMP_NS" },
64658 { static_cast<uint32_t>(LogicalTypeId::DECIMAL), "DECIMAL" },
64659 { static_cast<uint32_t>(LogicalTypeId::FLOAT), "FLOAT" },
64660 { static_cast<uint32_t>(LogicalTypeId::DOUBLE), "DOUBLE" },
64661 { static_cast<uint32_t>(LogicalTypeId::CHAR), "CHAR" },
64662 { static_cast<uint32_t>(LogicalTypeId::VARCHAR), "VARCHAR" },
64663 { static_cast<uint32_t>(LogicalTypeId::BLOB), "BLOB" },
64664 { static_cast<uint32_t>(LogicalTypeId::INTERVAL), "INTERVAL" },
64665 { static_cast<uint32_t>(LogicalTypeId::UTINYINT), "UTINYINT" },
64666 { static_cast<uint32_t>(LogicalTypeId::USMALLINT), "USMALLINT" },
64667 { static_cast<uint32_t>(LogicalTypeId::UINTEGER), "UINTEGER" },
64668 { static_cast<uint32_t>(LogicalTypeId::UBIGINT), "UBIGINT" },
64669 { static_cast<uint32_t>(LogicalTypeId::TIMESTAMP_TZ), "TIMESTAMP WITH TIME ZONE" },
64670 { static_cast<uint32_t>(LogicalTypeId::TIME_TZ), "TIME WITH TIME ZONE" },
64671 { static_cast<uint32_t>(LogicalTypeId::TIME_NS), "TIME_NS" },
64672 { static_cast<uint32_t>(LogicalTypeId::BIT), "BIT" },
64673 { static_cast<uint32_t>(LogicalTypeId::STRING_LITERAL), "STRING_LITERAL" },
64674 { static_cast<uint32_t>(LogicalTypeId::INTEGER_LITERAL), "INTEGER_LITERAL" },
64675 { static_cast<uint32_t>(LogicalTypeId::BIGNUM), "BIGNUM" },
64676 { static_cast<uint32_t>(LogicalTypeId::UHUGEINT), "UHUGEINT" },
64677 { static_cast<uint32_t>(LogicalTypeId::HUGEINT), "HUGEINT" },
64678 { static_cast<uint32_t>(LogicalTypeId::POINTER), "POINTER" },
64679 { static_cast<uint32_t>(LogicalTypeId::VALIDITY), "VALIDITY" },
64680 { static_cast<uint32_t>(LogicalTypeId::UUID), "UUID" },
64681 { static_cast<uint32_t>(LogicalTypeId::GEOMETRY), "GEOMETRY" },
64682 { static_cast<uint32_t>(LogicalTypeId::STRUCT), "STRUCT" },
64683 { static_cast<uint32_t>(LogicalTypeId::LIST), "LIST" },
64684 { static_cast<uint32_t>(LogicalTypeId::MAP), "MAP" },
64685 { static_cast<uint32_t>(LogicalTypeId::TABLE), "TABLE" },
64686 { static_cast<uint32_t>(LogicalTypeId::ENUM), "ENUM" },
64687 { static_cast<uint32_t>(LogicalTypeId::AGGREGATE_STATE), "AGGREGATE_STATE" },
64688 { static_cast<uint32_t>(LogicalTypeId::LAMBDA), "LAMBDA" },
64689 { static_cast<uint32_t>(LogicalTypeId::UNION), "UNION" },
64690 { static_cast<uint32_t>(LogicalTypeId::ARRAY), "ARRAY" },
64691 { static_cast<uint32_t>(LogicalTypeId::VARIANT), "VARIANT" }
64692 };
64693 return values;
64694}

◆ GetLookupResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetLookupResultTypeValues ( )
private
64706 {
64707 static constexpr StringUtil::EnumStringLiteral values[] {
64708 { static_cast<uint32_t>(LookupResultType::LOOKUP_MISS), "LOOKUP_MISS" },
64709 { static_cast<uint32_t>(LookupResultType::LOOKUP_HIT), "LOOKUP_HIT" },
64710 { static_cast<uint32_t>(LookupResultType::LOOKUP_NULL), "LOOKUP_NULL" }
64711 };
64712 return values;
64713}

◆ GetMacroTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetMacroTypeValues ( )
private
64725 {
64726 static constexpr StringUtil::EnumStringLiteral values[] {
64727 { static_cast<uint32_t>(MacroType::VOID_MACRO), "VOID_MACRO" },
64728 { static_cast<uint32_t>(MacroType::TABLE_MACRO), "TABLE_MACRO" },
64729 { static_cast<uint32_t>(MacroType::SCALAR_MACRO), "SCALAR_MACRO" }
64730 };
64731 return values;
64732}

◆ GetMapInvalidReasonValues()

const StringUtil::EnumStringLiteral * duckdb::GetMapInvalidReasonValues ( )
private
64744 {
64745 static constexpr StringUtil::EnumStringLiteral values[] {
64746 { static_cast<uint32_t>(MapInvalidReason::VALID), "VALID" },
64747 { static_cast<uint32_t>(MapInvalidReason::NULL_KEY), "NULL_KEY" },
64748 { static_cast<uint32_t>(MapInvalidReason::DUPLICATE_KEY), "DUPLICATE_KEY" },
64749 { static_cast<uint32_t>(MapInvalidReason::NOT_ALIGNED), "NOT_ALIGNED" },
64750 { static_cast<uint32_t>(MapInvalidReason::INVALID_PARAMS), "INVALID_PARAMS" }
64751 };
64752 return values;
64753}

◆ GetMemoryTagValues()

const StringUtil::EnumStringLiteral * duckdb::GetMemoryTagValues ( )
private
64765 {
64766 static constexpr StringUtil::EnumStringLiteral values[] {
64767 { static_cast<uint32_t>(MemoryTag::BASE_TABLE), "BASE_TABLE" },
64768 { static_cast<uint32_t>(MemoryTag::HASH_TABLE), "HASH_TABLE" },
64769 { static_cast<uint32_t>(MemoryTag::PARQUET_READER), "PARQUET_READER" },
64770 { static_cast<uint32_t>(MemoryTag::CSV_READER), "CSV_READER" },
64771 { static_cast<uint32_t>(MemoryTag::ORDER_BY), "ORDER_BY" },
64772 { static_cast<uint32_t>(MemoryTag::ART_INDEX), "ART_INDEX" },
64773 { static_cast<uint32_t>(MemoryTag::COLUMN_DATA), "COLUMN_DATA" },
64774 { static_cast<uint32_t>(MemoryTag::METADATA), "METADATA" },
64775 { static_cast<uint32_t>(MemoryTag::OVERFLOW_STRINGS), "OVERFLOW_STRINGS" },
64776 { static_cast<uint32_t>(MemoryTag::IN_MEMORY_TABLE), "IN_MEMORY_TABLE" },
64777 { static_cast<uint32_t>(MemoryTag::ALLOCATOR), "ALLOCATOR" },
64778 { static_cast<uint32_t>(MemoryTag::EXTENSION), "EXTENSION" },
64779 { static_cast<uint32_t>(MemoryTag::TRANSACTION), "TRANSACTION" },
64780 { static_cast<uint32_t>(MemoryTag::EXTERNAL_FILE_CACHE), "EXTERNAL_FILE_CACHE" },
64781 { static_cast<uint32_t>(MemoryTag::WINDOW), "WINDOW" },
64782 { static_cast<uint32_t>(MemoryTag::OBJECT_CACHE), "OBJECT_CACHE" },
64783 { static_cast<uint32_t>(MemoryTag::UNKNOWN), "UNKNOWN" }
64784 };
64785 return values;
64786}

◆ GetMergeActionConditionValues()

const StringUtil::EnumStringLiteral * duckdb::GetMergeActionConditionValues ( )
private
64798 {
64799 static constexpr StringUtil::EnumStringLiteral values[] {
64800 { static_cast<uint32_t>(MergeActionCondition::WHEN_MATCHED), "WHEN_MATCHED" },
64801 { static_cast<uint32_t>(MergeActionCondition::WHEN_NOT_MATCHED_BY_SOURCE), "WHEN_NOT_MATCHED_BY_SOURCE" },
64802 { static_cast<uint32_t>(MergeActionCondition::WHEN_NOT_MATCHED_BY_TARGET), "WHEN_NOT_MATCHED_BY_TARGET" }
64803 };
64804 return values;
64805}

◆ GetMergeActionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetMergeActionTypeValues ( )
private
64817 {
64818 static constexpr StringUtil::EnumStringLiteral values[] {
64819 { static_cast<uint32_t>(MergeActionType::MERGE_UPDATE), "MERGE_UPDATE" },
64820 { static_cast<uint32_t>(MergeActionType::MERGE_DELETE), "MERGE_DELETE" },
64821 { static_cast<uint32_t>(MergeActionType::MERGE_INSERT), "MERGE_INSERT" },
64822 { static_cast<uint32_t>(MergeActionType::MERGE_DO_NOTHING), "MERGE_DO_NOTHING" },
64823 { static_cast<uint32_t>(MergeActionType::MERGE_ERROR), "MERGE_ERROR" }
64824 };
64825 return values;
64826}

◆ GetMetaPipelineTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetMetaPipelineTypeValues ( )
private
64838 {
64839 static constexpr StringUtil::EnumStringLiteral values[] {
64840 { static_cast<uint32_t>(MetaPipelineType::REGULAR), "REGULAR" },
64841 { static_cast<uint32_t>(MetaPipelineType::JOIN_BUILD), "JOIN_BUILD" }
64842 };
64843 return values;
64844}

◆ GetMetricGroupValues()

const StringUtil::EnumStringLiteral * duckdb::GetMetricGroupValues ( )
private
64856 {
64857 static constexpr StringUtil::EnumStringLiteral values[] {
64858 { static_cast<uint32_t>(MetricGroup::ALL), "ALL" },
64859 { static_cast<uint32_t>(MetricGroup::CORE), "CORE" },
64860 { static_cast<uint32_t>(MetricGroup::DEFAULT), "DEFAULT" },
64861 { static_cast<uint32_t>(MetricGroup::EXECUTION), "EXECUTION" },
64862 { static_cast<uint32_t>(MetricGroup::FILE), "FILE" },
64863 { static_cast<uint32_t>(MetricGroup::OPERATOR), "OPERATOR" },
64864 { static_cast<uint32_t>(MetricGroup::OPTIMIZER), "OPTIMIZER" },
64865 { static_cast<uint32_t>(MetricGroup::PHASE_TIMING), "PHASE_TIMING" },
64866 { static_cast<uint32_t>(MetricGroup::INVALID), "INVALID" }
64867 };
64868 return values;
64869}

◆ GetMetricTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetMetricTypeValues ( )
private
64881 {
64882 static constexpr StringUtil::EnumStringLiteral values[] {
64883 { static_cast<uint32_t>(MetricType::CPU_TIME), "CPU_TIME" },
64884 { static_cast<uint32_t>(MetricType::CUMULATIVE_CARDINALITY), "CUMULATIVE_CARDINALITY" },
64885 { static_cast<uint32_t>(MetricType::CUMULATIVE_ROWS_SCANNED), "CUMULATIVE_ROWS_SCANNED" },
64886 { static_cast<uint32_t>(MetricType::EXTRA_INFO), "EXTRA_INFO" },
64887 { static_cast<uint32_t>(MetricType::LATENCY), "LATENCY" },
64888 { static_cast<uint32_t>(MetricType::QUERY_NAME), "QUERY_NAME" },
64889 { static_cast<uint32_t>(MetricType::RESULT_SET_SIZE), "RESULT_SET_SIZE" },
64890 { static_cast<uint32_t>(MetricType::ROWS_RETURNED), "ROWS_RETURNED" },
64891 { static_cast<uint32_t>(MetricType::BLOCKED_THREAD_TIME), "BLOCKED_THREAD_TIME" },
64892 { static_cast<uint32_t>(MetricType::SYSTEM_PEAK_BUFFER_MEMORY), "SYSTEM_PEAK_BUFFER_MEMORY" },
64893 { static_cast<uint32_t>(MetricType::SYSTEM_PEAK_TEMP_DIR_SIZE), "SYSTEM_PEAK_TEMP_DIR_SIZE" },
64894 { static_cast<uint32_t>(MetricType::TOTAL_MEMORY_ALLOCATED), "TOTAL_MEMORY_ALLOCATED" },
64895 { static_cast<uint32_t>(MetricType::ATTACH_LOAD_STORAGE_LATENCY), "ATTACH_LOAD_STORAGE_LATENCY" },
64896 { static_cast<uint32_t>(MetricType::ATTACH_REPLAY_WAL_LATENCY), "ATTACH_REPLAY_WAL_LATENCY" },
64897 { static_cast<uint32_t>(MetricType::CHECKPOINT_LATENCY), "CHECKPOINT_LATENCY" },
64898 { static_cast<uint32_t>(MetricType::COMMIT_LOCAL_STORAGE_LATENCY), "COMMIT_LOCAL_STORAGE_LATENCY" },
64899 { static_cast<uint32_t>(MetricType::TOTAL_BYTES_READ), "TOTAL_BYTES_READ" },
64900 { static_cast<uint32_t>(MetricType::TOTAL_BYTES_WRITTEN), "TOTAL_BYTES_WRITTEN" },
64901 { static_cast<uint32_t>(MetricType::WAITING_TO_ATTACH_LATENCY), "WAITING_TO_ATTACH_LATENCY" },
64902 { static_cast<uint32_t>(MetricType::WAL_REPLAY_ENTRY_COUNT), "WAL_REPLAY_ENTRY_COUNT" },
64903 { static_cast<uint32_t>(MetricType::WRITE_TO_WAL_LATENCY), "WRITE_TO_WAL_LATENCY" },
64904 { static_cast<uint32_t>(MetricType::OPERATOR_CARDINALITY), "OPERATOR_CARDINALITY" },
64905 { static_cast<uint32_t>(MetricType::OPERATOR_NAME), "OPERATOR_NAME" },
64906 { static_cast<uint32_t>(MetricType::OPERATOR_ROWS_SCANNED), "OPERATOR_ROWS_SCANNED" },
64907 { static_cast<uint32_t>(MetricType::OPERATOR_TIMING), "OPERATOR_TIMING" },
64908 { static_cast<uint32_t>(MetricType::OPERATOR_TYPE), "OPERATOR_TYPE" },
64909 { static_cast<uint32_t>(MetricType::OPTIMIZER_EXPRESSION_REWRITER), "OPTIMIZER_EXPRESSION_REWRITER" },
64910 { static_cast<uint32_t>(MetricType::OPTIMIZER_FILTER_PULLUP), "OPTIMIZER_FILTER_PULLUP" },
64911 { static_cast<uint32_t>(MetricType::OPTIMIZER_FILTER_PUSHDOWN), "OPTIMIZER_FILTER_PUSHDOWN" },
64912 { static_cast<uint32_t>(MetricType::OPTIMIZER_EMPTY_RESULT_PULLUP), "OPTIMIZER_EMPTY_RESULT_PULLUP" },
64913 { static_cast<uint32_t>(MetricType::OPTIMIZER_CTE_FILTER_PUSHER), "OPTIMIZER_CTE_FILTER_PUSHER" },
64914 { static_cast<uint32_t>(MetricType::OPTIMIZER_REGEX_RANGE), "OPTIMIZER_REGEX_RANGE" },
64915 { static_cast<uint32_t>(MetricType::OPTIMIZER_IN_CLAUSE), "OPTIMIZER_IN_CLAUSE" },
64916 { static_cast<uint32_t>(MetricType::OPTIMIZER_JOIN_ORDER), "OPTIMIZER_JOIN_ORDER" },
64917 { static_cast<uint32_t>(MetricType::OPTIMIZER_DELIMINATOR), "OPTIMIZER_DELIMINATOR" },
64918 { static_cast<uint32_t>(MetricType::OPTIMIZER_UNNEST_REWRITER), "OPTIMIZER_UNNEST_REWRITER" },
64919 { static_cast<uint32_t>(MetricType::OPTIMIZER_UNUSED_COLUMNS), "OPTIMIZER_UNUSED_COLUMNS" },
64920 { static_cast<uint32_t>(MetricType::OPTIMIZER_STATISTICS_PROPAGATION), "OPTIMIZER_STATISTICS_PROPAGATION" },
64921 { static_cast<uint32_t>(MetricType::OPTIMIZER_COMMON_SUBEXPRESSIONS), "OPTIMIZER_COMMON_SUBEXPRESSIONS" },
64922 { static_cast<uint32_t>(MetricType::OPTIMIZER_COMMON_AGGREGATE), "OPTIMIZER_COMMON_AGGREGATE" },
64923 { static_cast<uint32_t>(MetricType::OPTIMIZER_COLUMN_LIFETIME), "OPTIMIZER_COLUMN_LIFETIME" },
64924 { static_cast<uint32_t>(MetricType::OPTIMIZER_BUILD_SIDE_PROBE_SIDE), "OPTIMIZER_BUILD_SIDE_PROBE_SIDE" },
64925 { static_cast<uint32_t>(MetricType::OPTIMIZER_LIMIT_PUSHDOWN), "OPTIMIZER_LIMIT_PUSHDOWN" },
64926 { static_cast<uint32_t>(MetricType::OPTIMIZER_TOP_N), "OPTIMIZER_TOP_N" },
64927 { static_cast<uint32_t>(MetricType::OPTIMIZER_COMPRESSED_MATERIALIZATION), "OPTIMIZER_COMPRESSED_MATERIALIZATION" },
64928 { static_cast<uint32_t>(MetricType::OPTIMIZER_DUPLICATE_GROUPS), "OPTIMIZER_DUPLICATE_GROUPS" },
64929 { static_cast<uint32_t>(MetricType::OPTIMIZER_REORDER_FILTER), "OPTIMIZER_REORDER_FILTER" },
64930 { static_cast<uint32_t>(MetricType::OPTIMIZER_SAMPLING_PUSHDOWN), "OPTIMIZER_SAMPLING_PUSHDOWN" },
64931 { static_cast<uint32_t>(MetricType::OPTIMIZER_JOIN_FILTER_PUSHDOWN), "OPTIMIZER_JOIN_FILTER_PUSHDOWN" },
64932 { static_cast<uint32_t>(MetricType::OPTIMIZER_EXTENSION), "OPTIMIZER_EXTENSION" },
64933 { static_cast<uint32_t>(MetricType::OPTIMIZER_MATERIALIZED_CTE), "OPTIMIZER_MATERIALIZED_CTE" },
64934 { static_cast<uint32_t>(MetricType::OPTIMIZER_SUM_REWRITER), "OPTIMIZER_SUM_REWRITER" },
64935 { static_cast<uint32_t>(MetricType::OPTIMIZER_LATE_MATERIALIZATION), "OPTIMIZER_LATE_MATERIALIZATION" },
64936 { static_cast<uint32_t>(MetricType::OPTIMIZER_CTE_INLINING), "OPTIMIZER_CTE_INLINING" },
64937 { static_cast<uint32_t>(MetricType::OPTIMIZER_ROW_GROUP_PRUNER), "OPTIMIZER_ROW_GROUP_PRUNER" },
64938 { static_cast<uint32_t>(MetricType::OPTIMIZER_TOP_N_WINDOW_ELIMINATION), "OPTIMIZER_TOP_N_WINDOW_ELIMINATION" },
64939 { static_cast<uint32_t>(MetricType::OPTIMIZER_COMMON_SUBPLAN), "OPTIMIZER_COMMON_SUBPLAN" },
64940 { static_cast<uint32_t>(MetricType::OPTIMIZER_JOIN_ELIMINATION), "OPTIMIZER_JOIN_ELIMINATION" },
64941 { static_cast<uint32_t>(MetricType::OPTIMIZER_WINDOW_SELF_JOIN), "OPTIMIZER_WINDOW_SELF_JOIN" },
64942 { static_cast<uint32_t>(MetricType::ALL_OPTIMIZERS), "ALL_OPTIMIZERS" },
64943 { static_cast<uint32_t>(MetricType::CUMULATIVE_OPTIMIZER_TIMING), "CUMULATIVE_OPTIMIZER_TIMING" },
64944 { static_cast<uint32_t>(MetricType::PHYSICAL_PLANNER), "PHYSICAL_PLANNER" },
64945 { static_cast<uint32_t>(MetricType::PHYSICAL_PLANNER_COLUMN_BINDING), "PHYSICAL_PLANNER_COLUMN_BINDING" },
64946 { static_cast<uint32_t>(MetricType::PHYSICAL_PLANNER_CREATE_PLAN), "PHYSICAL_PLANNER_CREATE_PLAN" },
64947 { static_cast<uint32_t>(MetricType::PHYSICAL_PLANNER_RESOLVE_TYPES), "PHYSICAL_PLANNER_RESOLVE_TYPES" },
64948 { static_cast<uint32_t>(MetricType::PLANNER), "PLANNER" },
64949 { static_cast<uint32_t>(MetricType::PLANNER_BINDING), "PLANNER_BINDING" }
64950 };
64951 return values;
64952}

◆ GetMultiFileColumnMappingModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetMultiFileColumnMappingModeValues ( )
private
64964 {
64965 static constexpr StringUtil::EnumStringLiteral values[] {
64966 { static_cast<uint32_t>(MultiFileColumnMappingMode::BY_NAME), "BY_NAME" },
64967 { static_cast<uint32_t>(MultiFileColumnMappingMode::BY_FIELD_ID), "BY_FIELD_ID" }
64968 };
64969 return values;
64970}

◆ GetMultiFileFileStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetMultiFileFileStateValues ( )
private
64982 {
64983 static constexpr StringUtil::EnumStringLiteral values[] {
64984 { static_cast<uint32_t>(MultiFileFileState::UNOPENED), "UNOPENED" },
64985 { static_cast<uint32_t>(MultiFileFileState::OPENING), "OPENING" },
64986 { static_cast<uint32_t>(MultiFileFileState::OPEN), "OPEN" },
64987 { static_cast<uint32_t>(MultiFileFileState::SKIPPED), "SKIPPED" },
64988 { static_cast<uint32_t>(MultiFileFileState::CLOSED), "CLOSED" }
64989 };
64990 return values;
64991}

◆ GetNTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetNTypeValues ( )
private
65003 {
65004 static constexpr StringUtil::EnumStringLiteral values[] {
65005 { static_cast<uint32_t>(NType::PREFIX), "PREFIX" },
65006 { static_cast<uint32_t>(NType::LEAF), "LEAF" },
65007 { static_cast<uint32_t>(NType::NODE_4), "NODE_4" },
65008 { static_cast<uint32_t>(NType::NODE_16), "NODE_16" },
65009 { static_cast<uint32_t>(NType::NODE_48), "NODE_48" },
65010 { static_cast<uint32_t>(NType::NODE_256), "NODE_256" },
65011 { static_cast<uint32_t>(NType::LEAF_INLINED), "LEAF_INLINED" },
65012 { static_cast<uint32_t>(NType::NODE_7_LEAF), "NODE_7_LEAF" },
65013 { static_cast<uint32_t>(NType::NODE_15_LEAF), "NODE_15_LEAF" },
65014 { static_cast<uint32_t>(NType::NODE_256_LEAF), "NODE_256_LEAF" }
65015 };
65016 return values;
65017}

◆ GetNewLineIdentifierValues()

const StringUtil::EnumStringLiteral * duckdb::GetNewLineIdentifierValues ( )
private
65029 {
65030 static constexpr StringUtil::EnumStringLiteral values[] {
65031 { static_cast<uint32_t>(NewLineIdentifier::SINGLE_N), "SINGLE_N" },
65032 { static_cast<uint32_t>(NewLineIdentifier::CARRY_ON), "CARRY_ON" },
65033 { static_cast<uint32_t>(NewLineIdentifier::NOT_SET), "NOT_SET" },
65034 { static_cast<uint32_t>(NewLineIdentifier::SINGLE_R), "SINGLE_R" }
65035 };
65036 return values;
65037}

◆ GetOnConflictActionValues()

const StringUtil::EnumStringLiteral * duckdb::GetOnConflictActionValues ( )
private
65049 {
65050 static constexpr StringUtil::EnumStringLiteral values[] {
65051 { static_cast<uint32_t>(OnConflictAction::THROW), "THROW" },
65052 { static_cast<uint32_t>(OnConflictAction::NOTHING), "NOTHING" },
65053 { static_cast<uint32_t>(OnConflictAction::UPDATE), "UPDATE" },
65054 { static_cast<uint32_t>(OnConflictAction::REPLACE), "REPLACE" }
65055 };
65056 return values;
65057}

◆ GetOnCreateConflictValues()

const StringUtil::EnumStringLiteral * duckdb::GetOnCreateConflictValues ( )
private
65069 {
65070 static constexpr StringUtil::EnumStringLiteral values[] {
65071 { static_cast<uint32_t>(OnCreateConflict::ERROR_ON_CONFLICT), "ERROR_ON_CONFLICT" },
65072 { static_cast<uint32_t>(OnCreateConflict::IGNORE_ON_CONFLICT), "IGNORE_ON_CONFLICT" },
65073 { static_cast<uint32_t>(OnCreateConflict::REPLACE_ON_CONFLICT), "REPLACE_ON_CONFLICT" },
65074 { static_cast<uint32_t>(OnCreateConflict::ALTER_ON_CONFLICT), "ALTER_ON_CONFLICT" }
65075 };
65076 return values;
65077}

◆ GetOnEntryNotFoundValues()

const StringUtil::EnumStringLiteral * duckdb::GetOnEntryNotFoundValues ( )
private
65089 {
65090 static constexpr StringUtil::EnumStringLiteral values[] {
65091 { static_cast<uint32_t>(OnEntryNotFound::THROW_EXCEPTION), "THROW_EXCEPTION" },
65092 { static_cast<uint32_t>(OnEntryNotFound::RETURN_NULL), "RETURN_NULL" }
65093 };
65094 return values;
65095}

◆ GetOperatorCachingModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOperatorCachingModeValues ( )
private
65107 {
65108 static constexpr StringUtil::EnumStringLiteral values[] {
65109 { static_cast<uint32_t>(OperatorCachingMode::NONE), "NONE" },
65110 { static_cast<uint32_t>(OperatorCachingMode::PARTITIONED), "PARTITIONED" },
65111 { static_cast<uint32_t>(OperatorCachingMode::ORDERED), "ORDERED" },
65112 { static_cast<uint32_t>(OperatorCachingMode::UNORDERED), "UNORDERED" }
65113 };
65114 return values;
65115}

◆ GetOperatorFinalResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOperatorFinalResultTypeValues ( )
private
65127 {
65128 static constexpr StringUtil::EnumStringLiteral values[] {
65129 { static_cast<uint32_t>(OperatorFinalResultType::FINISHED), "FINISHED" },
65130 { static_cast<uint32_t>(OperatorFinalResultType::BLOCKED), "BLOCKED" }
65131 };
65132 return values;
65133}

◆ GetOperatorFinalizeResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOperatorFinalizeResultTypeValues ( )
private
65145 {
65146 static constexpr StringUtil::EnumStringLiteral values[] {
65147 { static_cast<uint32_t>(OperatorFinalizeResultType::HAVE_MORE_OUTPUT), "HAVE_MORE_OUTPUT" },
65148 { static_cast<uint32_t>(OperatorFinalizeResultType::FINISHED), "FINISHED" }
65149 };
65150 return values;
65151}

◆ GetOperatorResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOperatorResultTypeValues ( )
private
65163 {
65164 static constexpr StringUtil::EnumStringLiteral values[] {
65165 { static_cast<uint32_t>(OperatorResultType::NEED_MORE_INPUT), "NEED_MORE_INPUT" },
65166 { static_cast<uint32_t>(OperatorResultType::HAVE_MORE_OUTPUT), "HAVE_MORE_OUTPUT" },
65167 { static_cast<uint32_t>(OperatorResultType::FINISHED), "FINISHED" },
65168 { static_cast<uint32_t>(OperatorResultType::BLOCKED), "BLOCKED" }
65169 };
65170 return values;
65171}

◆ GetOptimizerTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOptimizerTypeValues ( )
private
65183 {
65184 static constexpr StringUtil::EnumStringLiteral values[] {
65185 { static_cast<uint32_t>(OptimizerType::INVALID), "INVALID" },
65186 { static_cast<uint32_t>(OptimizerType::EXPRESSION_REWRITER), "EXPRESSION_REWRITER" },
65187 { static_cast<uint32_t>(OptimizerType::FILTER_PULLUP), "FILTER_PULLUP" },
65188 { static_cast<uint32_t>(OptimizerType::FILTER_PUSHDOWN), "FILTER_PUSHDOWN" },
65189 { static_cast<uint32_t>(OptimizerType::EMPTY_RESULT_PULLUP), "EMPTY_RESULT_PULLUP" },
65190 { static_cast<uint32_t>(OptimizerType::CTE_FILTER_PUSHER), "CTE_FILTER_PUSHER" },
65191 { static_cast<uint32_t>(OptimizerType::REGEX_RANGE), "REGEX_RANGE" },
65192 { static_cast<uint32_t>(OptimizerType::IN_CLAUSE), "IN_CLAUSE" },
65193 { static_cast<uint32_t>(OptimizerType::JOIN_ORDER), "JOIN_ORDER" },
65194 { static_cast<uint32_t>(OptimizerType::DELIMINATOR), "DELIMINATOR" },
65195 { static_cast<uint32_t>(OptimizerType::UNNEST_REWRITER), "UNNEST_REWRITER" },
65196 { static_cast<uint32_t>(OptimizerType::UNUSED_COLUMNS), "UNUSED_COLUMNS" },
65197 { static_cast<uint32_t>(OptimizerType::STATISTICS_PROPAGATION), "STATISTICS_PROPAGATION" },
65198 { static_cast<uint32_t>(OptimizerType::COMMON_SUBEXPRESSIONS), "COMMON_SUBEXPRESSIONS" },
65199 { static_cast<uint32_t>(OptimizerType::COMMON_AGGREGATE), "COMMON_AGGREGATE" },
65200 { static_cast<uint32_t>(OptimizerType::COLUMN_LIFETIME), "COLUMN_LIFETIME" },
65201 { static_cast<uint32_t>(OptimizerType::BUILD_SIDE_PROBE_SIDE), "BUILD_SIDE_PROBE_SIDE" },
65202 { static_cast<uint32_t>(OptimizerType::LIMIT_PUSHDOWN), "LIMIT_PUSHDOWN" },
65203 { static_cast<uint32_t>(OptimizerType::TOP_N), "TOP_N" },
65204 { static_cast<uint32_t>(OptimizerType::COMPRESSED_MATERIALIZATION), "COMPRESSED_MATERIALIZATION" },
65205 { static_cast<uint32_t>(OptimizerType::DUPLICATE_GROUPS), "DUPLICATE_GROUPS" },
65206 { static_cast<uint32_t>(OptimizerType::REORDER_FILTER), "REORDER_FILTER" },
65207 { static_cast<uint32_t>(OptimizerType::SAMPLING_PUSHDOWN), "SAMPLING_PUSHDOWN" },
65208 { static_cast<uint32_t>(OptimizerType::JOIN_FILTER_PUSHDOWN), "JOIN_FILTER_PUSHDOWN" },
65209 { static_cast<uint32_t>(OptimizerType::EXTENSION), "EXTENSION" },
65210 { static_cast<uint32_t>(OptimizerType::MATERIALIZED_CTE), "MATERIALIZED_CTE" },
65211 { static_cast<uint32_t>(OptimizerType::SUM_REWRITER), "SUM_REWRITER" },
65212 { static_cast<uint32_t>(OptimizerType::LATE_MATERIALIZATION), "LATE_MATERIALIZATION" },
65213 { static_cast<uint32_t>(OptimizerType::CTE_INLINING), "CTE_INLINING" },
65214 { static_cast<uint32_t>(OptimizerType::ROW_GROUP_PRUNER), "ROW_GROUP_PRUNER" },
65215 { static_cast<uint32_t>(OptimizerType::TOP_N_WINDOW_ELIMINATION), "TOP_N_WINDOW_ELIMINATION" },
65216 { static_cast<uint32_t>(OptimizerType::COMMON_SUBPLAN), "COMMON_SUBPLAN" },
65217 { static_cast<uint32_t>(OptimizerType::JOIN_ELIMINATION), "JOIN_ELIMINATION" },
65218 { static_cast<uint32_t>(OptimizerType::WINDOW_SELF_JOIN), "WINDOW_SELF_JOIN" }
65219 };
65220 return values;
65221}

◆ GetOrderByColumnTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrderByColumnTypeValues ( )
private
65233 {
65234 static constexpr StringUtil::EnumStringLiteral values[] {
65235 { static_cast<uint32_t>(OrderByColumnType::NUMERIC), "NUMERIC" },
65236 { static_cast<uint32_t>(OrderByColumnType::STRING), "STRING" }
65237 };
65238 return values;
65239}

◆ GetOrderByNullTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrderByNullTypeValues ( )
private
65251 {
65252 static constexpr StringUtil::EnumStringLiteral values[] {
65253 { static_cast<uint32_t>(OrderByNullType::INVALID), "INVALID" },
65254 { static_cast<uint32_t>(OrderByNullType::ORDER_DEFAULT), "ORDER_DEFAULT" },
65255 { static_cast<uint32_t>(OrderByNullType::ORDER_DEFAULT), "DEFAULT" },
65256 { static_cast<uint32_t>(OrderByNullType::NULLS_FIRST), "NULLS FIRST" },
65257 { static_cast<uint32_t>(OrderByNullType::NULLS_FIRST), "NULLS_FIRST" },
65258 { static_cast<uint32_t>(OrderByNullType::NULLS_LAST), "NULLS LAST" },
65259 { static_cast<uint32_t>(OrderByNullType::NULLS_LAST), "NULLS_LAST" }
65260 };
65261 return values;
65262}

◆ GetOrderByStatisticsValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrderByStatisticsValues ( )
private
65274 {
65275 static constexpr StringUtil::EnumStringLiteral values[] {
65276 { static_cast<uint32_t>(OrderByStatistics::MIN), "MIN" },
65277 { static_cast<uint32_t>(OrderByStatistics::MAX), "MAX" }
65278 };
65279 return values;
65280}

◆ GetOrderPreservationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrderPreservationTypeValues ( )
private
65292 {
65293 static constexpr StringUtil::EnumStringLiteral values[] {
65294 { static_cast<uint32_t>(OrderPreservationType::NO_ORDER), "NO_ORDER" },
65295 { static_cast<uint32_t>(OrderPreservationType::INSERTION_ORDER), "INSERTION_ORDER" },
65296 { static_cast<uint32_t>(OrderPreservationType::FIXED_ORDER), "FIXED_ORDER" }
65297 };
65298 return values;
65299}

◆ GetOrderTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrderTypeValues ( )
private
65311 {
65312 static constexpr StringUtil::EnumStringLiteral values[] {
65313 { static_cast<uint32_t>(OrderType::INVALID), "INVALID" },
65314 { static_cast<uint32_t>(OrderType::ORDER_DEFAULT), "ORDER_DEFAULT" },
65315 { static_cast<uint32_t>(OrderType::ORDER_DEFAULT), "DEFAULT" },
65316 { static_cast<uint32_t>(OrderType::ASCENDING), "ASCENDING" },
65317 { static_cast<uint32_t>(OrderType::ASCENDING), "ASC" },
65318 { static_cast<uint32_t>(OrderType::DESCENDING), "DESCENDING" },
65319 { static_cast<uint32_t>(OrderType::DESCENDING), "DESC" }
65320 };
65321 return values;
65322}

◆ GetOrdinalityTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetOrdinalityTypeValues ( )
private
65334 {
65335 static constexpr StringUtil::EnumStringLiteral values[] {
65336 { static_cast<uint32_t>(OrdinalityType::WITHOUT_ORDINALITY), "WITHOUT_ORDINALITY" },
65337 { static_cast<uint32_t>(OrdinalityType::WITH_ORDINALITY), "WITH_ORDINALITY" }
65338 };
65339 return values;
65340}

◆ GetOutputStreamValues()

const StringUtil::EnumStringLiteral * duckdb::GetOutputStreamValues ( )
private
65352 {
65353 static constexpr StringUtil::EnumStringLiteral values[] {
65354 { static_cast<uint32_t>(OutputStream::STREAM_STDOUT), "STREAM_STDOUT" },
65355 { static_cast<uint32_t>(OutputStream::STREAM_STDERR), "STREAM_STDERR" }
65356 };
65357 return values;
65358}

◆ GetParseInfoTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetParseInfoTypeValues ( )
private
65370 {
65371 static constexpr StringUtil::EnumStringLiteral values[] {
65372 { static_cast<uint32_t>(ParseInfoType::ALTER_INFO), "ALTER_INFO" },
65373 { static_cast<uint32_t>(ParseInfoType::ATTACH_INFO), "ATTACH_INFO" },
65374 { static_cast<uint32_t>(ParseInfoType::COPY_INFO), "COPY_INFO" },
65375 { static_cast<uint32_t>(ParseInfoType::CREATE_INFO), "CREATE_INFO" },
65376 { static_cast<uint32_t>(ParseInfoType::CREATE_SECRET_INFO), "CREATE_SECRET_INFO" },
65377 { static_cast<uint32_t>(ParseInfoType::DETACH_INFO), "DETACH_INFO" },
65378 { static_cast<uint32_t>(ParseInfoType::DROP_INFO), "DROP_INFO" },
65379 { static_cast<uint32_t>(ParseInfoType::BOUND_EXPORT_DATA), "BOUND_EXPORT_DATA" },
65380 { static_cast<uint32_t>(ParseInfoType::LOAD_INFO), "LOAD_INFO" },
65381 { static_cast<uint32_t>(ParseInfoType::PRAGMA_INFO), "PRAGMA_INFO" },
65382 { static_cast<uint32_t>(ParseInfoType::SHOW_SELECT_INFO), "SHOW_SELECT_INFO" },
65383 { static_cast<uint32_t>(ParseInfoType::TRANSACTION_INFO), "TRANSACTION_INFO" },
65384 { static_cast<uint32_t>(ParseInfoType::VACUUM_INFO), "VACUUM_INFO" },
65385 { static_cast<uint32_t>(ParseInfoType::COMMENT_ON_INFO), "COMMENT_ON_INFO" },
65386 { static_cast<uint32_t>(ParseInfoType::COMMENT_ON_COLUMN_INFO), "COMMENT_ON_COLUMN_INFO" },
65387 { static_cast<uint32_t>(ParseInfoType::COPY_DATABASE_INFO), "COPY_DATABASE_INFO" },
65388 { static_cast<uint32_t>(ParseInfoType::UPDATE_EXTENSIONS_INFO), "UPDATE_EXTENSIONS_INFO" }
65389 };
65390 return values;
65391}

◆ GetParserExtensionResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetParserExtensionResultTypeValues ( )
private
65403 {
65404 static constexpr StringUtil::EnumStringLiteral values[] {
65405 { static_cast<uint32_t>(ParserExtensionResultType::PARSE_SUCCESSFUL), "PARSE_SUCCESSFUL" },
65406 { static_cast<uint32_t>(ParserExtensionResultType::DISPLAY_ORIGINAL_ERROR), "DISPLAY_ORIGINAL_ERROR" },
65407 { static_cast<uint32_t>(ParserExtensionResultType::DISPLAY_EXTENSION_ERROR), "DISPLAY_EXTENSION_ERROR" }
65408 };
65409 return values;
65410}

◆ GetPartitionedColumnDataTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPartitionedColumnDataTypeValues ( )
private
65422 {
65423 static constexpr StringUtil::EnumStringLiteral values[] {
65424 { static_cast<uint32_t>(PartitionedColumnDataType::INVALID), "INVALID" },
65425 { static_cast<uint32_t>(PartitionedColumnDataType::RADIX), "RADIX" },
65426 { static_cast<uint32_t>(PartitionedColumnDataType::HIVE), "HIVE" }
65427 };
65428 return values;
65429}

◆ GetPartitionedTupleDataTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPartitionedTupleDataTypeValues ( )
private
65441 {
65442 static constexpr StringUtil::EnumStringLiteral values[] {
65443 { static_cast<uint32_t>(PartitionedTupleDataType::INVALID), "INVALID" },
65444 { static_cast<uint32_t>(PartitionedTupleDataType::RADIX), "RADIX" }
65445 };
65446 return values;
65447}

◆ GetPendingExecutionResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetPendingExecutionResultValues ( )
private
65459 {
65460 static constexpr StringUtil::EnumStringLiteral values[] {
65461 { static_cast<uint32_t>(PendingExecutionResult::RESULT_READY), "RESULT_READY" },
65462 { static_cast<uint32_t>(PendingExecutionResult::RESULT_NOT_READY), "RESULT_NOT_READY" },
65463 { static_cast<uint32_t>(PendingExecutionResult::EXECUTION_ERROR), "EXECUTION_ERROR" },
65464 { static_cast<uint32_t>(PendingExecutionResult::BLOCKED), "BLOCKED" },
65465 { static_cast<uint32_t>(PendingExecutionResult::NO_TASKS_AVAILABLE), "NO_TASKS_AVAILABLE" },
65466 { static_cast<uint32_t>(PendingExecutionResult::EXECUTION_FINISHED), "EXECUTION_FINISHED" }
65467 };
65468 return values;
65469}

◆ GetPhysicalOperatorTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPhysicalOperatorTypeValues ( )
private
65481 {
65482 static constexpr StringUtil::EnumStringLiteral values[] {
65483 { static_cast<uint32_t>(PhysicalOperatorType::INVALID), "INVALID" },
65484 { static_cast<uint32_t>(PhysicalOperatorType::ORDER_BY), "ORDER_BY" },
65485 { static_cast<uint32_t>(PhysicalOperatorType::LIMIT), "LIMIT" },
65486 { static_cast<uint32_t>(PhysicalOperatorType::STREAMING_LIMIT), "STREAMING_LIMIT" },
65487 { static_cast<uint32_t>(PhysicalOperatorType::LIMIT_PERCENT), "LIMIT_PERCENT" },
65488 { static_cast<uint32_t>(PhysicalOperatorType::TOP_N), "TOP_N" },
65489 { static_cast<uint32_t>(PhysicalOperatorType::WINDOW), "WINDOW" },
65490 { static_cast<uint32_t>(PhysicalOperatorType::UNNEST), "UNNEST" },
65491 { static_cast<uint32_t>(PhysicalOperatorType::UNGROUPED_AGGREGATE), "UNGROUPED_AGGREGATE" },
65492 { static_cast<uint32_t>(PhysicalOperatorType::HASH_GROUP_BY), "HASH_GROUP_BY" },
65493 { static_cast<uint32_t>(PhysicalOperatorType::PERFECT_HASH_GROUP_BY), "PERFECT_HASH_GROUP_BY" },
65494 { static_cast<uint32_t>(PhysicalOperatorType::PARTITIONED_AGGREGATE), "PARTITIONED_AGGREGATE" },
65495 { static_cast<uint32_t>(PhysicalOperatorType::FILTER), "FILTER" },
65496 { static_cast<uint32_t>(PhysicalOperatorType::PROJECTION), "PROJECTION" },
65497 { static_cast<uint32_t>(PhysicalOperatorType::COPY_TO_FILE), "COPY_TO_FILE" },
65498 { static_cast<uint32_t>(PhysicalOperatorType::BATCH_COPY_TO_FILE), "BATCH_COPY_TO_FILE" },
65499 { static_cast<uint32_t>(PhysicalOperatorType::RESERVOIR_SAMPLE), "RESERVOIR_SAMPLE" },
65500 { static_cast<uint32_t>(PhysicalOperatorType::STREAMING_SAMPLE), "STREAMING_SAMPLE" },
65501 { static_cast<uint32_t>(PhysicalOperatorType::STREAMING_WINDOW), "STREAMING_WINDOW" },
65502 { static_cast<uint32_t>(PhysicalOperatorType::PIVOT), "PIVOT" },
65503 { static_cast<uint32_t>(PhysicalOperatorType::COPY_DATABASE), "COPY_DATABASE" },
65504 { static_cast<uint32_t>(PhysicalOperatorType::TABLE_SCAN), "TABLE_SCAN" },
65505 { static_cast<uint32_t>(PhysicalOperatorType::DUMMY_SCAN), "DUMMY_SCAN" },
65506 { static_cast<uint32_t>(PhysicalOperatorType::COLUMN_DATA_SCAN), "COLUMN_DATA_SCAN" },
65507 { static_cast<uint32_t>(PhysicalOperatorType::CHUNK_SCAN), "CHUNK_SCAN" },
65508 { static_cast<uint32_t>(PhysicalOperatorType::RECURSIVE_CTE_SCAN), "RECURSIVE_CTE_SCAN" },
65509 { static_cast<uint32_t>(PhysicalOperatorType::RECURSIVE_RECURRING_CTE_SCAN), "RECURSIVE_RECURRING_CTE_SCAN" },
65510 { static_cast<uint32_t>(PhysicalOperatorType::CTE_SCAN), "CTE_SCAN" },
65511 { static_cast<uint32_t>(PhysicalOperatorType::DELIM_SCAN), "DELIM_SCAN" },
65512 { static_cast<uint32_t>(PhysicalOperatorType::EXPRESSION_SCAN), "EXPRESSION_SCAN" },
65513 { static_cast<uint32_t>(PhysicalOperatorType::POSITIONAL_SCAN), "POSITIONAL_SCAN" },
65514 { static_cast<uint32_t>(PhysicalOperatorType::BLOCKWISE_NL_JOIN), "BLOCKWISE_NL_JOIN" },
65515 { static_cast<uint32_t>(PhysicalOperatorType::NESTED_LOOP_JOIN), "NESTED_LOOP_JOIN" },
65516 { static_cast<uint32_t>(PhysicalOperatorType::HASH_JOIN), "HASH_JOIN" },
65517 { static_cast<uint32_t>(PhysicalOperatorType::CROSS_PRODUCT), "CROSS_PRODUCT" },
65518 { static_cast<uint32_t>(PhysicalOperatorType::PIECEWISE_MERGE_JOIN), "PIECEWISE_MERGE_JOIN" },
65519 { static_cast<uint32_t>(PhysicalOperatorType::IE_JOIN), "IE_JOIN" },
65520 { static_cast<uint32_t>(PhysicalOperatorType::LEFT_DELIM_JOIN), "LEFT_DELIM_JOIN" },
65521 { static_cast<uint32_t>(PhysicalOperatorType::RIGHT_DELIM_JOIN), "RIGHT_DELIM_JOIN" },
65522 { static_cast<uint32_t>(PhysicalOperatorType::POSITIONAL_JOIN), "POSITIONAL_JOIN" },
65523 { static_cast<uint32_t>(PhysicalOperatorType::ASOF_JOIN), "ASOF_JOIN" },
65524 { static_cast<uint32_t>(PhysicalOperatorType::UNION), "UNION" },
65525 { static_cast<uint32_t>(PhysicalOperatorType::RECURSIVE_CTE), "RECURSIVE_CTE" },
65526 { static_cast<uint32_t>(PhysicalOperatorType::RECURSIVE_KEY_CTE), "RECURSIVE_KEY_CTE" },
65527 { static_cast<uint32_t>(PhysicalOperatorType::CTE), "CTE" },
65528 { static_cast<uint32_t>(PhysicalOperatorType::INSERT), "INSERT" },
65529 { static_cast<uint32_t>(PhysicalOperatorType::BATCH_INSERT), "BATCH_INSERT" },
65530 { static_cast<uint32_t>(PhysicalOperatorType::DELETE_OPERATOR), "DELETE_OPERATOR" },
65531 { static_cast<uint32_t>(PhysicalOperatorType::UPDATE), "UPDATE" },
65532 { static_cast<uint32_t>(PhysicalOperatorType::MERGE_INTO), "MERGE_INTO" },
65533 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_TABLE), "CREATE_TABLE" },
65534 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_TABLE_AS), "CREATE_TABLE_AS" },
65535 { static_cast<uint32_t>(PhysicalOperatorType::BATCH_CREATE_TABLE_AS), "BATCH_CREATE_TABLE_AS" },
65536 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_INDEX), "CREATE_INDEX" },
65537 { static_cast<uint32_t>(PhysicalOperatorType::ALTER), "ALTER" },
65538 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_SEQUENCE), "CREATE_SEQUENCE" },
65539 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_VIEW), "CREATE_VIEW" },
65540 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_SCHEMA), "CREATE_SCHEMA" },
65541 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_MACRO), "CREATE_MACRO" },
65542 { static_cast<uint32_t>(PhysicalOperatorType::DROP), "DROP" },
65543 { static_cast<uint32_t>(PhysicalOperatorType::PRAGMA), "PRAGMA" },
65544 { static_cast<uint32_t>(PhysicalOperatorType::TRANSACTION), "TRANSACTION" },
65545 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_TYPE), "CREATE_TYPE" },
65546 { static_cast<uint32_t>(PhysicalOperatorType::ATTACH), "ATTACH" },
65547 { static_cast<uint32_t>(PhysicalOperatorType::DETACH), "DETACH" },
65548 { static_cast<uint32_t>(PhysicalOperatorType::EXPLAIN), "EXPLAIN" },
65549 { static_cast<uint32_t>(PhysicalOperatorType::EXPLAIN_ANALYZE), "EXPLAIN_ANALYZE" },
65550 { static_cast<uint32_t>(PhysicalOperatorType::EMPTY_RESULT), "EMPTY_RESULT" },
65551 { static_cast<uint32_t>(PhysicalOperatorType::EXECUTE), "EXECUTE" },
65552 { static_cast<uint32_t>(PhysicalOperatorType::PREPARE), "PREPARE" },
65553 { static_cast<uint32_t>(PhysicalOperatorType::VACUUM), "VACUUM" },
65554 { static_cast<uint32_t>(PhysicalOperatorType::EXPORT), "EXPORT" },
65555 { static_cast<uint32_t>(PhysicalOperatorType::SET), "SET" },
65556 { static_cast<uint32_t>(PhysicalOperatorType::SET_VARIABLE), "SET_VARIABLE" },
65557 { static_cast<uint32_t>(PhysicalOperatorType::LOAD), "LOAD" },
65558 { static_cast<uint32_t>(PhysicalOperatorType::INOUT_FUNCTION), "INOUT_FUNCTION" },
65559 { static_cast<uint32_t>(PhysicalOperatorType::RESULT_COLLECTOR), "RESULT_COLLECTOR" },
65560 { static_cast<uint32_t>(PhysicalOperatorType::RESET), "RESET" },
65561 { static_cast<uint32_t>(PhysicalOperatorType::EXTENSION), "EXTENSION" },
65562 { static_cast<uint32_t>(PhysicalOperatorType::VERIFY_VECTOR), "VERIFY_VECTOR" },
65563 { static_cast<uint32_t>(PhysicalOperatorType::UPDATE_EXTENSIONS), "UPDATE_EXTENSIONS" },
65564 { static_cast<uint32_t>(PhysicalOperatorType::CREATE_SECRET), "CREATE_SECRET" }
65565 };
65566 return values;
65567}

◆ GetPhysicalTableScanExecutionStrategyValues()

const StringUtil::EnumStringLiteral * duckdb::GetPhysicalTableScanExecutionStrategyValues ( )
private
65579 {
65580 static constexpr StringUtil::EnumStringLiteral values[] {
65581 { static_cast<uint32_t>(PhysicalTableScanExecutionStrategy::DEFAULT), "DEFAULT" },
65582 { static_cast<uint32_t>(PhysicalTableScanExecutionStrategy::TASK_EXECUTOR), "TASK_EXECUTOR" },
65583 { static_cast<uint32_t>(PhysicalTableScanExecutionStrategy::SYNCHRONOUS), "SYNCHRONOUS" },
65584 { static_cast<uint32_t>(PhysicalTableScanExecutionStrategy::TASK_EXECUTOR_BUT_FORCE_SYNC_CHECKS), "TASK_EXECUTOR_BUT_FORCE_SYNC_CHECKS" }
65585 };
65586 return values;
65587}

◆ GetPhysicalTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPhysicalTypeValues ( )
private
65599 {
65600 static constexpr StringUtil::EnumStringLiteral values[] {
65601 { static_cast<uint32_t>(PhysicalType::BOOL), "BOOL" },
65602 { static_cast<uint32_t>(PhysicalType::UINT8), "UINT8" },
65603 { static_cast<uint32_t>(PhysicalType::INT8), "INT8" },
65604 { static_cast<uint32_t>(PhysicalType::UINT16), "UINT16" },
65605 { static_cast<uint32_t>(PhysicalType::INT16), "INT16" },
65606 { static_cast<uint32_t>(PhysicalType::UINT32), "UINT32" },
65607 { static_cast<uint32_t>(PhysicalType::INT32), "INT32" },
65608 { static_cast<uint32_t>(PhysicalType::UINT64), "UINT64" },
65609 { static_cast<uint32_t>(PhysicalType::INT64), "INT64" },
65610 { static_cast<uint32_t>(PhysicalType::FLOAT), "FLOAT" },
65611 { static_cast<uint32_t>(PhysicalType::DOUBLE), "DOUBLE" },
65612 { static_cast<uint32_t>(PhysicalType::INTERVAL), "INTERVAL" },
65613 { static_cast<uint32_t>(PhysicalType::LIST), "LIST" },
65614 { static_cast<uint32_t>(PhysicalType::STRUCT), "STRUCT" },
65615 { static_cast<uint32_t>(PhysicalType::ARRAY), "ARRAY" },
65616 { static_cast<uint32_t>(PhysicalType::VARCHAR), "VARCHAR" },
65617 { static_cast<uint32_t>(PhysicalType::UINT128), "UINT128" },
65618 { static_cast<uint32_t>(PhysicalType::INT128), "INT128" },
65619 { static_cast<uint32_t>(PhysicalType::UNKNOWN), "UNKNOWN" },
65620 { static_cast<uint32_t>(PhysicalType::BIT), "BIT" },
65621 { static_cast<uint32_t>(PhysicalType::INVALID), "INVALID" }
65622 };
65623 return values;
65624}

◆ GetPragmaTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPragmaTypeValues ( )
private
65636 {
65637 static constexpr StringUtil::EnumStringLiteral values[] {
65638 { static_cast<uint32_t>(PragmaType::PRAGMA_STATEMENT), "PRAGMA_STATEMENT" },
65639 { static_cast<uint32_t>(PragmaType::PRAGMA_CALL), "PRAGMA_CALL" }
65640 };
65641 return values;
65642}

◆ GetPreparedParamTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPreparedParamTypeValues ( )
private
65654 {
65655 static constexpr StringUtil::EnumStringLiteral values[] {
65656 { static_cast<uint32_t>(PreparedParamType::AUTO_INCREMENT), "AUTO_INCREMENT" },
65657 { static_cast<uint32_t>(PreparedParamType::POSITIONAL), "POSITIONAL" },
65658 { static_cast<uint32_t>(PreparedParamType::NAMED), "NAMED" },
65659 { static_cast<uint32_t>(PreparedParamType::INVALID), "INVALID" }
65660 };
65661 return values;
65662}

◆ GetPreparedStatementModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPreparedStatementModeValues ( )
private
65674 {
65675 static constexpr StringUtil::EnumStringLiteral values[] {
65676 { static_cast<uint32_t>(PreparedStatementMode::PREPARE_ONLY), "PREPARE_ONLY" },
65677 { static_cast<uint32_t>(PreparedStatementMode::PREPARE_AND_EXECUTE), "PREPARE_AND_EXECUTE" }
65678 };
65679 return values;
65680}

◆ GetPreserveOrderTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetPreserveOrderTypeValues ( )
private
65692 {
65693 static constexpr StringUtil::EnumStringLiteral values[] {
65694 { static_cast<uint32_t>(PreserveOrderType::AUTOMATIC), "AUTOMATIC" },
65695 { static_cast<uint32_t>(PreserveOrderType::PRESERVE_ORDER), "PRESERVE_ORDER" },
65696 { static_cast<uint32_t>(PreserveOrderType::DONT_PRESERVE_ORDER), "DONT_PRESERVE_ORDER" }
65697 };
65698 return values;
65699}

◆ GetProfilerPrintFormatValues()

const StringUtil::EnumStringLiteral * duckdb::GetProfilerPrintFormatValues ( )
private
65711 {
65712 static constexpr StringUtil::EnumStringLiteral values[] {
65713 { static_cast<uint32_t>(ProfilerPrintFormat::QUERY_TREE), "QUERY_TREE" },
65714 { static_cast<uint32_t>(ProfilerPrintFormat::JSON), "JSON" },
65715 { static_cast<uint32_t>(ProfilerPrintFormat::QUERY_TREE_OPTIMIZER), "QUERY_TREE_OPTIMIZER" },
65716 { static_cast<uint32_t>(ProfilerPrintFormat::NO_OUTPUT), "NO_OUTPUT" },
65717 { static_cast<uint32_t>(ProfilerPrintFormat::HTML), "HTML" },
65718 { static_cast<uint32_t>(ProfilerPrintFormat::GRAPHVIZ), "GRAPHVIZ" },
65719 { static_cast<uint32_t>(ProfilerPrintFormat::MERMAID), "MERMAID" }
65720 };
65721 return values;
65722}

◆ GetProfilingCoverageValues()

const StringUtil::EnumStringLiteral * duckdb::GetProfilingCoverageValues ( )
private
65734 {
65735 static constexpr StringUtil::EnumStringLiteral values[] {
65736 { static_cast<uint32_t>(ProfilingCoverage::SELECT), "SELECT" },
65737 { static_cast<uint32_t>(ProfilingCoverage::ALL), "ALL" }
65738 };
65739 return values;
65740}

◆ GetProfilingParameterNamesValues()

const StringUtil::EnumStringLiteral * duckdb::GetProfilingParameterNamesValues ( )
private
65752 {
65753 static constexpr StringUtil::EnumStringLiteral values[] {
65754 { static_cast<uint32_t>(ProfilingParameterNames::FORMAT), "FORMAT" },
65755 { static_cast<uint32_t>(ProfilingParameterNames::COVERAGE), "COVERAGE" },
65756 { static_cast<uint32_t>(ProfilingParameterNames::SAVE_LOCATION), "SAVE_LOCATION" },
65757 { static_cast<uint32_t>(ProfilingParameterNames::MODE), "MODE" },
65758 { static_cast<uint32_t>(ProfilingParameterNames::METRICS), "METRICS" }
65759 };
65760 return values;
65761}

◆ GetPushdownExtractSupportValues()

const StringUtil::EnumStringLiteral * duckdb::GetPushdownExtractSupportValues ( )
private
65773 {
65774 static constexpr StringUtil::EnumStringLiteral values[] {
65775 { static_cast<uint32_t>(PushdownExtractSupport::UNCHECKED), "UNCHECKED" },
65776 { static_cast<uint32_t>(PushdownExtractSupport::DISABLED), "DISABLED" },
65777 { static_cast<uint32_t>(PushdownExtractSupport::ENABLED), "ENABLED" }
65778 };
65779 return values;
65780}

◆ GetQuantileSerializationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetQuantileSerializationTypeValues ( )
private
65792 {
65793 static constexpr StringUtil::EnumStringLiteral values[] {
65794 { static_cast<uint32_t>(QuantileSerializationType::NON_DECIMAL), "NON_DECIMAL" },
65795 { static_cast<uint32_t>(QuantileSerializationType::DECIMAL_DISCRETE), "DECIMAL_DISCRETE" },
65796 { static_cast<uint32_t>(QuantileSerializationType::DECIMAL_DISCRETE_LIST), "DECIMAL_DISCRETE_LIST" },
65797 { static_cast<uint32_t>(QuantileSerializationType::DECIMAL_CONTINUOUS), "DECIMAL_CONTINUOUS" },
65798 { static_cast<uint32_t>(QuantileSerializationType::DECIMAL_CONTINUOUS_LIST), "DECIMAL_CONTINUOUS_LIST" }
65799 };
65800 return values;
65801}

◆ GetQueryNodeTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetQueryNodeTypeValues ( )
private
65813 {
65814 static constexpr StringUtil::EnumStringLiteral values[] {
65815 { static_cast<uint32_t>(QueryNodeType::SELECT_NODE), "SELECT_NODE" },
65816 { static_cast<uint32_t>(QueryNodeType::SET_OPERATION_NODE), "SET_OPERATION_NODE" },
65817 { static_cast<uint32_t>(QueryNodeType::BOUND_SUBQUERY_NODE), "BOUND_SUBQUERY_NODE" },
65818 { static_cast<uint32_t>(QueryNodeType::RECURSIVE_CTE_NODE), "RECURSIVE_CTE_NODE" },
65819 { static_cast<uint32_t>(QueryNodeType::CTE_NODE), "CTE_NODE" },
65820 { static_cast<uint32_t>(QueryNodeType::STATEMENT_NODE), "STATEMENT_NODE" }
65821 };
65822 return values;
65823}

◆ GetQueryResultMemoryTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetQueryResultMemoryTypeValues ( )
private
65835 {
65836 static constexpr StringUtil::EnumStringLiteral values[] {
65837 { static_cast<uint32_t>(QueryResultMemoryType::IN_MEMORY), "IN_MEMORY" },
65838 { static_cast<uint32_t>(QueryResultMemoryType::BUFFER_MANAGED), "BUFFER_MANAGED" }
65839 };
65840 return values;
65841}

◆ GetQueryResultOutputTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetQueryResultOutputTypeValues ( )
private
65853 {
65854 static constexpr StringUtil::EnumStringLiteral values[] {
65855 { static_cast<uint32_t>(QueryResultOutputType::FORCE_MATERIALIZED), "FORCE_MATERIALIZED" },
65856 { static_cast<uint32_t>(QueryResultOutputType::ALLOW_STREAMING), "ALLOW_STREAMING" }
65857 };
65858 return values;
65859}

◆ GetQueryResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetQueryResultTypeValues ( )
private
65871 {
65872 static constexpr StringUtil::EnumStringLiteral values[] {
65873 { static_cast<uint32_t>(QueryResultType::MATERIALIZED_RESULT), "MATERIALIZED_RESULT" },
65874 { static_cast<uint32_t>(QueryResultType::STREAM_RESULT), "STREAM_RESULT" },
65875 { static_cast<uint32_t>(QueryResultType::PENDING_RESULT), "PENDING_RESULT" },
65876 { static_cast<uint32_t>(QueryResultType::ARROW_RESULT), "ARROW_RESULT" }
65877 };
65878 return values;
65879}

◆ GetRecoveryModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetRecoveryModeValues ( )
private
65891 {
65892 static constexpr StringUtil::EnumStringLiteral values[] {
65893 { static_cast<uint32_t>(RecoveryMode::DEFAULT), "DEFAULT" },
65894 { static_cast<uint32_t>(RecoveryMode::NO_WAL_WRITES), "NO_WAL_WRITES" }
65895 };
65896 return values;
65897}

◆ GetRelationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetRelationTypeValues ( )
private
65909 {
65910 static constexpr StringUtil::EnumStringLiteral values[] {
65911 { static_cast<uint32_t>(RelationType::INVALID_RELATION), "INVALID_RELATION" },
65912 { static_cast<uint32_t>(RelationType::TABLE_RELATION), "TABLE_RELATION" },
65913 { static_cast<uint32_t>(RelationType::PROJECTION_RELATION), "PROJECTION_RELATION" },
65914 { static_cast<uint32_t>(RelationType::FILTER_RELATION), "FILTER_RELATION" },
65915 { static_cast<uint32_t>(RelationType::EXPLAIN_RELATION), "EXPLAIN_RELATION" },
65916 { static_cast<uint32_t>(RelationType::CROSS_PRODUCT_RELATION), "CROSS_PRODUCT_RELATION" },
65917 { static_cast<uint32_t>(RelationType::JOIN_RELATION), "JOIN_RELATION" },
65918 { static_cast<uint32_t>(RelationType::AGGREGATE_RELATION), "AGGREGATE_RELATION" },
65919 { static_cast<uint32_t>(RelationType::SET_OPERATION_RELATION), "SET_OPERATION_RELATION" },
65920 { static_cast<uint32_t>(RelationType::DISTINCT_RELATION), "DISTINCT_RELATION" },
65921 { static_cast<uint32_t>(RelationType::LIMIT_RELATION), "LIMIT_RELATION" },
65922 { static_cast<uint32_t>(RelationType::ORDER_RELATION), "ORDER_RELATION" },
65923 { static_cast<uint32_t>(RelationType::CREATE_VIEW_RELATION), "CREATE_VIEW_RELATION" },
65924 { static_cast<uint32_t>(RelationType::CREATE_TABLE_RELATION), "CREATE_TABLE_RELATION" },
65925 { static_cast<uint32_t>(RelationType::INSERT_RELATION), "INSERT_RELATION" },
65926 { static_cast<uint32_t>(RelationType::VALUE_LIST_RELATION), "VALUE_LIST_RELATION" },
65927 { static_cast<uint32_t>(RelationType::MATERIALIZED_RELATION), "MATERIALIZED_RELATION" },
65928 { static_cast<uint32_t>(RelationType::DELETE_RELATION), "DELETE_RELATION" },
65929 { static_cast<uint32_t>(RelationType::UPDATE_RELATION), "UPDATE_RELATION" },
65930 { static_cast<uint32_t>(RelationType::WRITE_CSV_RELATION), "WRITE_CSV_RELATION" },
65931 { static_cast<uint32_t>(RelationType::WRITE_PARQUET_RELATION), "WRITE_PARQUET_RELATION" },
65932 { static_cast<uint32_t>(RelationType::READ_CSV_RELATION), "READ_CSV_RELATION" },
65933 { static_cast<uint32_t>(RelationType::SUBQUERY_RELATION), "SUBQUERY_RELATION" },
65934 { static_cast<uint32_t>(RelationType::TABLE_FUNCTION_RELATION), "TABLE_FUNCTION_RELATION" },
65935 { static_cast<uint32_t>(RelationType::VIEW_RELATION), "VIEW_RELATION" },
65936 { static_cast<uint32_t>(RelationType::QUERY_RELATION), "QUERY_RELATION" },
65937 { static_cast<uint32_t>(RelationType::DELIM_JOIN_RELATION), "DELIM_JOIN_RELATION" },
65938 { static_cast<uint32_t>(RelationType::DELIM_GET_RELATION), "DELIM_GET_RELATION" },
65939 { static_cast<uint32_t>(RelationType::EXTENSION_RELATION), "EXTENSION_RELATION" }
65940 };
65941 return values;
65942}

◆ GetRenderModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetRenderModeValues ( )
private
65954 {
65955 static constexpr StringUtil::EnumStringLiteral values[] {
65956 { static_cast<uint32_t>(RenderMode::ROWS), "ROWS" },
65957 { static_cast<uint32_t>(RenderMode::COLUMNS), "COLUMNS" }
65958 };
65959 return values;
65960}

◆ GetRequestTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetRequestTypeValues ( )
private
65972 {
65973 static constexpr StringUtil::EnumStringLiteral values[] {
65974 { static_cast<uint32_t>(RequestType::GET_REQUEST), "GET" },
65975 { static_cast<uint32_t>(RequestType::PUT_REQUEST), "PUT" },
65976 { static_cast<uint32_t>(RequestType::HEAD_REQUEST), "HEAD" },
65977 { static_cast<uint32_t>(RequestType::DELETE_REQUEST), "DELETE" },
65978 { static_cast<uint32_t>(RequestType::POST_REQUEST), "POST" }
65979 };
65980 return values;
65981}

◆ GetResultModifierTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetResultModifierTypeValues ( )
private
65993 {
65994 static constexpr StringUtil::EnumStringLiteral values[] {
65995 { static_cast<uint32_t>(ResultModifierType::LIMIT_MODIFIER), "LIMIT_MODIFIER" },
65996 { static_cast<uint32_t>(ResultModifierType::ORDER_MODIFIER), "ORDER_MODIFIER" },
65997 { static_cast<uint32_t>(ResultModifierType::DISTINCT_MODIFIER), "DISTINCT_MODIFIER" },
65998 { static_cast<uint32_t>(ResultModifierType::LIMIT_PERCENT_MODIFIER), "LIMIT_PERCENT_MODIFIER" }
65999 };
66000 return values;
66001}

◆ GetSampleMethodValues()

const StringUtil::EnumStringLiteral * duckdb::GetSampleMethodValues ( )
private
66013 {
66014 static constexpr StringUtil::EnumStringLiteral values[] {
66015 { static_cast<uint32_t>(SampleMethod::SYSTEM_SAMPLE), "System" },
66016 { static_cast<uint32_t>(SampleMethod::BERNOULLI_SAMPLE), "Bernoulli" },
66017 { static_cast<uint32_t>(SampleMethod::RESERVOIR_SAMPLE), "Reservoir" },
66018 { static_cast<uint32_t>(SampleMethod::INVALID), "INVALID" }
66019 };
66020 return values;
66021}

◆ GetSampleTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSampleTypeValues ( )
private
66033 {
66034 static constexpr StringUtil::EnumStringLiteral values[] {
66035 { static_cast<uint32_t>(SampleType::BLOCKING_SAMPLE), "BLOCKING_SAMPLE" },
66036 { static_cast<uint32_t>(SampleType::RESERVOIR_SAMPLE), "RESERVOIR_SAMPLE" },
66037 { static_cast<uint32_t>(SampleType::RESERVOIR_PERCENTAGE_SAMPLE), "RESERVOIR_PERCENTAGE_SAMPLE" }
66038 };
66039 return values;
66040}

◆ GetSamplingStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetSamplingStateValues ( )
private
66052 {
66053 static constexpr StringUtil::EnumStringLiteral values[] {
66054 { static_cast<uint32_t>(SamplingState::RANDOM), "RANDOM" },
66055 { static_cast<uint32_t>(SamplingState::RESERVOIR), "RESERVOIR" }
66056 };
66057 return values;
66058}

◆ GetScanTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetScanTypeValues ( )
private
66070 {
66071 static constexpr StringUtil::EnumStringLiteral values[] {
66072 { static_cast<uint32_t>(ScanType::TABLE), "TABLE" },
66073 { static_cast<uint32_t>(ScanType::PARQUET), "PARQUET" },
66074 { static_cast<uint32_t>(ScanType::EXTERNAL), "EXTERNAL" }
66075 };
66076 return values;
66077}

◆ GetSecretDisplayTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSecretDisplayTypeValues ( )
private
66089 {
66090 static constexpr StringUtil::EnumStringLiteral values[] {
66091 { static_cast<uint32_t>(SecretDisplayType::REDACTED), "REDACTED" },
66092 { static_cast<uint32_t>(SecretDisplayType::UNREDACTED), "UNREDACTED" }
66093 };
66094 return values;
66095}

◆ GetSecretPersistTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSecretPersistTypeValues ( )
private
66107 {
66108 static constexpr StringUtil::EnumStringLiteral values[] {
66109 { static_cast<uint32_t>(SecretPersistType::DEFAULT), "DEFAULT" },
66110 { static_cast<uint32_t>(SecretPersistType::TEMPORARY), "TEMPORARY" },
66111 { static_cast<uint32_t>(SecretPersistType::PERSISTENT), "PERSISTENT" }
66112 };
66113 return values;
66114}

◆ GetSecretSerializationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSecretSerializationTypeValues ( )
private
66126 {
66127 static constexpr StringUtil::EnumStringLiteral values[] {
66128 { static_cast<uint32_t>(SecretSerializationType::CUSTOM), "CUSTOM" },
66129 { static_cast<uint32_t>(SecretSerializationType::KEY_VALUE_SECRET), "KEY_VALUE_SECRET" }
66130 };
66131 return values;
66132}

◆ GetSequenceInfoValues()

const StringUtil::EnumStringLiteral * duckdb::GetSequenceInfoValues ( )
private
66144 {
66145 static constexpr StringUtil::EnumStringLiteral values[] {
66146 { static_cast<uint32_t>(SequenceInfo::SEQ_START), "SEQ_START" },
66147 { static_cast<uint32_t>(SequenceInfo::SEQ_INC), "SEQ_INC" },
66148 { static_cast<uint32_t>(SequenceInfo::SEQ_MIN), "SEQ_MIN" },
66149 { static_cast<uint32_t>(SequenceInfo::SEQ_MAX), "SEQ_MAX" },
66150 { static_cast<uint32_t>(SequenceInfo::SEQ_CYCLE), "SEQ_CYCLE" },
66151 { static_cast<uint32_t>(SequenceInfo::SEQ_OWN), "SEQ_OWN" }
66152 };
66153 return values;
66154}

◆ GetSetOperationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSetOperationTypeValues ( )
private
66166 {
66167 static constexpr StringUtil::EnumStringLiteral values[] {
66168 { static_cast<uint32_t>(SetOperationType::NONE), "NONE" },
66169 { static_cast<uint32_t>(SetOperationType::UNION), "UNION" },
66170 { static_cast<uint32_t>(SetOperationType::EXCEPT), "EXCEPT" },
66171 { static_cast<uint32_t>(SetOperationType::INTERSECT), "INTERSECT" },
66172 { static_cast<uint32_t>(SetOperationType::UNION_BY_NAME), "UNION_BY_NAME" }
66173 };
66174 return values;
66175}

◆ GetSetScopeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSetScopeValues ( )
private
66187 {
66188 static constexpr StringUtil::EnumStringLiteral values[] {
66189 { static_cast<uint32_t>(SetScope::AUTOMATIC), "AUTOMATIC" },
66190 { static_cast<uint32_t>(SetScope::LOCAL), "LOCAL" },
66191 { static_cast<uint32_t>(SetScope::SESSION), "SESSION" },
66192 { static_cast<uint32_t>(SetScope::GLOBAL), "GLOBAL" },
66193 { static_cast<uint32_t>(SetScope::VARIABLE), "VARIABLE" }
66194 };
66195 return values;
66196}

◆ GetSetTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSetTypeValues ( )
private
66208 {
66209 static constexpr StringUtil::EnumStringLiteral values[] {
66210 { static_cast<uint32_t>(SetType::SET), "SET" },
66211 { static_cast<uint32_t>(SetType::RESET), "RESET" }
66212 };
66213 return values;
66214}

◆ GetSettingScopeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSettingScopeValues ( )
private
66226 {
66227 static constexpr StringUtil::EnumStringLiteral values[] {
66228 { static_cast<uint32_t>(SettingScope::GLOBAL), "GLOBAL" },
66229 { static_cast<uint32_t>(SettingScope::LOCAL), "LOCAL" },
66230 { static_cast<uint32_t>(SettingScope::SECRET), "SECRET" },
66231 { static_cast<uint32_t>(SettingScope::INVALID), "INVALID" }
66232 };
66233 return values;
66234}

◆ GetShowTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetShowTypeValues ( )
private
66246 {
66247 static constexpr StringUtil::EnumStringLiteral values[] {
66248 { static_cast<uint32_t>(ShowType::SUMMARY), "SUMMARY" },
66249 { static_cast<uint32_t>(ShowType::DESCRIBE), "DESCRIBE" },
66250 { static_cast<uint32_t>(ShowType::SHOW_FROM), "SHOW_FROM" },
66251 { static_cast<uint32_t>(ShowType::SHOW_UNQUALIFIED), "SHOW_UNQUALIFIED" }
66252 };
66253 return values;
66254}

◆ GetSimplifiedTokenTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSimplifiedTokenTypeValues ( )
private
66266 {
66267 static constexpr StringUtil::EnumStringLiteral values[] {
66268 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_IDENTIFIER), "SIMPLIFIED_TOKEN_IDENTIFIER" },
66269 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_NUMERIC_CONSTANT), "SIMPLIFIED_TOKEN_NUMERIC_CONSTANT" },
66270 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_STRING_CONSTANT), "SIMPLIFIED_TOKEN_STRING_CONSTANT" },
66271 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_OPERATOR), "SIMPLIFIED_TOKEN_OPERATOR" },
66272 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_KEYWORD), "SIMPLIFIED_TOKEN_KEYWORD" },
66273 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_COMMENT), "SIMPLIFIED_TOKEN_COMMENT" },
66274 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_ERROR), "SIMPLIFIED_TOKEN_ERROR" },
66275 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_ERROR_EMPHASIS), "SIMPLIFIED_TOKEN_ERROR_EMPHASIS" },
66276 { static_cast<uint32_t>(SimplifiedTokenType::SIMPLIFIED_TOKEN_ERROR_SUGGESTION), "SIMPLIFIED_TOKEN_ERROR_SUGGESTION" }
66277 };
66278 return values;
66279}

◆ GetSinkCombineResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSinkCombineResultTypeValues ( )
private
66291 {
66292 static constexpr StringUtil::EnumStringLiteral values[] {
66293 { static_cast<uint32_t>(SinkCombineResultType::FINISHED), "FINISHED" },
66294 { static_cast<uint32_t>(SinkCombineResultType::BLOCKED), "BLOCKED" }
66295 };
66296 return values;
66297}

◆ GetSinkFinalizeTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSinkFinalizeTypeValues ( )
private
66309 {
66310 static constexpr StringUtil::EnumStringLiteral values[] {
66311 { static_cast<uint32_t>(SinkFinalizeType::READY), "READY" },
66312 { static_cast<uint32_t>(SinkFinalizeType::NO_OUTPUT_POSSIBLE), "NO_OUTPUT_POSSIBLE" },
66313 { static_cast<uint32_t>(SinkFinalizeType::BLOCKED), "BLOCKED" }
66314 };
66315 return values;
66316}

◆ GetSinkNextBatchTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSinkNextBatchTypeValues ( )
private
66328 {
66329 static constexpr StringUtil::EnumStringLiteral values[] {
66330 { static_cast<uint32_t>(SinkNextBatchType::READY), "READY" },
66331 { static_cast<uint32_t>(SinkNextBatchType::BLOCKED), "BLOCKED" }
66332 };
66333 return values;
66334}

◆ GetSinkResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSinkResultTypeValues ( )
private
66346 {
66347 static constexpr StringUtil::EnumStringLiteral values[] {
66348 { static_cast<uint32_t>(SinkResultType::NEED_MORE_INPUT), "NEED_MORE_INPUT" },
66349 { static_cast<uint32_t>(SinkResultType::FINISHED), "FINISHED" },
66350 { static_cast<uint32_t>(SinkResultType::BLOCKED), "BLOCKED" }
66351 };
66352 return values;
66353}

◆ GetSortKeyTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSortKeyTypeValues ( )
private
66365 {
66366 static constexpr StringUtil::EnumStringLiteral values[] {
66367 { static_cast<uint32_t>(SortKeyType::INVALID), "INVALID" },
66368 { static_cast<uint32_t>(SortKeyType::NO_PAYLOAD_FIXED_8), "NO_PAYLOAD_FIXED_8" },
66369 { static_cast<uint32_t>(SortKeyType::NO_PAYLOAD_FIXED_16), "NO_PAYLOAD_FIXED_16" },
66370 { static_cast<uint32_t>(SortKeyType::NO_PAYLOAD_FIXED_24), "NO_PAYLOAD_FIXED_24" },
66371 { static_cast<uint32_t>(SortKeyType::NO_PAYLOAD_FIXED_32), "NO_PAYLOAD_FIXED_32" },
66372 { static_cast<uint32_t>(SortKeyType::NO_PAYLOAD_VARIABLE_32), "NO_PAYLOAD_VARIABLE_32" },
66373 { static_cast<uint32_t>(SortKeyType::PAYLOAD_FIXED_16), "PAYLOAD_FIXED_16" },
66374 { static_cast<uint32_t>(SortKeyType::PAYLOAD_FIXED_24), "PAYLOAD_FIXED_24" },
66375 { static_cast<uint32_t>(SortKeyType::PAYLOAD_FIXED_32), "PAYLOAD_FIXED_32" },
66376 { static_cast<uint32_t>(SortKeyType::PAYLOAD_VARIABLE_32), "PAYLOAD_VARIABLE_32" }
66377 };
66378 return values;
66379}

◆ GetSourceResultTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSourceResultTypeValues ( )
private
66391 {
66392 static constexpr StringUtil::EnumStringLiteral values[] {
66393 { static_cast<uint32_t>(SourceResultType::HAVE_MORE_OUTPUT), "HAVE_MORE_OUTPUT" },
66394 { static_cast<uint32_t>(SourceResultType::FINISHED), "FINISHED" },
66395 { static_cast<uint32_t>(SourceResultType::BLOCKED), "BLOCKED" }
66396 };
66397 return values;
66398}

◆ GetStarExpressionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetStarExpressionTypeValues ( )
private
66410 {
66411 static constexpr StringUtil::EnumStringLiteral values[] {
66412 { static_cast<uint32_t>(StarExpressionType::STAR), "STAR" },
66413 { static_cast<uint32_t>(StarExpressionType::COLUMNS), "COLUMNS" },
66414 { static_cast<uint32_t>(StarExpressionType::UNPACKED), "UNPACKED" },
66415 { static_cast<uint32_t>(StarExpressionType::NONE), "NONE" }
66416 };
66417 return values;
66418}

◆ GetStatementReturnTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetStatementReturnTypeValues ( )
private
66430 {
66431 static constexpr StringUtil::EnumStringLiteral values[] {
66432 { static_cast<uint32_t>(StatementReturnType::QUERY_RESULT), "QUERY_RESULT" },
66433 { static_cast<uint32_t>(StatementReturnType::CHANGED_ROWS), "CHANGED_ROWS" },
66434 { static_cast<uint32_t>(StatementReturnType::NOTHING), "NOTHING" }
66435 };
66436 return values;
66437}

◆ GetStatementTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetStatementTypeValues ( )
private
66449 {
66450 static constexpr StringUtil::EnumStringLiteral values[] {
66451 { static_cast<uint32_t>(StatementType::INVALID_STATEMENT), "INVALID_STATEMENT" },
66452 { static_cast<uint32_t>(StatementType::SELECT_STATEMENT), "SELECT_STATEMENT" },
66453 { static_cast<uint32_t>(StatementType::INSERT_STATEMENT), "INSERT_STATEMENT" },
66454 { static_cast<uint32_t>(StatementType::UPDATE_STATEMENT), "UPDATE_STATEMENT" },
66455 { static_cast<uint32_t>(StatementType::CREATE_STATEMENT), "CREATE_STATEMENT" },
66456 { static_cast<uint32_t>(StatementType::DELETE_STATEMENT), "DELETE_STATEMENT" },
66457 { static_cast<uint32_t>(StatementType::PREPARE_STATEMENT), "PREPARE_STATEMENT" },
66458 { static_cast<uint32_t>(StatementType::EXECUTE_STATEMENT), "EXECUTE_STATEMENT" },
66459 { static_cast<uint32_t>(StatementType::ALTER_STATEMENT), "ALTER_STATEMENT" },
66460 { static_cast<uint32_t>(StatementType::TRANSACTION_STATEMENT), "TRANSACTION_STATEMENT" },
66461 { static_cast<uint32_t>(StatementType::COPY_STATEMENT), "COPY_STATEMENT" },
66462 { static_cast<uint32_t>(StatementType::ANALYZE_STATEMENT), "ANALYZE_STATEMENT" },
66463 { static_cast<uint32_t>(StatementType::VARIABLE_SET_STATEMENT), "VARIABLE_SET_STATEMENT" },
66464 { static_cast<uint32_t>(StatementType::CREATE_FUNC_STATEMENT), "CREATE_FUNC_STATEMENT" },
66465 { static_cast<uint32_t>(StatementType::EXPLAIN_STATEMENT), "EXPLAIN_STATEMENT" },
66466 { static_cast<uint32_t>(StatementType::DROP_STATEMENT), "DROP_STATEMENT" },
66467 { static_cast<uint32_t>(StatementType::EXPORT_STATEMENT), "EXPORT_STATEMENT" },
66468 { static_cast<uint32_t>(StatementType::PRAGMA_STATEMENT), "PRAGMA_STATEMENT" },
66469 { static_cast<uint32_t>(StatementType::VACUUM_STATEMENT), "VACUUM_STATEMENT" },
66470 { static_cast<uint32_t>(StatementType::CALL_STATEMENT), "CALL_STATEMENT" },
66471 { static_cast<uint32_t>(StatementType::SET_STATEMENT), "SET_STATEMENT" },
66472 { static_cast<uint32_t>(StatementType::LOAD_STATEMENT), "LOAD_STATEMENT" },
66473 { static_cast<uint32_t>(StatementType::RELATION_STATEMENT), "RELATION_STATEMENT" },
66474 { static_cast<uint32_t>(StatementType::EXTENSION_STATEMENT), "EXTENSION_STATEMENT" },
66475 { static_cast<uint32_t>(StatementType::LOGICAL_PLAN_STATEMENT), "LOGICAL_PLAN_STATEMENT" },
66476 { static_cast<uint32_t>(StatementType::ATTACH_STATEMENT), "ATTACH_STATEMENT" },
66477 { static_cast<uint32_t>(StatementType::DETACH_STATEMENT), "DETACH_STATEMENT" },
66478 { static_cast<uint32_t>(StatementType::MULTI_STATEMENT), "MULTI_STATEMENT" },
66479 { static_cast<uint32_t>(StatementType::COPY_DATABASE_STATEMENT), "COPY_DATABASE_STATEMENT" },
66480 { static_cast<uint32_t>(StatementType::UPDATE_EXTENSIONS_STATEMENT), "UPDATE_EXTENSIONS_STATEMENT" },
66481 { static_cast<uint32_t>(StatementType::MERGE_INTO_STATEMENT), "MERGE_INTO_STATEMENT" }
66482 };
66483 return values;
66484}

◆ GetStatisticsTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetStatisticsTypeValues ( )
private
66496 {
66497 static constexpr StringUtil::EnumStringLiteral values[] {
66498 { static_cast<uint32_t>(StatisticsType::NUMERIC_STATS), "NUMERIC_STATS" },
66499 { static_cast<uint32_t>(StatisticsType::STRING_STATS), "STRING_STATS" },
66500 { static_cast<uint32_t>(StatisticsType::LIST_STATS), "LIST_STATS" },
66501 { static_cast<uint32_t>(StatisticsType::STRUCT_STATS), "STRUCT_STATS" },
66502 { static_cast<uint32_t>(StatisticsType::BASE_STATS), "BASE_STATS" },
66503 { static_cast<uint32_t>(StatisticsType::ARRAY_STATS), "ARRAY_STATS" },
66504 { static_cast<uint32_t>(StatisticsType::GEOMETRY_STATS), "GEOMETRY_STATS" },
66505 { static_cast<uint32_t>(StatisticsType::VARIANT_STATS), "VARIANT_STATS" }
66506 };
66507 return values;
66508}

◆ GetStatsInfoValues()

const StringUtil::EnumStringLiteral * duckdb::GetStatsInfoValues ( )
private
66520 {
66521 static constexpr StringUtil::EnumStringLiteral values[] {
66522 { static_cast<uint32_t>(StatsInfo::CAN_HAVE_NULL_VALUES), "CAN_HAVE_NULL_VALUES" },
66523 { static_cast<uint32_t>(StatsInfo::CANNOT_HAVE_NULL_VALUES), "CANNOT_HAVE_NULL_VALUES" },
66524 { static_cast<uint32_t>(StatsInfo::CAN_HAVE_VALID_VALUES), "CAN_HAVE_VALID_VALUES" },
66525 { static_cast<uint32_t>(StatsInfo::CANNOT_HAVE_VALID_VALUES), "CANNOT_HAVE_VALID_VALUES" },
66526 { static_cast<uint32_t>(StatsInfo::CAN_HAVE_NULL_AND_VALID_VALUES), "CAN_HAVE_NULL_AND_VALID_VALUES" }
66527 };
66528 return values;
66529}

◆ GetStorageBlockPrefetchValues()

const StringUtil::EnumStringLiteral * duckdb::GetStorageBlockPrefetchValues ( )
private
66541 {
66542 static constexpr StringUtil::EnumStringLiteral values[] {
66543 { static_cast<uint32_t>(StorageBlockPrefetch::REMOTE_ONLY), "REMOTE_ONLY" },
66544 { static_cast<uint32_t>(StorageBlockPrefetch::NEVER), "NEVER" },
66545 { static_cast<uint32_t>(StorageBlockPrefetch::ALWAYS_PREFETCH), "ALWAYS_PREFETCH" },
66546 { static_cast<uint32_t>(StorageBlockPrefetch::DEBUG_FORCE_ALWAYS), "DEBUG_FORCE_ALWAYS" }
66547 };
66548 return values;
66549}

◆ GetStorageIndexTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetStorageIndexTypeValues ( )
private
66561 {
66562 static constexpr StringUtil::EnumStringLiteral values[] {
66563 { static_cast<uint32_t>(StorageIndexType::FULL_READ), "FULL_READ" },
66564 { static_cast<uint32_t>(StorageIndexType::PUSHDOWN_EXTRACT), "PUSHDOWN_EXTRACT" }
66565 };
66566 return values;
66567}

◆ GetStrTimeSpecifierValues()

const StringUtil::EnumStringLiteral * duckdb::GetStrTimeSpecifierValues ( )
private
66579 {
66580 static constexpr StringUtil::EnumStringLiteral values[] {
66581 { static_cast<uint32_t>(StrTimeSpecifier::ABBREVIATED_WEEKDAY_NAME), "ABBREVIATED_WEEKDAY_NAME" },
66582 { static_cast<uint32_t>(StrTimeSpecifier::FULL_WEEKDAY_NAME), "FULL_WEEKDAY_NAME" },
66583 { static_cast<uint32_t>(StrTimeSpecifier::WEEKDAY_DECIMAL), "WEEKDAY_DECIMAL" },
66584 { static_cast<uint32_t>(StrTimeSpecifier::DAY_OF_MONTH_PADDED), "DAY_OF_MONTH_PADDED" },
66585 { static_cast<uint32_t>(StrTimeSpecifier::DAY_OF_MONTH), "DAY_OF_MONTH" },
66586 { static_cast<uint32_t>(StrTimeSpecifier::ABBREVIATED_MONTH_NAME), "ABBREVIATED_MONTH_NAME" },
66587 { static_cast<uint32_t>(StrTimeSpecifier::FULL_MONTH_NAME), "FULL_MONTH_NAME" },
66588 { static_cast<uint32_t>(StrTimeSpecifier::MONTH_DECIMAL_PADDED), "MONTH_DECIMAL_PADDED" },
66589 { static_cast<uint32_t>(StrTimeSpecifier::MONTH_DECIMAL), "MONTH_DECIMAL" },
66590 { static_cast<uint32_t>(StrTimeSpecifier::YEAR_WITHOUT_CENTURY_PADDED), "YEAR_WITHOUT_CENTURY_PADDED" },
66591 { static_cast<uint32_t>(StrTimeSpecifier::YEAR_WITHOUT_CENTURY), "YEAR_WITHOUT_CENTURY" },
66592 { static_cast<uint32_t>(StrTimeSpecifier::YEAR_DECIMAL), "YEAR_DECIMAL" },
66593 { static_cast<uint32_t>(StrTimeSpecifier::HOUR_24_PADDED), "HOUR_24_PADDED" },
66594 { static_cast<uint32_t>(StrTimeSpecifier::HOUR_24_DECIMAL), "HOUR_24_DECIMAL" },
66595 { static_cast<uint32_t>(StrTimeSpecifier::HOUR_12_PADDED), "HOUR_12_PADDED" },
66596 { static_cast<uint32_t>(StrTimeSpecifier::HOUR_12_DECIMAL), "HOUR_12_DECIMAL" },
66597 { static_cast<uint32_t>(StrTimeSpecifier::AM_PM), "AM_PM" },
66598 { static_cast<uint32_t>(StrTimeSpecifier::MINUTE_PADDED), "MINUTE_PADDED" },
66599 { static_cast<uint32_t>(StrTimeSpecifier::MINUTE_DECIMAL), "MINUTE_DECIMAL" },
66600 { static_cast<uint32_t>(StrTimeSpecifier::SECOND_PADDED), "SECOND_PADDED" },
66601 { static_cast<uint32_t>(StrTimeSpecifier::SECOND_DECIMAL), "SECOND_DECIMAL" },
66602 { static_cast<uint32_t>(StrTimeSpecifier::MICROSECOND_PADDED), "MICROSECOND_PADDED" },
66603 { static_cast<uint32_t>(StrTimeSpecifier::MILLISECOND_PADDED), "MILLISECOND_PADDED" },
66604 { static_cast<uint32_t>(StrTimeSpecifier::UTC_OFFSET), "UTC_OFFSET" },
66605 { static_cast<uint32_t>(StrTimeSpecifier::TZ_NAME), "TZ_NAME" },
66606 { static_cast<uint32_t>(StrTimeSpecifier::DAY_OF_YEAR_PADDED), "DAY_OF_YEAR_PADDED" },
66607 { static_cast<uint32_t>(StrTimeSpecifier::DAY_OF_YEAR_DECIMAL), "DAY_OF_YEAR_DECIMAL" },
66608 { static_cast<uint32_t>(StrTimeSpecifier::WEEK_NUMBER_PADDED_SUN_FIRST), "WEEK_NUMBER_PADDED_SUN_FIRST" },
66609 { static_cast<uint32_t>(StrTimeSpecifier::WEEK_NUMBER_PADDED_MON_FIRST), "WEEK_NUMBER_PADDED_MON_FIRST" },
66610 { static_cast<uint32_t>(StrTimeSpecifier::LOCALE_APPROPRIATE_DATE_AND_TIME), "LOCALE_APPROPRIATE_DATE_AND_TIME" },
66611 { static_cast<uint32_t>(StrTimeSpecifier::LOCALE_APPROPRIATE_DATE), "LOCALE_APPROPRIATE_DATE" },
66612 { static_cast<uint32_t>(StrTimeSpecifier::LOCALE_APPROPRIATE_TIME), "LOCALE_APPROPRIATE_TIME" },
66613 { static_cast<uint32_t>(StrTimeSpecifier::NANOSECOND_PADDED), "NANOSECOND_PADDED" },
66614 { static_cast<uint32_t>(StrTimeSpecifier::YEAR_ISO), "YEAR_ISO" },
66615 { static_cast<uint32_t>(StrTimeSpecifier::WEEKDAY_ISO), "WEEKDAY_ISO" },
66616 { static_cast<uint32_t>(StrTimeSpecifier::WEEK_NUMBER_ISO), "WEEK_NUMBER_ISO" }
66617 };
66618 return values;
66619}

◆ GetStreamExecutionResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetStreamExecutionResultValues ( )
private
66631 {
66632 static constexpr StringUtil::EnumStringLiteral values[] {
66633 { static_cast<uint32_t>(StreamExecutionResult::CHUNK_READY), "CHUNK_READY" },
66634 { static_cast<uint32_t>(StreamExecutionResult::CHUNK_NOT_READY), "CHUNK_NOT_READY" },
66635 { static_cast<uint32_t>(StreamExecutionResult::EXECUTION_ERROR), "EXECUTION_ERROR" },
66636 { static_cast<uint32_t>(StreamExecutionResult::EXECUTION_CANCELLED), "EXECUTION_CANCELLED" },
66637 { static_cast<uint32_t>(StreamExecutionResult::BLOCKED), "BLOCKED" },
66638 { static_cast<uint32_t>(StreamExecutionResult::NO_TASKS_AVAILABLE), "NO_TASKS_AVAILABLE" },
66639 { static_cast<uint32_t>(StreamExecutionResult::EXECUTION_FINISHED), "EXECUTION_FINISHED" }
66640 };
66641 return values;
66642}

◆ GetSubqueryTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetSubqueryTypeValues ( )
private
66654 {
66655 static constexpr StringUtil::EnumStringLiteral values[] {
66656 { static_cast<uint32_t>(SubqueryType::INVALID), "INVALID" },
66657 { static_cast<uint32_t>(SubqueryType::SCALAR), "SCALAR" },
66658 { static_cast<uint32_t>(SubqueryType::EXISTS), "EXISTS" },
66659 { static_cast<uint32_t>(SubqueryType::NOT_EXISTS), "NOT_EXISTS" },
66660 { static_cast<uint32_t>(SubqueryType::ANY), "ANY" }
66661 };
66662 return values;
66663}

◆ GetTableColumnTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTableColumnTypeValues ( )
private
66675 {
66676 static constexpr StringUtil::EnumStringLiteral values[] {
66677 { static_cast<uint32_t>(TableColumnType::STANDARD), "STANDARD" },
66678 { static_cast<uint32_t>(TableColumnType::GENERATED), "GENERATED" }
66679 };
66680 return values;
66681}

◆ GetTableFilterTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTableFilterTypeValues ( )
private
66693 {
66694 static constexpr StringUtil::EnumStringLiteral values[] {
66695 { static_cast<uint32_t>(TableFilterType::CONSTANT_COMPARISON), "CONSTANT_COMPARISON" },
66696 { static_cast<uint32_t>(TableFilterType::IS_NULL), "IS_NULL" },
66697 { static_cast<uint32_t>(TableFilterType::IS_NOT_NULL), "IS_NOT_NULL" },
66698 { static_cast<uint32_t>(TableFilterType::CONJUNCTION_OR), "CONJUNCTION_OR" },
66699 { static_cast<uint32_t>(TableFilterType::CONJUNCTION_AND), "CONJUNCTION_AND" },
66700 { static_cast<uint32_t>(TableFilterType::STRUCT_EXTRACT), "STRUCT_EXTRACT" },
66701 { static_cast<uint32_t>(TableFilterType::OPTIONAL_FILTER), "OPTIONAL_FILTER" },
66702 { static_cast<uint32_t>(TableFilterType::IN_FILTER), "IN_FILTER" },
66703 { static_cast<uint32_t>(TableFilterType::DYNAMIC_FILTER), "DYNAMIC_FILTER" },
66704 { static_cast<uint32_t>(TableFilterType::EXPRESSION_FILTER), "EXPRESSION_FILTER" },
66705 { static_cast<uint32_t>(TableFilterType::BLOOM_FILTER), "BLOOM_FILTER" }
66706 };
66707 return values;
66708}

◆ GetTablePartitionInfoValues()

const StringUtil::EnumStringLiteral * duckdb::GetTablePartitionInfoValues ( )
private
66720 {
66721 static constexpr StringUtil::EnumStringLiteral values[] {
66722 { static_cast<uint32_t>(TablePartitionInfo::NOT_PARTITIONED), "NOT_PARTITIONED" },
66723 { static_cast<uint32_t>(TablePartitionInfo::SINGLE_VALUE_PARTITIONS), "SINGLE_VALUE_PARTITIONS" },
66724 { static_cast<uint32_t>(TablePartitionInfo::OVERLAPPING_PARTITIONS), "OVERLAPPING_PARTITIONS" },
66725 { static_cast<uint32_t>(TablePartitionInfo::DISJOINT_PARTITIONS), "DISJOINT_PARTITIONS" }
66726 };
66727 return values;
66728}

◆ GetTableReferenceTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTableReferenceTypeValues ( )
private
66740 {
66741 static constexpr StringUtil::EnumStringLiteral values[] {
66742 { static_cast<uint32_t>(TableReferenceType::INVALID), "INVALID" },
66743 { static_cast<uint32_t>(TableReferenceType::BASE_TABLE), "BASE_TABLE" },
66744 { static_cast<uint32_t>(TableReferenceType::SUBQUERY), "SUBQUERY" },
66745 { static_cast<uint32_t>(TableReferenceType::JOIN), "JOIN" },
66746 { static_cast<uint32_t>(TableReferenceType::TABLE_FUNCTION), "TABLE_FUNCTION" },
66747 { static_cast<uint32_t>(TableReferenceType::EXPRESSION_LIST), "EXPRESSION_LIST" },
66748 { static_cast<uint32_t>(TableReferenceType::CTE), "CTE" },
66749 { static_cast<uint32_t>(TableReferenceType::EMPTY_FROM), "EMPTY" },
66750 { static_cast<uint32_t>(TableReferenceType::PIVOT), "PIVOT" },
66751 { static_cast<uint32_t>(TableReferenceType::SHOW_REF), "SHOW_REF" },
66752 { static_cast<uint32_t>(TableReferenceType::COLUMN_DATA), "COLUMN_DATA" },
66753 { static_cast<uint32_t>(TableReferenceType::DELIM_GET), "DELIM_GET" },
66754 { static_cast<uint32_t>(TableReferenceType::BOUND_TABLE_REF), "BOUND_TABLE_REF" }
66755 };
66756 return values;
66757}

◆ GetTaskExecutionModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTaskExecutionModeValues ( )
private
66769 {
66770 static constexpr StringUtil::EnumStringLiteral values[] {
66771 { static_cast<uint32_t>(TaskExecutionMode::PROCESS_ALL), "PROCESS_ALL" },
66772 { static_cast<uint32_t>(TaskExecutionMode::PROCESS_PARTIAL), "PROCESS_PARTIAL" }
66773 };
66774 return values;
66775}

◆ GetTaskExecutionResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetTaskExecutionResultValues ( )
private
66787 {
66788 static constexpr StringUtil::EnumStringLiteral values[] {
66789 { static_cast<uint32_t>(TaskExecutionResult::TASK_FINISHED), "TASK_FINISHED" },
66790 { static_cast<uint32_t>(TaskExecutionResult::TASK_NOT_FINISHED), "TASK_NOT_FINISHED" },
66791 { static_cast<uint32_t>(TaskExecutionResult::TASK_ERROR), "TASK_ERROR" },
66792 { static_cast<uint32_t>(TaskExecutionResult::TASK_BLOCKED), "TASK_BLOCKED" }
66793 };
66794 return values;
66795}

◆ GetTemporaryBufferSizeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTemporaryBufferSizeValues ( )
private
66807 {
66808 static constexpr StringUtil::EnumStringLiteral values[] {
66809 { static_cast<uint32_t>(TemporaryBufferSize::INVALID), "INVALID" },
66810 { static_cast<uint32_t>(TemporaryBufferSize::S32K), "S32K" },
66811 { static_cast<uint32_t>(TemporaryBufferSize::S64K), "S64K" },
66812 { static_cast<uint32_t>(TemporaryBufferSize::S96K), "S96K" },
66813 { static_cast<uint32_t>(TemporaryBufferSize::S128K), "S128K" },
66814 { static_cast<uint32_t>(TemporaryBufferSize::S160K), "S160K" },
66815 { static_cast<uint32_t>(TemporaryBufferSize::S192K), "S192K" },
66816 { static_cast<uint32_t>(TemporaryBufferSize::S224K), "S224K" },
66817 { static_cast<uint32_t>(TemporaryBufferSize::DEFAULT), "DEFAULT" }
66818 };
66819 return values;
66820}

◆ GetTemporaryCompressionLevelValues()

const StringUtil::EnumStringLiteral * duckdb::GetTemporaryCompressionLevelValues ( )
private
66832 {
66833 static constexpr StringUtil::EnumStringLiteral values[] {
66834 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_MINUS_FIVE), "ZSTD_MINUS_FIVE" },
66835 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_MINUS_THREE), "ZSTD_MINUS_THREE" },
66836 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_MINUS_ONE), "ZSTD_MINUS_ONE" },
66837 { static_cast<uint32_t>(TemporaryCompressionLevel::UNCOMPRESSED), "UNCOMPRESSED" },
66838 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_ONE), "ZSTD_ONE" },
66839 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_THREE), "ZSTD_THREE" },
66840 { static_cast<uint32_t>(TemporaryCompressionLevel::ZSTD_FIVE), "ZSTD_FIVE" }
66841 };
66842 return values;
66843}

◆ GetThreadPinModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetThreadPinModeValues ( )
private
66855 {
66856 static constexpr StringUtil::EnumStringLiteral values[] {
66857 { static_cast<uint32_t>(ThreadPinMode::OFF), "OFF" },
66858 { static_cast<uint32_t>(ThreadPinMode::ON), "ON" },
66859 { static_cast<uint32_t>(ThreadPinMode::AUTO), "AUTO" }
66860 };
66861 return values;
66862}

◆ GetTimestampCastResultValues()

const StringUtil::EnumStringLiteral * duckdb::GetTimestampCastResultValues ( )
private
66874 {
66875 static constexpr StringUtil::EnumStringLiteral values[] {
66876 { static_cast<uint32_t>(TimestampCastResult::SUCCESS), "SUCCESS" },
66877 { static_cast<uint32_t>(TimestampCastResult::ERROR_INCORRECT_FORMAT), "ERROR_INCORRECT_FORMAT" },
66878 { static_cast<uint32_t>(TimestampCastResult::ERROR_NON_UTC_TIMEZONE), "ERROR_NON_UTC_TIMEZONE" },
66879 { static_cast<uint32_t>(TimestampCastResult::ERROR_RANGE), "ERROR_RANGE" },
66880 { static_cast<uint32_t>(TimestampCastResult::STRICT_UTC), "STRICT_UTC" }
66881 };
66882 return values;
66883}

◆ GetTransactionInvalidationPolicyValues()

const StringUtil::EnumStringLiteral * duckdb::GetTransactionInvalidationPolicyValues ( )
private
66895 {
66896 static constexpr StringUtil::EnumStringLiteral values[] {
66897 { static_cast<uint32_t>(TransactionInvalidationPolicy::STANDARD_POLICY), "STANDARD_POLICY" },
66898 { static_cast<uint32_t>(TransactionInvalidationPolicy::ALL_ERRORS_INVALIDATE_TRANSACTION), "ALL_ERRORS_INVALIDATE_TRANSACTION" }
66899 };
66900 return values;
66901}

◆ GetTransactionModifierTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTransactionModifierTypeValues ( )
private
66913 {
66914 static constexpr StringUtil::EnumStringLiteral values[] {
66915 { static_cast<uint32_t>(TransactionModifierType::TRANSACTION_DEFAULT_MODIFIER), "TRANSACTION_DEFAULT_MODIFIER" },
66916 { static_cast<uint32_t>(TransactionModifierType::TRANSACTION_READ_ONLY), "TRANSACTION_READ_ONLY" },
66917 { static_cast<uint32_t>(TransactionModifierType::TRANSACTION_READ_WRITE), "TRANSACTION_READ_WRITE" }
66918 };
66919 return values;
66920}

◆ GetTransactionTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTransactionTypeValues ( )
private
66932 {
66933 static constexpr StringUtil::EnumStringLiteral values[] {
66934 { static_cast<uint32_t>(TransactionType::INVALID), "INVALID" },
66935 { static_cast<uint32_t>(TransactionType::BEGIN_TRANSACTION), "BEGIN_TRANSACTION" },
66936 { static_cast<uint32_t>(TransactionType::COMMIT), "COMMIT" },
66937 { static_cast<uint32_t>(TransactionType::ROLLBACK), "ROLLBACK" }
66938 };
66939 return values;
66940}

◆ GetTupleDataNestednessTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTupleDataNestednessTypeValues ( )
private
66952 {
66953 static constexpr StringUtil::EnumStringLiteral values[] {
66954 { static_cast<uint32_t>(TupleDataNestednessType::TOP_LEVEL_LAYOUT), "TOP_LEVEL_LAYOUT" },
66955 { static_cast<uint32_t>(TupleDataNestednessType::NESTED_STRUCT_LAYOUT), "NESTED_STRUCT_LAYOUT" }
66956 };
66957 return values;
66958}

◆ GetTupleDataPinPropertiesValues()

const StringUtil::EnumStringLiteral * duckdb::GetTupleDataPinPropertiesValues ( )
private
66970 {
66971 static constexpr StringUtil::EnumStringLiteral values[] {
66972 { static_cast<uint32_t>(TupleDataPinProperties::INVALID), "INVALID" },
66973 { static_cast<uint32_t>(TupleDataPinProperties::KEEP_EVERYTHING_PINNED), "KEEP_EVERYTHING_PINNED" },
66974 { static_cast<uint32_t>(TupleDataPinProperties::UNPIN_AFTER_DONE), "UNPIN_AFTER_DONE" },
66975 { static_cast<uint32_t>(TupleDataPinProperties::DESTROY_AFTER_DONE), "DESTROY_AFTER_DONE" },
66976 { static_cast<uint32_t>(TupleDataPinProperties::ALREADY_PINNED), "ALREADY_PINNED" }
66977 };
66978 return values;
66979}

◆ GetTupleDataValidityTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetTupleDataValidityTypeValues ( )
private
66991 {
66992 static constexpr StringUtil::EnumStringLiteral values[] {
66993 { static_cast<uint32_t>(TupleDataValidityType::CAN_HAVE_NULL_VALUES), "CAN_HAVE_NULL_VALUES" },
66994 { static_cast<uint32_t>(TupleDataValidityType::CANNOT_HAVE_NULL_VALUES), "CANNOT_HAVE_NULL_VALUES" }
66995 };
66996 return values;
66997}

◆ GetUndoFlagsValues()

const StringUtil::EnumStringLiteral * duckdb::GetUndoFlagsValues ( )
private
67009 {
67010 static constexpr StringUtil::EnumStringLiteral values[] {
67011 { static_cast<uint32_t>(UndoFlags::EMPTY_ENTRY), "EMPTY_ENTRY" },
67012 { static_cast<uint32_t>(UndoFlags::CATALOG_ENTRY), "CATALOG_ENTRY" },
67013 { static_cast<uint32_t>(UndoFlags::INSERT_TUPLE), "INSERT_TUPLE" },
67014 { static_cast<uint32_t>(UndoFlags::DELETE_TUPLE), "DELETE_TUPLE" },
67015 { static_cast<uint32_t>(UndoFlags::UPDATE_TUPLE), "UPDATE_TUPLE" },
67016 { static_cast<uint32_t>(UndoFlags::SEQUENCE_VALUE), "SEQUENCE_VALUE" },
67017 { static_cast<uint32_t>(UndoFlags::ATTACHED_DATABASE), "ATTACHED_DATABASE" }
67018 };
67019 return values;
67020}

◆ GetUnionInvalidReasonValues()

const StringUtil::EnumStringLiteral * duckdb::GetUnionInvalidReasonValues ( )
private
67032 {
67033 static constexpr StringUtil::EnumStringLiteral values[] {
67034 { static_cast<uint32_t>(UnionInvalidReason::VALID), "VALID" },
67035 { static_cast<uint32_t>(UnionInvalidReason::TAG_OUT_OF_RANGE), "TAG_OUT_OF_RANGE" },
67036 { static_cast<uint32_t>(UnionInvalidReason::NO_MEMBERS), "NO_MEMBERS" },
67037 { static_cast<uint32_t>(UnionInvalidReason::VALIDITY_OVERLAP), "VALIDITY_OVERLAP" },
67038 { static_cast<uint32_t>(UnionInvalidReason::TAG_MISMATCH), "TAG_MISMATCH" },
67039 { static_cast<uint32_t>(UnionInvalidReason::NULL_TAG), "NULL_TAG" }
67040 };
67041 return values;
67042}

◆ GetVariantChildLookupModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVariantChildLookupModeValues ( )
private
67054 {
67055 static constexpr StringUtil::EnumStringLiteral values[] {
67056 { static_cast<uint32_t>(VariantChildLookupMode::INVALID), "INVALID" },
67057 { static_cast<uint32_t>(VariantChildLookupMode::BY_KEY), "BY_KEY" },
67058 { static_cast<uint32_t>(VariantChildLookupMode::BY_INDEX), "BY_INDEX" }
67059 };
67060 return values;
67061}

◆ GetVariantLogicalTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVariantLogicalTypeValues ( )
private
67073 {
67074 static constexpr StringUtil::EnumStringLiteral values[] {
67075 { static_cast<uint32_t>(VariantLogicalType::VARIANT_NULL), "VARIANT_NULL" },
67076 { static_cast<uint32_t>(VariantLogicalType::BOOL_TRUE), "BOOL_TRUE" },
67077 { static_cast<uint32_t>(VariantLogicalType::BOOL_FALSE), "BOOL_FALSE" },
67078 { static_cast<uint32_t>(VariantLogicalType::INT8), "INT8" },
67079 { static_cast<uint32_t>(VariantLogicalType::INT16), "INT16" },
67080 { static_cast<uint32_t>(VariantLogicalType::INT32), "INT32" },
67081 { static_cast<uint32_t>(VariantLogicalType::INT64), "INT64" },
67082 { static_cast<uint32_t>(VariantLogicalType::INT128), "INT128" },
67083 { static_cast<uint32_t>(VariantLogicalType::UINT8), "UINT8" },
67084 { static_cast<uint32_t>(VariantLogicalType::UINT16), "UINT16" },
67085 { static_cast<uint32_t>(VariantLogicalType::UINT32), "UINT32" },
67086 { static_cast<uint32_t>(VariantLogicalType::UINT64), "UINT64" },
67087 { static_cast<uint32_t>(VariantLogicalType::UINT128), "UINT128" },
67088 { static_cast<uint32_t>(VariantLogicalType::FLOAT), "FLOAT" },
67089 { static_cast<uint32_t>(VariantLogicalType::DOUBLE), "DOUBLE" },
67090 { static_cast<uint32_t>(VariantLogicalType::DECIMAL), "DECIMAL" },
67091 { static_cast<uint32_t>(VariantLogicalType::VARCHAR), "VARCHAR" },
67092 { static_cast<uint32_t>(VariantLogicalType::BLOB), "BLOB" },
67093 { static_cast<uint32_t>(VariantLogicalType::UUID), "UUID" },
67094 { static_cast<uint32_t>(VariantLogicalType::DATE), "DATE" },
67095 { static_cast<uint32_t>(VariantLogicalType::TIME_MICROS), "TIME_MICROS" },
67096 { static_cast<uint32_t>(VariantLogicalType::TIME_NANOS), "TIME_NANOS" },
67097 { static_cast<uint32_t>(VariantLogicalType::TIMESTAMP_SEC), "TIMESTAMP_SEC" },
67098 { static_cast<uint32_t>(VariantLogicalType::TIMESTAMP_MILIS), "TIMESTAMP_MILIS" },
67099 { static_cast<uint32_t>(VariantLogicalType::TIMESTAMP_MICROS), "TIMESTAMP_MICROS" },
67100 { static_cast<uint32_t>(VariantLogicalType::TIMESTAMP_NANOS), "TIMESTAMP_NANOS" },
67101 { static_cast<uint32_t>(VariantLogicalType::TIME_MICROS_TZ), "TIME_MICROS_TZ" },
67102 { static_cast<uint32_t>(VariantLogicalType::TIMESTAMP_MICROS_TZ), "TIMESTAMP_MICROS_TZ" },
67103 { static_cast<uint32_t>(VariantLogicalType::INTERVAL), "INTERVAL" },
67104 { static_cast<uint32_t>(VariantLogicalType::OBJECT), "OBJECT" },
67105 { static_cast<uint32_t>(VariantLogicalType::ARRAY), "ARRAY" },
67106 { static_cast<uint32_t>(VariantLogicalType::BIGNUM), "BIGNUM" },
67107 { static_cast<uint32_t>(VariantLogicalType::BITSTRING), "BITSTRING" },
67108 { static_cast<uint32_t>(VariantLogicalType::GEOMETRY), "GEOMETRY" },
67109 { static_cast<uint32_t>(VariantLogicalType::ENUM_SIZE), "ENUM_SIZE" }
67110 };
67111 return values;
67112}

◆ GetVariantStatsShreddingStateValues()

const StringUtil::EnumStringLiteral * duckdb::GetVariantStatsShreddingStateValues ( )
private
67124 {
67125 static constexpr StringUtil::EnumStringLiteral values[] {
67126 { static_cast<uint32_t>(VariantStatsShreddingState::UNINITIALIZED), "UNINITIALIZED" },
67127 { static_cast<uint32_t>(VariantStatsShreddingState::NOT_SHREDDED), "NOT_SHREDDED" },
67128 { static_cast<uint32_t>(VariantStatsShreddingState::SHREDDED), "SHREDDED" },
67129 { static_cast<uint32_t>(VariantStatsShreddingState::INCONSISTENT), "INCONSISTENT" }
67130 };
67131 return values;
67132}

◆ GetVariantValueTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVariantValueTypeValues ( )
private
67144 {
67145 static constexpr StringUtil::EnumStringLiteral values[] {
67146 { static_cast<uint32_t>(VariantValueType::PRIMITIVE), "PRIMITIVE" },
67147 { static_cast<uint32_t>(VariantValueType::OBJECT), "OBJECT" },
67148 { static_cast<uint32_t>(VariantValueType::ARRAY), "ARRAY" },
67149 { static_cast<uint32_t>(VariantValueType::MISSING), "MISSING" }
67150 };
67151 return values;
67152}

◆ GetVectorAuxiliaryDataTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVectorAuxiliaryDataTypeValues ( )
private
67164 {
67165 static constexpr StringUtil::EnumStringLiteral values[] {
67166 { static_cast<uint32_t>(VectorAuxiliaryDataType::ARROW_AUXILIARY), "ARROW_AUXILIARY" }
67167 };
67168 return values;
67169}

◆ GetVectorBufferTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVectorBufferTypeValues ( )
private
67181 {
67182 static constexpr StringUtil::EnumStringLiteral values[] {
67183 { static_cast<uint32_t>(VectorBufferType::STANDARD_BUFFER), "STANDARD_BUFFER" },
67184 { static_cast<uint32_t>(VectorBufferType::DICTIONARY_BUFFER), "DICTIONARY_BUFFER" },
67185 { static_cast<uint32_t>(VectorBufferType::VECTOR_CHILD_BUFFER), "VECTOR_CHILD_BUFFER" },
67186 { static_cast<uint32_t>(VectorBufferType::STRING_BUFFER), "STRING_BUFFER" },
67187 { static_cast<uint32_t>(VectorBufferType::FSST_BUFFER), "FSST_BUFFER" },
67188 { static_cast<uint32_t>(VectorBufferType::STRUCT_BUFFER), "STRUCT_BUFFER" },
67189 { static_cast<uint32_t>(VectorBufferType::LIST_BUFFER), "LIST_BUFFER" },
67190 { static_cast<uint32_t>(VectorBufferType::MANAGED_BUFFER), "MANAGED_BUFFER" },
67191 { static_cast<uint32_t>(VectorBufferType::OPAQUE_BUFFER), "OPAQUE_BUFFER" },
67192 { static_cast<uint32_t>(VectorBufferType::ARRAY_BUFFER), "ARRAY_BUFFER" }
67193 };
67194 return values;
67195}

◆ GetVectorTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVectorTypeValues ( )
private
67207 {
67208 static constexpr StringUtil::EnumStringLiteral values[] {
67209 { static_cast<uint32_t>(VectorType::FLAT_VECTOR), "FLAT_VECTOR" },
67210 { static_cast<uint32_t>(VectorType::FSST_VECTOR), "FSST_VECTOR" },
67211 { static_cast<uint32_t>(VectorType::CONSTANT_VECTOR), "CONSTANT_VECTOR" },
67212 { static_cast<uint32_t>(VectorType::DICTIONARY_VECTOR), "DICTIONARY_VECTOR" },
67213 { static_cast<uint32_t>(VectorType::SEQUENCE_VECTOR), "SEQUENCE_VECTOR" }
67214 };
67215 return values;
67216}

◆ GetVerificationTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVerificationTypeValues ( )
private
67228 {
67229 static constexpr StringUtil::EnumStringLiteral values[] {
67230 { static_cast<uint32_t>(VerificationType::ORIGINAL), "ORIGINAL" },
67231 { static_cast<uint32_t>(VerificationType::COPIED), "COPIED" },
67232 { static_cast<uint32_t>(VerificationType::DESERIALIZED), "DESERIALIZED" },
67233 { static_cast<uint32_t>(VerificationType::PARSED), "PARSED" },
67234 { static_cast<uint32_t>(VerificationType::UNOPTIMIZED), "UNOPTIMIZED" },
67235 { static_cast<uint32_t>(VerificationType::NO_OPERATOR_CACHING), "NO_OPERATOR_CACHING" },
67236 { static_cast<uint32_t>(VerificationType::PREPARED), "PREPARED" },
67237 { static_cast<uint32_t>(VerificationType::EXTERNAL), "EXTERNAL" },
67238 { static_cast<uint32_t>(VerificationType::EXPLAIN), "EXPLAIN" },
67239 { static_cast<uint32_t>(VerificationType::FETCH_ROW_AS_SCAN), "FETCH_ROW_AS_SCAN" },
67240 { static_cast<uint32_t>(VerificationType::INVALID), "INVALID" }
67241 };
67242 return values;
67243}

◆ GetVerifyExistenceTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVerifyExistenceTypeValues ( )
private
67255 {
67256 static constexpr StringUtil::EnumStringLiteral values[] {
67257 { static_cast<uint32_t>(VerifyExistenceType::APPEND), "APPEND" },
67258 { static_cast<uint32_t>(VerifyExistenceType::APPEND_FK), "APPEND_FK" },
67259 { static_cast<uint32_t>(VerifyExistenceType::DELETE_FK), "DELETE_FK" }
67260 };
67261 return values;
67262}

◆ GetVertexTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetVertexTypeValues ( )
private
67274 {
67275 static constexpr StringUtil::EnumStringLiteral values[] {
67276 { static_cast<uint32_t>(VertexType::XY), "XY" },
67277 { static_cast<uint32_t>(VertexType::XYZ), "XYZ" },
67278 { static_cast<uint32_t>(VertexType::XYM), "XYM" },
67279 { static_cast<uint32_t>(VertexType::XYZM), "XYZM" }
67280 };
67281 return values;
67282}

◆ GetWALTypeValues()

const StringUtil::EnumStringLiteral * duckdb::GetWALTypeValues ( )
private
67294 {
67295 static constexpr StringUtil::EnumStringLiteral values[] {
67296 { static_cast<uint32_t>(WALType::INVALID), "INVALID" },
67297 { static_cast<uint32_t>(WALType::CREATE_TABLE), "CREATE_TABLE" },
67298 { static_cast<uint32_t>(WALType::DROP_TABLE), "DROP_TABLE" },
67299 { static_cast<uint32_t>(WALType::CREATE_SCHEMA), "CREATE_SCHEMA" },
67300 { static_cast<uint32_t>(WALType::DROP_SCHEMA), "DROP_SCHEMA" },
67301 { static_cast<uint32_t>(WALType::CREATE_VIEW), "CREATE_VIEW" },
67302 { static_cast<uint32_t>(WALType::DROP_VIEW), "DROP_VIEW" },
67303 { static_cast<uint32_t>(WALType::CREATE_SEQUENCE), "CREATE_SEQUENCE" },
67304 { static_cast<uint32_t>(WALType::DROP_SEQUENCE), "DROP_SEQUENCE" },
67305 { static_cast<uint32_t>(WALType::SEQUENCE_VALUE), "SEQUENCE_VALUE" },
67306 { static_cast<uint32_t>(WALType::CREATE_MACRO), "CREATE_MACRO" },
67307 { static_cast<uint32_t>(WALType::DROP_MACRO), "DROP_MACRO" },
67308 { static_cast<uint32_t>(WALType::CREATE_TYPE), "CREATE_TYPE" },
67309 { static_cast<uint32_t>(WALType::DROP_TYPE), "DROP_TYPE" },
67310 { static_cast<uint32_t>(WALType::ALTER_INFO), "ALTER_INFO" },
67311 { static_cast<uint32_t>(WALType::CREATE_TABLE_MACRO), "CREATE_TABLE_MACRO" },
67312 { static_cast<uint32_t>(WALType::DROP_TABLE_MACRO), "DROP_TABLE_MACRO" },
67313 { static_cast<uint32_t>(WALType::CREATE_INDEX), "CREATE_INDEX" },
67314 { static_cast<uint32_t>(WALType::DROP_INDEX), "DROP_INDEX" },
67315 { static_cast<uint32_t>(WALType::USE_TABLE), "USE_TABLE" },
67316 { static_cast<uint32_t>(WALType::INSERT_TUPLE), "INSERT_TUPLE" },
67317 { static_cast<uint32_t>(WALType::DELETE_TUPLE), "DELETE_TUPLE" },
67318 { static_cast<uint32_t>(WALType::UPDATE_TUPLE), "UPDATE_TUPLE" },
67319 { static_cast<uint32_t>(WALType::ROW_GROUP_DATA), "ROW_GROUP_DATA" },
67320 { static_cast<uint32_t>(WALType::WAL_VERSION), "WAL_VERSION" },
67321 { static_cast<uint32_t>(WALType::CHECKPOINT), "CHECKPOINT" },
67322 { static_cast<uint32_t>(WALType::WAL_FLUSH), "WAL_FLUSH" }
67323 };
67324 return values;
67325}

◆ GetWindowAggregationModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetWindowAggregationModeValues ( )
private
67337 {
67338 static constexpr StringUtil::EnumStringLiteral values[] {
67339 { static_cast<uint32_t>(WindowAggregationMode::WINDOW), "WINDOW" },
67340 { static_cast<uint32_t>(WindowAggregationMode::COMBINE), "COMBINE" },
67341 { static_cast<uint32_t>(WindowAggregationMode::SEPARATE), "SEPARATE" }
67342 };
67343 return values;
67344}

◆ GetWindowBoundaryValues()

const StringUtil::EnumStringLiteral * duckdb::GetWindowBoundaryValues ( )
private
67356 {
67357 static constexpr StringUtil::EnumStringLiteral values[] {
67358 { static_cast<uint32_t>(WindowBoundary::INVALID), "INVALID" },
67359 { static_cast<uint32_t>(WindowBoundary::UNBOUNDED_PRECEDING), "UNBOUNDED_PRECEDING" },
67360 { static_cast<uint32_t>(WindowBoundary::UNBOUNDED_FOLLOWING), "UNBOUNDED_FOLLOWING" },
67361 { static_cast<uint32_t>(WindowBoundary::CURRENT_ROW_RANGE), "CURRENT_ROW_RANGE" },
67362 { static_cast<uint32_t>(WindowBoundary::CURRENT_ROW_ROWS), "CURRENT_ROW_ROWS" },
67363 { static_cast<uint32_t>(WindowBoundary::EXPR_PRECEDING_ROWS), "EXPR_PRECEDING_ROWS" },
67364 { static_cast<uint32_t>(WindowBoundary::EXPR_FOLLOWING_ROWS), "EXPR_FOLLOWING_ROWS" },
67365 { static_cast<uint32_t>(WindowBoundary::EXPR_PRECEDING_RANGE), "EXPR_PRECEDING_RANGE" },
67366 { static_cast<uint32_t>(WindowBoundary::EXPR_FOLLOWING_RANGE), "EXPR_FOLLOWING_RANGE" },
67367 { static_cast<uint32_t>(WindowBoundary::CURRENT_ROW_GROUPS), "CURRENT_ROW_GROUPS" },
67368 { static_cast<uint32_t>(WindowBoundary::EXPR_PRECEDING_GROUPS), "EXPR_PRECEDING_GROUPS" },
67369 { static_cast<uint32_t>(WindowBoundary::EXPR_FOLLOWING_GROUPS), "EXPR_FOLLOWING_GROUPS" }
67370 };
67371 return values;
67372}

◆ GetWindowExcludeModeValues()

const StringUtil::EnumStringLiteral * duckdb::GetWindowExcludeModeValues ( )
private
67384 {
67385 static constexpr StringUtil::EnumStringLiteral values[] {
67386 { static_cast<uint32_t>(WindowExcludeMode::NO_OTHER), "NO_OTHER" },
67387 { static_cast<uint32_t>(WindowExcludeMode::CURRENT_ROW), "CURRENT_ROW" },
67388 { static_cast<uint32_t>(WindowExcludeMode::GROUP), "GROUP" },
67389 { static_cast<uint32_t>(WindowExcludeMode::TIES), "TIES" }
67390 };
67391 return values;
67392}

◆ GetWindowMergeSortStageValues()

const StringUtil::EnumStringLiteral * duckdb::GetWindowMergeSortStageValues ( )
private
67404 {
67405 static constexpr StringUtil::EnumStringLiteral values[] {
67406 { static_cast<uint32_t>(WindowMergeSortStage::INIT), "INIT" },
67407 { static_cast<uint32_t>(WindowMergeSortStage::COMBINE), "COMBINE" },
67408 { static_cast<uint32_t>(WindowMergeSortStage::FINALIZE), "FINALIZE" },
67409 { static_cast<uint32_t>(WindowMergeSortStage::SORTED), "SORTED" },
67410 { static_cast<uint32_t>(WindowMergeSortStage::FINISHED), "FINISHED" }
67411 };
67412 return values;
67413}

◆ CatalogTypeToString()

DUCKDB_API string duckdb::CatalogTypeToString ( CatalogType  type)
private
67434 {
67435 switch (type) {
67436 case CatalogType::COLLATION_ENTRY:
67437 return "Collation";
67438 case CatalogType::COORDINATE_SYSTEM_ENTRY:
67439 return "Coordinate System";
67440 case CatalogType::TYPE_ENTRY:
67441 return "Type";
67442 case CatalogType::TABLE_ENTRY:
67443 return "Table";
67444 case CatalogType::SCHEMA_ENTRY:
67445 return "Schema";
67446 case CatalogType::DATABASE_ENTRY:
67447 return "Database";
67448 case CatalogType::TABLE_FUNCTION_ENTRY:
67449 return "Table Function";
67450 case CatalogType::SCALAR_FUNCTION_ENTRY:
67451 return "Scalar Function";
67452 case CatalogType::AGGREGATE_FUNCTION_ENTRY:
67453 return "Aggregate Function";
67454 case CatalogType::COPY_FUNCTION_ENTRY:
67455 return "Copy Function";
67456 case CatalogType::PRAGMA_FUNCTION_ENTRY:
67457 return "Pragma Function";
67458 case CatalogType::MACRO_ENTRY:
67459 return "Macro Function";
67460 case CatalogType::TABLE_MACRO_ENTRY:
67461 return "Table Macro Function";
67462 case CatalogType::VIEW_ENTRY:
67463 return "View";
67464 case CatalogType::INDEX_ENTRY:
67465 return "Index";
67466 case CatalogType::PREPARED_STATEMENT:
67467 return "Prepared Statement";
67468 case CatalogType::SEQUENCE_ENTRY:
67469 return "Sequence";
67470 case CatalogType::SECRET_ENTRY:
67471 return "Secret";
67472 case CatalogType::SECRET_TYPE_ENTRY:
67473 return "Secret Type";
67474 case CatalogType::SECRET_FUNCTION_ENTRY:
67475 return "Secret Function";
67476 case CatalogType::INVALID:
67477 case CatalogType::DELETED_ENTRY:
67478 case CatalogType::RENAMED_ENTRY:
67479 case CatalogType::DEPENDENCY_ENTRY:
67480 break;
67481 }
67482 return "INVALID";
67483}

◆ CatalogTypeFromString()

CatalogType duckdb::CatalogTypeFromString ( const string &  type)
private
67485 {
67486 if (type == "Collation") {
67487 return CatalogType::COLLATION_ENTRY;
67488 }
67489 if (type == "Coordinate System") {
67490 return CatalogType::COORDINATE_SYSTEM_ENTRY;
67491 }
67492 if (type == "Type") {
67493 return CatalogType::TYPE_ENTRY;
67494 }
67495 if (type == "Table") {
67496 return CatalogType::TABLE_ENTRY;
67497 }
67498 if (type == "Schema") {
67499 return CatalogType::SCHEMA_ENTRY;
67500 }
67501 if (type == "Database") {
67502 return CatalogType::DATABASE_ENTRY;
67503 }
67504 if (type == "Table Function") {
67505 return CatalogType::TABLE_FUNCTION_ENTRY;
67506 }
67507 if (type == "Scalar Function") {
67508 return CatalogType::SCALAR_FUNCTION_ENTRY;
67509 }
67510 if (type == "Aggregate Function") {
67511 return CatalogType::AGGREGATE_FUNCTION_ENTRY;
67512 }
67513 if (type == "Copy Function") {
67514 return CatalogType::COPY_FUNCTION_ENTRY;
67515 }
67516 if (type == "Pragma Function") {
67517 return CatalogType::PRAGMA_FUNCTION_ENTRY;
67518 }
67519 if (type == "Macro Function") {
67520 return CatalogType::MACRO_ENTRY;
67521 }
67522 if (type == "Table Macro Function") {
67523 return CatalogType::TABLE_MACRO_ENTRY;
67524 }
67525 if (type == "View") {
67526 return CatalogType::VIEW_ENTRY;
67527 }
67528 if (type == "Index") {
67529 return CatalogType::INDEX_ENTRY;
67530 }
67531 if (type == "Prepared Statement") {
67532 return CatalogType::PREPARED_STATEMENT;
67533 }
67534 if (type == "Sequence") {
67535 return CatalogType::SEQUENCE_ENTRY;
67536 }
67537 if (type == "INVALID") {
67538 return CatalogType::INVALID;
67539 }
67540 throw InternalException("Unrecognized CatalogType '%s'", type);
67541}

◆ ListCompressionTypes()

vector< string > duckdb::ListCompressionTypes ( void  )
private
67555 {
67556 vector<string> compression_types;
67557 uint8_t amount_of_compression_options = (uint8_t)CompressionType::COMPRESSION_COUNT;
67558 compression_types.reserve(amount_of_compression_options);
67559 for (uint8_t i = 0; i < amount_of_compression_options; i++) {
67560 compression_types.push_back(CompressionTypeToString((CompressionType)i));
67561 }
67562 return compression_types;
67563}

◆ CompressionTypeIsAvailable()

CompressionAvailabilityResult duckdb::CompressionTypeIsAvailable ( CompressionType  compression_type,
optional_ptr< StorageManager storage_manager 
)
private

Max storage compatibility

Used to signal: always deprecated

Can't determine in this call whether it's available or not, default to available

Minimum required storage version is higher than the current storage version, this method isn't available yet

Maximum supported storage version is lower than the current storage version, this method is no longer available

67574 {
67576 vector<CompressionMethodRequirements> candidates({{CompressionType::COMPRESSION_PATAS, optional_idx(), 0},
67577 {CompressionType::COMPRESSION_CHIMP, optional_idx(), 0},
67578 {CompressionType::COMPRESSION_DICTIONARY, 0, 4},
67579 {CompressionType::COMPRESSION_FSST, 0, 4},
67580 {CompressionType::COMPRESSION_DICT_FSST, 5, optional_idx()}});
67581
67582 optional_idx current_storage_version;
67583 if (storage_manager && storage_manager->HasStorageVersion()) {
67584 current_storage_version = storage_manager->GetStorageVersion();
67585 }
67586 for (auto &candidate : candidates) {
67587 auto &type = candidate.type;
67588 if (type != compression_type) {
67589 continue;
67590 }
67591 auto &min = candidate.minimum_storage_version;
67592 auto &max = candidate.maximum_storage_version;
67593
67594 if (!min.IsValid()) {
67596 return CompressionAvailabilityResult::Deprecated();
67597 }
67598
67599 if (!current_storage_version.IsValid()) {
67601 return CompressionAvailabilityResult();
67602 }
67603
67604 auto current_version = current_storage_version.GetIndex();
67605 D_ASSERT(min.IsValid());
67606 if (min.GetIndex() > current_version) {
67609 return CompressionAvailabilityResult::NotAvailableYet();
67610 }
67611 if (max.IsValid() && max.GetIndex() < current_version) {
67614 return CompressionAvailabilityResult::Deprecated();
67615 }
67616 return CompressionAvailabilityResult();
67617 }
67618 return CompressionAvailabilityResult();
67619}
Definition duckdb.hpp:2566
static softfloat max()
Here is the call graph for this function:
Here is the caller graph for this function:

◆ CompressionTypeToString()

string duckdb::CompressionTypeToString ( CompressionType  type)
private
67621 {
67622 switch (type) {
67623 case CompressionType::COMPRESSION_AUTO:
67624 return "Auto";
67625 case CompressionType::COMPRESSION_UNCOMPRESSED:
67626 return "Uncompressed";
67627 case CompressionType::COMPRESSION_CONSTANT:
67628 return "Constant";
67629 case CompressionType::COMPRESSION_RLE:
67630 return "RLE";
67631 case CompressionType::COMPRESSION_DICTIONARY:
67632 return "Dictionary";
67633 case CompressionType::COMPRESSION_PFOR_DELTA:
67634 return "PFOR";
67635 case CompressionType::COMPRESSION_BITPACKING:
67636 return "BitPacking";
67637 case CompressionType::COMPRESSION_FSST:
67638 return "FSST";
67639 case CompressionType::COMPRESSION_CHIMP:
67640 return "Chimp";
67641 case CompressionType::COMPRESSION_PATAS:
67642 return "Patas";
67643 case CompressionType::COMPRESSION_ZSTD:
67644 return "ZSTD";
67645 case CompressionType::COMPRESSION_ALP:
67646 return "ALP";
67647 case CompressionType::COMPRESSION_ALPRD:
67648 return "ALPRD";
67649 case CompressionType::COMPRESSION_ROARING:
67650 return "Roaring";
67651 case CompressionType::COMPRESSION_DICT_FSST:
67652 return "DICT_FSST";
67653 case CompressionType::COMPRESSION_EMPTY:
67654 return "Empty Validity";
67655 default:
67656 throw InternalException("Unrecognized compression type!");
67657 }
67658}
Definition duckdb.hpp:809

◆ ExpressionTypeToString()

DUCKDB_API string duckdb::ExpressionTypeToString ( ExpressionType  type)
67754 {
67755 switch (type) {
67756 case ExpressionType::OPERATOR_CAST:
67757 return "CAST";
67758 case ExpressionType::OPERATOR_NOT:
67759 return "NOT";
67760 case ExpressionType::OPERATOR_IS_NULL:
67761 return "IS_NULL";
67762 case ExpressionType::OPERATOR_IS_NOT_NULL:
67763 return "IS_NOT_NULL";
67764 case ExpressionType::OPERATOR_UNPACK:
67765 return "UNPACK";
67766 case ExpressionType::COMPARE_EQUAL:
67767 return "EQUAL";
67768 case ExpressionType::COMPARE_NOTEQUAL:
67769 return "NOTEQUAL";
67770 case ExpressionType::COMPARE_LESSTHAN:
67771 return "LESSTHAN";
67772 case ExpressionType::COMPARE_GREATERTHAN:
67773 return "GREATERTHAN";
67774 case ExpressionType::COMPARE_LESSTHANOREQUALTO:
67775 return "LESSTHANOREQUALTO";
67776 case ExpressionType::COMPARE_GREATERTHANOREQUALTO:
67777 return "GREATERTHANOREQUALTO";
67778 case ExpressionType::COMPARE_IN:
67779 return "IN";
67780 case ExpressionType::COMPARE_DISTINCT_FROM:
67781 return "DISTINCT_FROM";
67782 case ExpressionType::COMPARE_NOT_DISTINCT_FROM:
67783 return "NOT_DISTINCT_FROM";
67784 case ExpressionType::CONJUNCTION_AND:
67785 return "AND";
67786 case ExpressionType::CONJUNCTION_OR:
67787 return "OR";
67788 case ExpressionType::VALUE_CONSTANT:
67789 return "CONSTANT";
67790 case ExpressionType::VALUE_PARAMETER:
67791 return "PARAMETER";
67792 case ExpressionType::VALUE_TUPLE:
67793 return "TUPLE";
67794 case ExpressionType::VALUE_TUPLE_ADDRESS:
67795 return "TUPLE_ADDRESS";
67796 case ExpressionType::VALUE_NULL:
67797 return "NULL";
67798 case ExpressionType::VALUE_VECTOR:
67799 return "VECTOR";
67800 case ExpressionType::VALUE_SCALAR:
67801 return "SCALAR";
67802 case ExpressionType::AGGREGATE:
67803 return "AGGREGATE";
67804 case ExpressionType::WINDOW_AGGREGATE:
67805 return "WINDOW_AGGREGATE";
67806 case ExpressionType::WINDOW_RANK:
67807 return "RANK";
67808 case ExpressionType::WINDOW_RANK_DENSE:
67809 return "RANK_DENSE";
67810 case ExpressionType::WINDOW_PERCENT_RANK:
67811 return "PERCENT_RANK";
67812 case ExpressionType::WINDOW_ROW_NUMBER:
67813 return "ROW_NUMBER";
67814 case ExpressionType::WINDOW_FIRST_VALUE:
67815 return "FIRST_VALUE";
67816 case ExpressionType::WINDOW_LAST_VALUE:
67817 return "LAST_VALUE";
67818 case ExpressionType::WINDOW_NTH_VALUE:
67819 return "NTH_VALUE";
67820 case ExpressionType::WINDOW_CUME_DIST:
67821 return "CUME_DIST";
67822 case ExpressionType::WINDOW_LEAD:
67823 return "LEAD";
67824 case ExpressionType::WINDOW_LAG:
67825 return "LAG";
67826 case ExpressionType::WINDOW_NTILE:
67827 return "NTILE";
67828 case ExpressionType::WINDOW_FILL:
67829 return "FILL";
67830 case ExpressionType::FUNCTION:
67831 return "FUNCTION";
67832 case ExpressionType::CASE_EXPR:
67833 return "CASE";
67834 case ExpressionType::OPERATOR_NULLIF:
67835 return "NULLIF";
67836 case ExpressionType::OPERATOR_COALESCE:
67837 return "COALESCE";
67838 case ExpressionType::OPERATOR_TRY:
67839 return "TRY";
67840 case ExpressionType::ARRAY_EXTRACT:
67841 return "ARRAY_EXTRACT";
67842 case ExpressionType::ARRAY_SLICE:
67843 return "ARRAY_SLICE";
67844 case ExpressionType::STRUCT_EXTRACT:
67845 return "STRUCT_EXTRACT";
67846 case ExpressionType::SUBQUERY:
67847 return "SUBQUERY";
67848 case ExpressionType::STAR:
67849 return "STAR";
67850 case ExpressionType::PLACEHOLDER:
67851 return "PLACEHOLDER";
67852 case ExpressionType::COLUMN_REF:
67853 return "COLUMN_REF";
67854 case ExpressionType::LAMBDA_REF:
67855 return "LAMBDA_REF";
67856 case ExpressionType::FUNCTION_REF:
67857 return "FUNCTION_REF";
67858 case ExpressionType::TABLE_REF:
67859 return "TABLE_REF";
67860 case ExpressionType::CAST:
67861 return "CAST";
67862 case ExpressionType::COMPARE_NOT_IN:
67863 return "COMPARE_NOT_IN";
67864 case ExpressionType::COMPARE_BETWEEN:
67865 return "COMPARE_BETWEEN";
67866 case ExpressionType::COMPARE_NOT_BETWEEN:
67867 return "COMPARE_NOT_BETWEEN";
67868 case ExpressionType::VALUE_DEFAULT:
67869 return "VALUE_DEFAULT";
67870 case ExpressionType::BOUND_REF:
67871 return "BOUND_REF";
67872 case ExpressionType::BOUND_COLUMN_REF:
67873 return "BOUND_COLUMN_REF";
67874 case ExpressionType::BOUND_FUNCTION:
67875 return "BOUND_FUNCTION";
67876 case ExpressionType::BOUND_AGGREGATE:
67877 return "BOUND_AGGREGATE";
67878 case ExpressionType::GROUPING_FUNCTION:
67879 return "GROUPING";
67880 case ExpressionType::ARRAY_CONSTRUCTOR:
67881 return "ARRAY_CONSTRUCTOR";
67882 case ExpressionType::TABLE_STAR:
67883 return "TABLE_STAR";
67884 case ExpressionType::BOUND_UNNEST:
67885 return "BOUND_UNNEST";
67886 case ExpressionType::COLLATE:
67887 return "COLLATE";
67888 case ExpressionType::POSITIONAL_REFERENCE:
67889 return "POSITIONAL_REFERENCE";
67890 case ExpressionType::BOUND_LAMBDA_REF:
67891 return "BOUND_LAMBDA_REF";
67892 case ExpressionType::LAMBDA:
67893 return "LAMBDA";
67894 case ExpressionType::ARROW:
67895 return "ARROW";
67896 case ExpressionType::TYPE:
67897 return "TYPE";
67898 case ExpressionType::BOUND_EXPANDED:
67899 return "BOUND_EXPANDED";
67900 case ExpressionType::INVALID:
67901 break;
67902 }
67903 return "INVALID";
67904}

◆ ExpressionClassToString()

DUCKDB_API string duckdb::ExpressionClassToString ( ExpressionClass  type)
67905 {
67906 switch (type) {
67907 case ExpressionClass::INVALID:
67908 return "INVALID";
67909 case ExpressionClass::AGGREGATE:
67910 return "AGGREGATE";
67911 case ExpressionClass::CASE:
67912 return "CASE";
67913 case ExpressionClass::CAST:
67914 return "CAST";
67915 case ExpressionClass::COLUMN_REF:
67916 return "COLUMN_REF";
67917 case ExpressionClass::LAMBDA_REF:
67918 return "LAMBDA_REF";
67919 case ExpressionClass::COMPARISON:
67920 return "COMPARISON";
67921 case ExpressionClass::CONJUNCTION:
67922 return "CONJUNCTION";
67923 case ExpressionClass::CONSTANT:
67924 return "CONSTANT";
67925 case ExpressionClass::DEFAULT:
67926 return "DEFAULT";
67927 case ExpressionClass::FUNCTION:
67928 return "FUNCTION";
67929 case ExpressionClass::OPERATOR:
67930 return "OPERATOR";
67931 case ExpressionClass::STAR:
67932 return "STAR";
67933 case ExpressionClass::SUBQUERY:
67934 return "SUBQUERY";
67935 case ExpressionClass::WINDOW:
67936 return "WINDOW";
67937 case ExpressionClass::PARAMETER:
67938 return "PARAMETER";
67939 case ExpressionClass::COLLATE:
67940 return "COLLATE";
67941 case ExpressionClass::LAMBDA:
67942 return "LAMBDA";
67943 case ExpressionClass::POSITIONAL_REFERENCE:
67944 return "POSITIONAL_REFERENCE";
67945 case ExpressionClass::BETWEEN:
67946 return "BETWEEN";
67947 case ExpressionClass::TYPE:
67948 return "TYPE";
67949 case ExpressionClass::BOUND_AGGREGATE:
67950 return "BOUND_AGGREGATE";
67951 case ExpressionClass::BOUND_CASE:
67952 return "BOUND_CASE";
67953 case ExpressionClass::BOUND_CAST:
67954 return "BOUND_CAST";
67955 case ExpressionClass::BOUND_COLUMN_REF:
67956 return "BOUND_COLUMN_REF";
67957 case ExpressionClass::BOUND_COMPARISON:
67958 return "BOUND_COMPARISON";
67959 case ExpressionClass::BOUND_CONJUNCTION:
67960 return "BOUND_CONJUNCTION";
67961 case ExpressionClass::BOUND_CONSTANT:
67962 return "BOUND_CONSTANT";
67963 case ExpressionClass::BOUND_DEFAULT:
67964 return "BOUND_DEFAULT";
67965 case ExpressionClass::BOUND_FUNCTION:
67966 return "BOUND_FUNCTION";
67967 case ExpressionClass::BOUND_OPERATOR:
67968 return "BOUND_OPERATOR";
67969 case ExpressionClass::BOUND_PARAMETER:
67970 return "BOUND_PARAMETER";
67971 case ExpressionClass::BOUND_REF:
67972 return "BOUND_REF";
67973 case ExpressionClass::BOUND_SUBQUERY:
67974 return "BOUND_SUBQUERY";
67975 case ExpressionClass::BOUND_WINDOW:
67976 return "BOUND_WINDOW";
67977 case ExpressionClass::BOUND_BETWEEN:
67978 return "BOUND_BETWEEN";
67979 case ExpressionClass::BOUND_UNNEST:
67980 return "BOUND_UNNEST";
67981 case ExpressionClass::BOUND_LAMBDA:
67982 return "BOUND_LAMBDA";
67983 case ExpressionClass::BOUND_EXPRESSION:
67984 return "BOUND_EXPRESSION";
67985 case ExpressionClass::BOUND_EXPANDED:
67986 return "BOUND_EXPANDED";
67987 default:
67988 return "ExpressionClass::!!UNIMPLEMENTED_CASE!!";
67989 }
67990}

◆ ExpressionTypeToOperator()

string duckdb::ExpressionTypeToOperator ( ExpressionType  type)
67992 {
67993 switch (type) {
67994 case ExpressionType::COMPARE_EQUAL:
67995 return "=";
67996 case ExpressionType::COMPARE_NOTEQUAL:
67997 return "!=";
67998 case ExpressionType::COMPARE_LESSTHAN:
67999 return "<";
68000 case ExpressionType::COMPARE_GREATERTHAN:
68001 return ">";
68002 case ExpressionType::COMPARE_LESSTHANOREQUALTO:
68003 return "<=";
68004 case ExpressionType::COMPARE_GREATERTHANOREQUALTO:
68005 return ">=";
68006 case ExpressionType::COMPARE_DISTINCT_FROM:
68007 return "IS DISTINCT FROM";
68008 case ExpressionType::COMPARE_NOT_DISTINCT_FROM:
68009 return "IS NOT DISTINCT FROM";
68010 case ExpressionType::CONJUNCTION_AND:
68011 return "AND";
68012 case ExpressionType::CONJUNCTION_OR:
68013 return "OR";
68014 default:
68015 return "";
68016 }
68017}

◆ NegateComparisonExpression()

ExpressionType duckdb::NegateComparisonExpression ( ExpressionType  type)

Negate a comparison expression, turning e.g. = into !=, or < into >=.

68019 {
68020 ExpressionType negated_type = ExpressionType::INVALID;
68021 switch (type) {
68022 case ExpressionType::COMPARE_EQUAL:
68023 negated_type = ExpressionType::COMPARE_NOTEQUAL;
68024 break;
68025 case ExpressionType::COMPARE_NOTEQUAL:
68026 negated_type = ExpressionType::COMPARE_EQUAL;
68027 break;
68028 case ExpressionType::COMPARE_LESSTHAN:
68029 negated_type = ExpressionType::COMPARE_GREATERTHANOREQUALTO;
68030 break;
68031 case ExpressionType::COMPARE_GREATERTHAN:
68032 negated_type = ExpressionType::COMPARE_LESSTHANOREQUALTO;
68033 break;
68034 case ExpressionType::COMPARE_LESSTHANOREQUALTO:
68035 negated_type = ExpressionType::COMPARE_GREATERTHAN;
68036 break;
68037 case ExpressionType::COMPARE_GREATERTHANOREQUALTO:
68038 negated_type = ExpressionType::COMPARE_LESSTHAN;
68039 break;
68040 case ExpressionType::COMPARE_DISTINCT_FROM:
68041 negated_type = ExpressionType::COMPARE_NOT_DISTINCT_FROM;
68042 break;
68043 case ExpressionType::COMPARE_NOT_DISTINCT_FROM:
68044 negated_type = ExpressionType::COMPARE_DISTINCT_FROM;
68045 break;
68046 default:
68047 throw InternalException("Unsupported comparison type in negation");
68048 }
68049 return negated_type;
68050}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FlipComparisonExpression()

ExpressionType duckdb::FlipComparisonExpression ( ExpressionType  type)

Flip a comparison expression, turning e.g. < into >, or = into =.

68052 {
68053 ExpressionType flipped_type = ExpressionType::INVALID;
68054 switch (type) {
68055 case ExpressionType::COMPARE_NOT_DISTINCT_FROM:
68056 case ExpressionType::COMPARE_DISTINCT_FROM:
68057 case ExpressionType::COMPARE_NOTEQUAL:
68058 case ExpressionType::COMPARE_EQUAL:
68059 flipped_type = type;
68060 break;
68061 case ExpressionType::COMPARE_LESSTHAN:
68062 flipped_type = ExpressionType::COMPARE_GREATERTHAN;
68063 break;
68064 case ExpressionType::COMPARE_GREATERTHAN:
68065 flipped_type = ExpressionType::COMPARE_LESSTHAN;
68066 break;
68067 case ExpressionType::COMPARE_LESSTHANOREQUALTO:
68068 flipped_type = ExpressionType::COMPARE_GREATERTHANOREQUALTO;
68069 break;
68070 case ExpressionType::COMPARE_GREATERTHANOREQUALTO:
68071 flipped_type = ExpressionType::COMPARE_LESSTHANOREQUALTO;
68072 break;
68073 default:
68074 throw InternalException("Unsupported comparison type in flip");
68075 }
68076 return flipped_type;
68077}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ OperatorToExpressionType()

ExpressionType duckdb::OperatorToExpressionType ( const string &  op)
68079 {
68080 if (op == "=" || op == "==") {
68081 return ExpressionType::COMPARE_EQUAL;
68082 } else if (op == "!=" || op == "<>") {
68083 return ExpressionType::COMPARE_NOTEQUAL;
68084 } else if (op == "<") {
68085 return ExpressionType::COMPARE_LESSTHAN;
68086 } else if (op == ">") {
68087 return ExpressionType::COMPARE_GREATERTHAN;
68088 } else if (op == "<=") {
68089 return ExpressionType::COMPARE_LESSTHANOREQUALTO;
68090 } else if (op == ">=") {
68091 return ExpressionType::COMPARE_GREATERTHANOREQUALTO;
68092 }
68093 return ExpressionType::INVALID;
68094}

◆ FileCompressionTypeFromString()

FileCompressionType duckdb::FileCompressionTypeFromString ( const string &  input)
68103 {
68104 auto parameter = StringUtil::Lower(input);
68105 if (parameter == "infer" || parameter == "auto") {
68106 return FileCompressionType::AUTO_DETECT;
68107 } else if (parameter == "gzip") {
68108 return FileCompressionType::GZIP;
68109 } else if (parameter == "zstd") {
68110 return FileCompressionType::ZSTD;
68111 } else if (parameter == "uncompressed" || parameter == "none" || parameter.empty()) {
68112 return FileCompressionType::UNCOMPRESSED;
68113 } else {
68114 throw ParserException("Unrecognized file compression type \"%s\"", input);
68115 }
68116}

◆ CompressionExtensionFromType()

string duckdb::CompressionExtensionFromType ( const FileCompressionType  type)
68118 {
68119 switch (type) {
68120 case FileCompressionType::GZIP:
68121 return ".gz";
68122 case FileCompressionType::ZSTD:
68123 return ".zst";
68124 default:
68125 throw NotImplementedException("Compression Extension of file compression type is not implemented");
68126 }
68127}
Definition duckdb.hpp:745

◆ IsFileCompressed()

bool duckdb::IsFileCompressed ( string  path,
FileCompressionType  type 
)
68129 {
68130 auto extension = CompressionExtensionFromType(type);
68131 std::size_t question_mark_pos = std::string::npos;
68132 if (!StringUtil::StartsWith(path, "\\\\?\\")) {
68133 question_mark_pos = path.find('?');
68134 }
68135 path = path.substr(0, question_mark_pos);
68136 if (StringUtil::EndsWith(path, extension)) {
68137 return true;
68138 }
68139 return false;
68140}

◆ IsLeftOuterJoin()

bool duckdb::IsLeftOuterJoin ( JoinType  type)

True if join is left or full outer join.

68419 {
68420 return type == JoinType::LEFT || type == JoinType::OUTER;
68421}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsRightOuterJoin()

bool duckdb::IsRightOuterJoin ( JoinType  type)

True if join is rght or full outer join.

68423 {
68424 return type == JoinType::OUTER || type == JoinType::RIGHT;
68425}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ PropagatesBuildSide()

bool duckdb::PropagatesBuildSide ( JoinType  type)

Whether the build side is propagated out of the join.

68427 {
68428 return type == JoinType::OUTER || type == JoinType::RIGHT || type == JoinType::RIGHT_ANTI ||
68429 type == JoinType::RIGHT_SEMI;
68430}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasInverseJoinType()

bool duckdb::HasInverseJoinType ( JoinType  type)

Whether the JoinType has an inverse.

68432 {
68433 return type != JoinType::SINGLE && type != JoinType::MARK;
68434}
Here is the call graph for this function:
Here is the caller graph for this function:

◆ InverseJoinType()

JoinType duckdb::InverseJoinType ( JoinType  type)

Gets the inverse JoinType, e.g., LEFT -> RIGHT.

68436 {
68437 D_ASSERT(HasInverseJoinType(type));
68438 switch (type) {
68439 case JoinType::LEFT:
68440 return JoinType::RIGHT;
68441 case JoinType::RIGHT:
68442 return JoinType::LEFT;
68443 case JoinType::INNER:
68444 return JoinType::INNER;
68445 case JoinType::OUTER:
68446 return JoinType::OUTER;
68447 case JoinType::SEMI:
68448 return JoinType::RIGHT_SEMI;
68449 case JoinType::ANTI:
68450 return JoinType::RIGHT_ANTI;
68451 case JoinType::RIGHT_SEMI:
68452 return JoinType::SEMI;
68453 case JoinType::RIGHT_ANTI:
68454 return JoinType::ANTI;
68455 default:
68456 throw NotImplementedException("InverseJoinType for JoinType::%s", EnumUtil::ToString(type));
68457 }
68458}
bool HasInverseJoinType(JoinType type)
Whether the JoinType has an inverse.
Definition duckdb.cpp:68432
Here is the call graph for this function:
Here is the caller graph for this function:

◆ JoinTypeToString()

string duckdb::JoinTypeToString ( JoinType  type)
68461 {
68462 return EnumUtil::ToString(type);
68463}

◆ LogicalOperatorToString()

DUCKDB_API string duckdb::LogicalOperatorToString ( LogicalOperatorType  type)
68474 {
68475 switch (type) {
68476 case LogicalOperatorType::LOGICAL_GET:
68477 return "GET";
68478 case LogicalOperatorType::LOGICAL_CHUNK_GET:
68479 return "CHUNK_GET";
68480 case LogicalOperatorType::LOGICAL_DELIM_GET:
68481 return "DELIM_GET";
68482 case LogicalOperatorType::LOGICAL_EMPTY_RESULT:
68483 return "EMPTY_RESULT";
68484 case LogicalOperatorType::LOGICAL_EXPRESSION_GET:
68485 return "EXPRESSION_GET";
68486 case LogicalOperatorType::LOGICAL_ANY_JOIN:
68487 return "ANY_JOIN";
68488 case LogicalOperatorType::LOGICAL_ASOF_JOIN:
68489 return "ASOF_JOIN";
68490 case LogicalOperatorType::LOGICAL_DEPENDENT_JOIN:
68491 return "DEPENDENT_JOIN";
68492 case LogicalOperatorType::LOGICAL_COMPARISON_JOIN:
68493 return "COMPARISON_JOIN";
68494 case LogicalOperatorType::LOGICAL_DELIM_JOIN:
68495 return "DELIM_JOIN";
68496 case LogicalOperatorType::LOGICAL_PROJECTION:
68497 return "PROJECTION";
68498 case LogicalOperatorType::LOGICAL_FILTER:
68499 return "FILTER";
68500 case LogicalOperatorType::LOGICAL_AGGREGATE_AND_GROUP_BY:
68501 return "AGGREGATE";
68502 case LogicalOperatorType::LOGICAL_WINDOW:
68503 return "WINDOW";
68504 case LogicalOperatorType::LOGICAL_UNNEST:
68505 return "UNNEST";
68506 case LogicalOperatorType::LOGICAL_LIMIT:
68507 return "LIMIT";
68508 case LogicalOperatorType::LOGICAL_ORDER_BY:
68509 return "ORDER_BY";
68510 case LogicalOperatorType::LOGICAL_TOP_N:
68511 return "TOP_N";
68512 case LogicalOperatorType::LOGICAL_SAMPLE:
68513 return "SAMPLE";
68514 case LogicalOperatorType::LOGICAL_COPY_TO_FILE:
68515 return "COPY_TO_FILE";
68516 case LogicalOperatorType::LOGICAL_COPY_DATABASE:
68517 return "COPY_DATABASE";
68518 case LogicalOperatorType::LOGICAL_JOIN:
68519 return "JOIN";
68520 case LogicalOperatorType::LOGICAL_CROSS_PRODUCT:
68521 return "CROSS_PRODUCT";
68522 case LogicalOperatorType::LOGICAL_POSITIONAL_JOIN:
68523 return "POSITIONAL_JOIN";
68524 case LogicalOperatorType::LOGICAL_UNION:
68525 return "UNION";
68526 case LogicalOperatorType::LOGICAL_EXCEPT:
68527 return "EXCEPT";
68528 case LogicalOperatorType::LOGICAL_INTERSECT:
68529 return "INTERSECT";
68530 case LogicalOperatorType::LOGICAL_INSERT:
68531 return "INSERT";
68532 case LogicalOperatorType::LOGICAL_DISTINCT:
68533 return "DISTINCT";
68534 case LogicalOperatorType::LOGICAL_DELETE:
68535 return "DELETE";
68536 case LogicalOperatorType::LOGICAL_UPDATE:
68537 return "UPDATE";
68538 case LogicalOperatorType::LOGICAL_MERGE_INTO:
68539 return "MERGE_INTO";
68540 case LogicalOperatorType::LOGICAL_PREPARE:
68541 return "PREPARE";
68542 case LogicalOperatorType::LOGICAL_DUMMY_SCAN:
68543 return "DUMMY_SCAN";
68544 case LogicalOperatorType::LOGICAL_CREATE_INDEX:
68545 return "CREATE_INDEX";
68546 case LogicalOperatorType::LOGICAL_CREATE_TABLE:
68547 return "CREATE_TABLE";
68548 case LogicalOperatorType::LOGICAL_CREATE_MACRO:
68549 return "CREATE_MACRO";
68550 case LogicalOperatorType::LOGICAL_EXPLAIN:
68551 return "EXPLAIN";
68552 case LogicalOperatorType::LOGICAL_EXECUTE:
68553 return "EXECUTE";
68554 case LogicalOperatorType::LOGICAL_VACUUM:
68555 return "VACUUM";
68556 case LogicalOperatorType::LOGICAL_RECURSIVE_CTE:
68557 return "REC_CTE";
68558 case LogicalOperatorType::LOGICAL_MATERIALIZED_CTE:
68559 return "CTE";
68560 case LogicalOperatorType::LOGICAL_CTE_REF:
68561 return "CTE_SCAN";
68562 case LogicalOperatorType::LOGICAL_ALTER:
68563 return "ALTER";
68564 case LogicalOperatorType::LOGICAL_CREATE_SEQUENCE:
68565 return "CREATE_SEQUENCE";
68566 case LogicalOperatorType::LOGICAL_CREATE_TYPE:
68567 return "CREATE_TYPE";
68568 case LogicalOperatorType::LOGICAL_CREATE_VIEW:
68569 return "CREATE_VIEW";
68570 case LogicalOperatorType::LOGICAL_CREATE_SCHEMA:
68571 return "CREATE_SCHEMA";
68572 case LogicalOperatorType::LOGICAL_CREATE_SECRET:
68573 return "CREATE_SECRET";
68574 case LogicalOperatorType::LOGICAL_ATTACH:
68575 return "ATTACH";
68576 case LogicalOperatorType::LOGICAL_DETACH:
68577 return "DETACH";
68578 case LogicalOperatorType::LOGICAL_DROP:
68579 return "DROP";
68580 case LogicalOperatorType::LOGICAL_PRAGMA:
68581 return "PRAGMA";
68582 case LogicalOperatorType::LOGICAL_TRANSACTION:
68583 return "TRANSACTION";
68584 case LogicalOperatorType::LOGICAL_EXPORT:
68585 return "EXPORT";
68586 case LogicalOperatorType::LOGICAL_SET:
68587 return "SET";
68588 case LogicalOperatorType::LOGICAL_RESET:
68589 return "RESET";
68590 case LogicalOperatorType::LOGICAL_LOAD:
68591 return "LOAD";
68592 case LogicalOperatorType::LOGICAL_INVALID:
68593 break;
68594 case LogicalOperatorType::LOGICAL_EXTENSION_OPERATOR:
68595 return "CUSTOM_OP";
68596 case LogicalOperatorType::LOGICAL_PIVOT:
68597 return "PIVOT";
68598 case LogicalOperatorType::LOGICAL_UPDATE_EXTENSIONS:
68599 return "UPDATE_EXTENSIONS";
68600 }
68601 return "INVALID";
68602}

◆ OptimizerTypeToString()

string duckdb::OptimizerTypeToString ( OptimizerType  type)
private
69701 {
69702 for (idx_t i = 0; internal_optimizer_types[i].name; i++) {
69703 if (internal_optimizer_types[i].type == type) {
69704 return internal_optimizer_types[i].name;
69705 }
69706 }
69707 throw InternalException("Invalid optimizer type");
69708}

◆ ListAllOptimizers()

vector< string > duckdb::ListAllOptimizers ( )
private
69710 {
69711 vector<string> result;
69712 for (idx_t i = 0; internal_optimizer_types[i].name; i++) {
69713 result.push_back(internal_optimizer_types[i].name);
69714 }
69715 return result;
69716}

◆ OptimizerTypeFromString()

OptimizerType duckdb::OptimizerTypeFromString ( const string &  str)
private
69718 {
69719 for (idx_t i = 0; internal_optimizer_types[i].name; i++) {
69720 if (internal_optimizer_types[i].name == str) {
69721 return internal_optimizer_types[i].type;
69722 }
69723 }
69724 // optimizer not found, construct candidate list
69725 vector<string> optimizer_names;
69726 for (idx_t i = 0; internal_optimizer_types[i].name; i++) {
69727 optimizer_names.emplace_back(internal_optimizer_types[i].name);
69728 }
69729 throw ParserException("Optimizer type \"%s\" not recognized\n%s", str,
69730 StringUtil::CandidatesErrorMessage(optimizer_names, str, "Candidate optimizers"));
69731}

◆ PhysicalOperatorToString()

string duckdb::PhysicalOperatorToString ( PhysicalOperatorType  type)
69739 {
69740 switch (type) {
69741 case PhysicalOperatorType::TABLE_SCAN:
69742 return "TABLE_SCAN";
69743 case PhysicalOperatorType::DUMMY_SCAN:
69744 return "DUMMY_SCAN";
69745 case PhysicalOperatorType::CHUNK_SCAN:
69746 return "CHUNK_SCAN";
69747 case PhysicalOperatorType::COLUMN_DATA_SCAN:
69748 return "COLUMN_DATA_SCAN";
69749 case PhysicalOperatorType::DELIM_SCAN:
69750 return "DELIM_SCAN";
69751 case PhysicalOperatorType::ORDER_BY:
69752 return "ORDER_BY";
69753 case PhysicalOperatorType::LIMIT:
69754 return "LIMIT";
69755 case PhysicalOperatorType::LIMIT_PERCENT:
69756 return "LIMIT_PERCENT";
69757 case PhysicalOperatorType::STREAMING_LIMIT:
69758 return "STREAMING_LIMIT";
69759 case PhysicalOperatorType::RESERVOIR_SAMPLE:
69760 return "RESERVOIR_SAMPLE";
69761 case PhysicalOperatorType::STREAMING_SAMPLE:
69762 return "STREAMING_SAMPLE";
69763 case PhysicalOperatorType::TOP_N:
69764 return "TOP_N";
69765 case PhysicalOperatorType::WINDOW:
69766 return "WINDOW";
69767 case PhysicalOperatorType::STREAMING_WINDOW:
69768 return "STREAMING_WINDOW";
69769 case PhysicalOperatorType::UNNEST:
69770 return "UNNEST";
69771 case PhysicalOperatorType::UNGROUPED_AGGREGATE:
69772 return "UNGROUPED_AGGREGATE";
69773 case PhysicalOperatorType::HASH_GROUP_BY:
69774 return "HASH_GROUP_BY";
69775 case PhysicalOperatorType::PERFECT_HASH_GROUP_BY:
69776 return "PERFECT_HASH_GROUP_BY";
69777 case PhysicalOperatorType::PARTITIONED_AGGREGATE:
69778 return "PARTITIONED_AGGREGATE";
69779 case PhysicalOperatorType::FILTER:
69780 return "FILTER";
69781 case PhysicalOperatorType::PROJECTION:
69782 return "PROJECTION";
69783 case PhysicalOperatorType::COPY_TO_FILE:
69784 return "COPY_TO_FILE";
69785 case PhysicalOperatorType::BATCH_COPY_TO_FILE:
69786 return "BATCH_COPY_TO_FILE";
69787 case PhysicalOperatorType::LEFT_DELIM_JOIN:
69788 return "LEFT_DELIM_JOIN";
69789 case PhysicalOperatorType::RIGHT_DELIM_JOIN:
69790 return "RIGHT_DELIM_JOIN";
69791 case PhysicalOperatorType::BLOCKWISE_NL_JOIN:
69792 return "BLOCKWISE_NL_JOIN";
69793 case PhysicalOperatorType::NESTED_LOOP_JOIN:
69794 return "NESTED_LOOP_JOIN";
69795 case PhysicalOperatorType::HASH_JOIN:
69796 return "HASH_JOIN";
69797 case PhysicalOperatorType::PIECEWISE_MERGE_JOIN:
69798 return "PIECEWISE_MERGE_JOIN";
69799 case PhysicalOperatorType::IE_JOIN:
69800 return "IE_JOIN";
69801 case PhysicalOperatorType::ASOF_JOIN:
69802 return "ASOF_JOIN";
69803 case PhysicalOperatorType::CROSS_PRODUCT:
69804 return "CROSS_PRODUCT";
69805 case PhysicalOperatorType::POSITIONAL_JOIN:
69806 return "POSITIONAL_JOIN";
69807 case PhysicalOperatorType::POSITIONAL_SCAN:
69808 return "POSITIONAL_SCAN";
69809 case PhysicalOperatorType::UNION:
69810 return "UNION";
69811 case PhysicalOperatorType::INSERT:
69812 return "INSERT";
69813 case PhysicalOperatorType::BATCH_INSERT:
69814 return "BATCH_INSERT";
69815 case PhysicalOperatorType::DELETE_OPERATOR:
69816 return "DELETE";
69817 case PhysicalOperatorType::UPDATE:
69818 return "UPDATE";
69819 case PhysicalOperatorType::MERGE_INTO:
69820 return "MERGE_INTO";
69821 case PhysicalOperatorType::EMPTY_RESULT:
69822 return "EMPTY_RESULT";
69823 case PhysicalOperatorType::CREATE_TABLE:
69824 return "CREATE_TABLE";
69825 case PhysicalOperatorType::CREATE_TABLE_AS:
69826 return "CREATE_TABLE_AS";
69827 case PhysicalOperatorType::BATCH_CREATE_TABLE_AS:
69828 return "BATCH_CREATE_TABLE_AS";
69829 case PhysicalOperatorType::CREATE_INDEX:
69830 return "CREATE_INDEX";
69831 case PhysicalOperatorType::EXPLAIN:
69832 return "EXPLAIN";
69833 case PhysicalOperatorType::EXPLAIN_ANALYZE:
69834 return "EXPLAIN_ANALYZE";
69835 case PhysicalOperatorType::EXECUTE:
69836 return "EXECUTE";
69837 case PhysicalOperatorType::VACUUM:
69838 return "VACUUM";
69839 case PhysicalOperatorType::RECURSIVE_CTE:
69840 return "REC_CTE";
69841 case PhysicalOperatorType::RECURSIVE_KEY_CTE:
69842 return "REC_KEY_CTE";
69843 case PhysicalOperatorType::CTE:
69844 return "CTE";
69845 case PhysicalOperatorType::RECURSIVE_CTE_SCAN:
69846 return "REC_CTE_SCAN";
69847 case PhysicalOperatorType::RECURSIVE_RECURRING_CTE_SCAN:
69848 return "REC_REC_CTE_SCAN";
69849 case PhysicalOperatorType::CTE_SCAN:
69850 return "CTE_SCAN";
69851 case PhysicalOperatorType::EXPRESSION_SCAN:
69852 return "EXPRESSION_SCAN";
69853 case PhysicalOperatorType::ALTER:
69854 return "ALTER";
69855 case PhysicalOperatorType::CREATE_SEQUENCE:
69856 return "CREATE_SEQUENCE";
69857 case PhysicalOperatorType::CREATE_VIEW:
69858 return "CREATE_VIEW";
69859 case PhysicalOperatorType::CREATE_SCHEMA:
69860 return "CREATE_SCHEMA";
69861 case PhysicalOperatorType::CREATE_MACRO:
69862 return "CREATE_MACRO";
69863 case PhysicalOperatorType::CREATE_SECRET:
69864 return "CREATE_SECRET";
69865 case PhysicalOperatorType::DROP:
69866 return "DROP";
69867 case PhysicalOperatorType::PRAGMA:
69868 return "PRAGMA";
69869 case PhysicalOperatorType::TRANSACTION:
69870 return "TRANSACTION";
69871 case PhysicalOperatorType::PREPARE:
69872 return "PREPARE";
69873 case PhysicalOperatorType::EXPORT:
69874 return "EXPORT";
69875 case PhysicalOperatorType::SET:
69876 return "SET";
69877 case PhysicalOperatorType::SET_VARIABLE:
69878 return "SET_VARIABLE";
69879 case PhysicalOperatorType::RESET:
69880 return "RESET";
69881 case PhysicalOperatorType::LOAD:
69882 return "LOAD";
69883 case PhysicalOperatorType::INOUT_FUNCTION:
69884 return "INOUT_FUNCTION";
69885 case PhysicalOperatorType::CREATE_TYPE:
69886 return "CREATE_TYPE";
69887 case PhysicalOperatorType::ATTACH:
69888 return "ATTACH";
69889 case PhysicalOperatorType::DETACH:
69890 return "DETACH";
69891 case PhysicalOperatorType::RESULT_COLLECTOR:
69892 return "RESULT_COLLECTOR";
69893 case PhysicalOperatorType::EXTENSION:
69894 return "EXTENSION";
69895 case PhysicalOperatorType::PIVOT:
69896 return "PIVOT";
69897 case PhysicalOperatorType::COPY_DATABASE:
69898 return "COPY_DATABASE";
69899 case PhysicalOperatorType::VERIFY_VECTOR:
69900 return "VERIFY_VECTOR";
69901 case PhysicalOperatorType::UPDATE_EXTENSIONS:
69902 return "UPDATE_EXTENSIONS";
69903 case PhysicalOperatorType::INVALID:
69904 break;
69905 }
69906 return "INVALID";
69907}

◆ RelationTypeToString()

string duckdb::RelationTypeToString ( RelationType  type)
69918 {
69919 switch (type) {
69920 case RelationType::TABLE_RELATION:
69921 return "TABLE_RELATION";
69922 case RelationType::DELIM_GET_RELATION:
69923 return "DELIM_GET_RELATION";
69924 case RelationType::DELIM_JOIN_RELATION:
69925 return "DELIM_JOIN_RELATION";
69926 case RelationType::PROJECTION_RELATION:
69927 return "PROJECTION_RELATION";
69928 case RelationType::FILTER_RELATION:
69929 return "FILTER_RELATION";
69930 case RelationType::EXPLAIN_RELATION:
69931 return "EXPLAIN_RELATION";
69932 case RelationType::CROSS_PRODUCT_RELATION:
69933 return "CROSS_PRODUCT_RELATION";
69934 case RelationType::JOIN_RELATION:
69935 return "JOIN_RELATION";
69936 case RelationType::AGGREGATE_RELATION:
69937 return "AGGREGATE_RELATION";
69938 case RelationType::SET_OPERATION_RELATION:
69939 return "SET_OPERATION_RELATION";
69940 case RelationType::DISTINCT_RELATION:
69941 return "DISTINCT_RELATION";
69942 case RelationType::LIMIT_RELATION:
69943 return "LIMIT_RELATION";
69944 case RelationType::ORDER_RELATION:
69945 return "ORDER_RELATION";
69946 case RelationType::CREATE_VIEW_RELATION:
69947 return "CREATE_VIEW_RELATION";
69948 case RelationType::CREATE_TABLE_RELATION:
69949 return "CREATE_TABLE_RELATION";
69950 case RelationType::INSERT_RELATION:
69951 return "INSERT_RELATION";
69952 case RelationType::VALUE_LIST_RELATION:
69953 return "VALUE_LIST_RELATION";
69954 case RelationType::MATERIALIZED_RELATION:
69955 return "MATERIALIZED_RELATION";
69956 case RelationType::DELETE_RELATION:
69957 return "DELETE_RELATION";
69958 case RelationType::UPDATE_RELATION:
69959 return "UPDATE_RELATION";
69960 case RelationType::WRITE_CSV_RELATION:
69961 return "WRITE_CSV_RELATION";
69962 case RelationType::WRITE_PARQUET_RELATION:
69963 return "WRITE_PARQUET_RELATION";
69964 case RelationType::READ_CSV_RELATION:
69965 return "READ_CSV_RELATION";
69966 case RelationType::SUBQUERY_RELATION:
69967 return "SUBQUERY_RELATION";
69968 case RelationType::TABLE_FUNCTION_RELATION:
69969 return "TABLE_FUNCTION_RELATION";
69970 case RelationType::VIEW_RELATION:
69971 return "VIEW_RELATION";
69972 case RelationType::QUERY_RELATION:
69973 return "QUERY_RELATION";
69974 case RelationType::EXTENSION_RELATION:
69975 return "EXTENSION_RELATION";
69976 case RelationType::INVALID_RELATION:
69977 break;
69978 }
69979 return "INVALID_RELATION";
69980}

◆ StatementTypeToString()

DUCKDB_API string duckdb::StatementTypeToString ( StatementType  type)
69991 {
69992 switch (type) {
69993 case StatementType::SELECT_STATEMENT:
69994 return "SELECT";
69995 case StatementType::INSERT_STATEMENT:
69996 return "INSERT";
69997 case StatementType::UPDATE_STATEMENT:
69998 return "UPDATE";
69999 case StatementType::DELETE_STATEMENT:
70000 return "DELETE";
70001 case StatementType::PREPARE_STATEMENT:
70002 return "PREPARE";
70003 case StatementType::EXECUTE_STATEMENT:
70004 return "EXECUTE";
70005 case StatementType::ALTER_STATEMENT:
70006 return "ALTER";
70007 case StatementType::TRANSACTION_STATEMENT:
70008 return "TRANSACTION";
70009 case StatementType::COPY_STATEMENT:
70010 return "COPY";
70011 case StatementType::COPY_DATABASE_STATEMENT:
70012 return "COPY_DATABASE";
70013 case StatementType::ANALYZE_STATEMENT:
70014 return "ANALYZE";
70015 case StatementType::VARIABLE_SET_STATEMENT:
70016 return "VARIABLE_SET";
70017 case StatementType::CREATE_FUNC_STATEMENT:
70018 return "CREATE_FUNC";
70019 case StatementType::EXPLAIN_STATEMENT:
70020 return "EXPLAIN";
70021 case StatementType::CREATE_STATEMENT:
70022 return "CREATE";
70023 case StatementType::DROP_STATEMENT:
70024 return "DROP";
70025 case StatementType::PRAGMA_STATEMENT:
70026 return "PRAGMA";
70027 case StatementType::VACUUM_STATEMENT:
70028 return "VACUUM";
70029 case StatementType::RELATION_STATEMENT:
70030 return "RELATION";
70031 case StatementType::EXPORT_STATEMENT:
70032 return "EXPORT";
70033 case StatementType::CALL_STATEMENT:
70034 return "CALL";
70035 case StatementType::SET_STATEMENT:
70036 return "SET";
70037 case StatementType::LOAD_STATEMENT:
70038 return "LOAD";
70039 case StatementType::EXTENSION_STATEMENT:
70040 return "EXTENSION";
70041 case StatementType::LOGICAL_PLAN_STATEMENT:
70042 return "LOGICAL_PLAN";
70043 case StatementType::ATTACH_STATEMENT:
70044 return "ATTACH";
70045 case StatementType::DETACH_STATEMENT:
70046 return "DETACH";
70047 case StatementType::MULTI_STATEMENT:
70048 return "MULTI";
70049 case StatementType::UPDATE_EXTENSIONS_STATEMENT:
70050 return "UPDATE_EXTENSIONS";
70051 case StatementType::MERGE_INTO_STATEMENT:
70052 return "MERGE_INTO";
70053 case StatementType::INVALID_STATEMENT:
70054 break;
70055 }
70056 return "INVALID";
70057}

◆ StatementReturnTypeToString()

string duckdb::StatementReturnTypeToString ( StatementReturnType  type)
70059 {
70060 switch (type) {
70061 case StatementReturnType::QUERY_RESULT:
70062 return "QUERY_RESULT";
70063 case StatementReturnType::CHANGED_ROWS:
70064 return "CHANGED_ROWS";
70065 case StatementReturnType::NOTHING:
70066 return "NOTHING";
70067 }
70068 return "INVALID";
70069}

◆ TemplatedGetPos()

template<class T >
int64_t duckdb::TemplatedGetPos ( const string_map_t< T > &  map,
const string_t key 
)
private
72487 {
72488 auto it = map.find(key);
72489 if (it == map.end()) {
72490 return -1;
72491 }
72492 return it->second;
72493}

◆ PathMatched()

bool duckdb::PathMatched ( const string &  path,
const string &  sub_path 
)
73622 {
73623 return path.rfind(sub_path, 0) == 0;
73624}

◆ GetFileUrlOffset()

static idx_t duckdb::GetFileUrlOffset ( const string &  path)
static
73873 {
73874 if (!StringUtil::StartsWith(path, "file:/")) {
73875 return 0;
73876 }
73877
73878 // Url without host: file:/some/path
73879 if (path[6] != '/') {
73880#ifdef _WIN32
73881 return 6;
73882#else
73883 return 5;
73884#endif
73885 }
73886
73887 // Url with empty host: file:///some/path
73888 if (path[7] == '/') {
73889#ifdef _WIN32
73890 return 8;
73891#else
73892 return 7;
73893#endif
73894 }
73895
73896 // Url with localhost: file://localhost/some/path
73897 if (path.compare(7, 10, "localhost/") == 0) {
73898#ifdef _WIN32
73899 return 17;
73900#else
73901 return 16;
73902#endif
73903 }
73904
73905 // unkown file:/ url format
73906 return 0;
73907}

◆ SupportsLegacyFilenamePattern()

bool duckdb::SupportsLegacyFilenamePattern ( const vector< FileNameSegment > &  segments)
74598 {
74600 for (auto &segment : segments) {
74601 if (segment.type == FileNameSegmentType::UUID_V7) {
74602 // UUID v7 is not supported in legacy mode
74603 return false;
74604 }
74605 if (segment.type != FileNameSegmentType::LITERAL) {
74606 non_literal_count++;
74607 }
74608 }
74609 if (non_literal_count != 1) {
74610 // legacy mode requires exactly one non-literal
74611 return false;
74612 }
74613 return true;
74614}

◆ GetLegacyFilenamePattern()

LegacyFilenamePattern duckdb::GetLegacyFilenamePattern ( const vector< FileNameSegment > &  segments)
74616 {
74617 LegacyFilenamePattern pattern;
74618 // construct the base + pos
74619 for (auto &segment : segments) {
74620 if (segment.type == FileNameSegmentType::LITERAL) {
74621 // add the literal to the base
74622 pattern.base += segment.data;
74623 } else {
74624 // non-literal: set the position to the current location
74625 pattern.pos = pattern.base.size();
74626 }
74627 }
74628 return pattern;
74629}
Definition duckdb.cpp:74593

◆ GZipConsumeString()

static idx_t duckdb::GZipConsumeString ( QueryContext  context,
FileHandle input 
)
staticprivate
77342 {
77343 idx_t size = 1; // terminator
77344 char buffer[1];
77345 while (input.Read(context, buffer, 1) == 1) {
77346 if (buffer[0] == '\0') {
77347 break;
77348 }
77349 size++;
77350 }
77351 return size;
77352}

◆ GetKnownColumnValues()

static unordered_map< column_t, PartitioningColumnValue > duckdb::GetKnownColumnValues ( const string &  filename,
const HivePartitioningFilterInfo filter_info 
)
static
77787 {
77789
77790 auto &column_map = filter_info.column_map;
77791 if (filter_info.filename_enabled) {
77792 auto lookup_column_id = column_map.find("filename");
77793 if (lookup_column_id != column_map.end()) {
77794 result.insert(make_pair(lookup_column_id->second, PartitioningColumnValue(filename)));
77795 }
77796 }
77797
77798 if (filter_info.hive_enabled) {
77799 auto partitions = HivePartitioning::Parse(filename);
77800 for (auto &partition : partitions) {
77801 auto lookup_column_id = column_map.find(partition.first);
77802 if (lookup_column_id != column_map.end()) {
77803 result.insert(
77804 make_pair(lookup_column_id->second, PartitioningColumnValue(partition.first, partition.second)));
77805 }
77806 }
77807 }
77808
77809 return result;
77810}
int partition(const std::vector< _Tp > &_vec, std::vector< int > &labels, _EqPredicate predicate=_EqPredicate())
Definition duckdb.cpp:77776

◆ ConvertKnownColRefToConstants()

static void duckdb::ConvertKnownColRefToConstants ( ClientContext context,
unique_ptr< Expression > &  expr,
const unordered_map< column_t, PartitioningColumnValue > &  known_column_values,
idx_t  table_index 
)
static
77815 {
77816 if (expr->GetExpressionType() == ExpressionType::BOUND_COLUMN_REF) {
77817 auto &bound_colref = expr->Cast<BoundColumnRefExpression>();
77818
77819 // This bound column ref is for another table
77820 if (table_index != bound_colref.binding.table_index) {
77821 return;
77822 }
77823
77824 auto lookup = known_column_values.find(bound_colref.binding.column_index);
77825 if (lookup != known_column_values.end()) {
77826 auto &partition_val = lookup->second;
77827 Value result_val;
77828 if (partition_val.key.empty()) {
77829 // filename column - use directly
77830 result_val = Value(partition_val.value);
77831 } else {
77832 // hive partitioning column - cast the value to the target type
77833 result_val = HivePartitioning::GetValue(context, partition_val.key, partition_val.value,
77834 bound_colref.return_type);
77835 }
77836 expr = make_uniq<BoundConstantExpression>(std::move(result_val));
77837 }
77838 } else {
77839 ExpressionIterator::EnumerateChildren(*expr, [&](unique_ptr<Expression> &child) {
77840 ConvertKnownColRefToConstants(context, child, known_column_values, table_index);
77841 });
77842 }
77843}
Definition duckdb.cpp:1643

◆ GetHiveKeyValue() [1/2]

template<class T >
static Value duckdb::GetHiveKeyValue ( const T &  val)
inlinestatic
77984 {
77985 return Value::CreateValue<T>(val);
77986}

◆ GetHiveKeyValue() [2/2]

template<class T >
static Value duckdb::GetHiveKeyValue ( const T &  val,
const LogicalType type 
)
inlinestatic
77989 {
77990 auto result = GetHiveKeyValue(val);
77991 result.Reinterpret(type);
77992 return result;
77993}

◆ GetHiveKeyNullValue()

static Value duckdb::GetHiveKeyNullValue ( const LogicalType type)
inlinestatic
77995 {
77996 Value result;
77997 result.Reinterpret(type);
77998 return result;
77999}

◆ TemplatedGetHivePartitionValues()

template<class T >
static void duckdb::TemplatedGetHivePartitionValues ( Vector input,
vector< HivePartitionKey > &  keys,
const idx_t  col_idx,
const idx_t  count 
)
static
78003 {
78004 UnifiedVectorFormat format;
78005 input.ToUnifiedFormat(count, format);
78006
78007 const auto &sel = *format.sel;
78008 const auto data = UnifiedVectorFormat::GetData<T>(format);
78009 const auto &validity = format.validity;
78010
78011 const auto &type = input.GetType();
78012
78013 for (idx_t i = 0; i < count; i++) {
78014 auto &key = keys[i];
78015 const auto idx = sel.get_index(i);
78016 if (validity.RowIsValid(idx)) {
78017 key.values[col_idx] = GetHiveKeyValue(data[idx], type);
78018 } else {
78019 key.values[col_idx] = GetHiveKeyNullValue(type);
78020 }
78021 }
78022}
DUCKDB_API void ToUnifiedFormat(idx_t count, UnifiedVectorFormat &data)
Definition duckdb.hpp:10493

◆ GetNestedHivePartitionValues()

static void duckdb::GetNestedHivePartitionValues ( Vector input,
vector< HivePartitionKey > &  keys,
const idx_t  col_idx,
const idx_t  count 
)
static
78025 {
78026 for (idx_t i = 0; i < count; i++) {
78027 auto &key = keys[i];
78028 key.values[col_idx] = input.GetValue(i);
78029 }
78030}
DUCKDB_API Value GetValue(idx_t index) const
Returns the [index] element of the Vector as a Value.

◆ GetHivePartitionValuesTypeSwitch()

static void duckdb::GetHivePartitionValuesTypeSwitch ( Vector input,
vector< HivePartitionKey > &  keys,
const idx_t  col_idx,
const idx_t  count 
)
static
78033 {
78034 const auto &type = input.GetType();
78035 switch (type.InternalType()) {
78036 case PhysicalType::BOOL:
78038 break;
78039 case PhysicalType::INT8:
78041 break;
78042 case PhysicalType::INT16:
78044 break;
78045 case PhysicalType::INT32:
78047 break;
78048 case PhysicalType::INT64:
78050 break;
78051 case PhysicalType::INT128:
78053 break;
78054 case PhysicalType::UINT8:
78056 break;
78057 case PhysicalType::UINT16:
78059 break;
78060 case PhysicalType::UINT32:
78062 break;
78063 case PhysicalType::UINT64:
78065 break;
78066 case PhysicalType::UINT128:
78068 break;
78069 case PhysicalType::FLOAT:
78071 break;
78072 case PhysicalType::DOUBLE:
78074 break;
78075 case PhysicalType::INTERVAL:
78077 break;
78078 case PhysicalType::VARCHAR:
78080 break;
78081 case PhysicalType::STRUCT:
78082 case PhysicalType::LIST:
78083 GetNestedHivePartitionValues(input, keys, col_idx, count);
78084 break;
78085 default:
78086 throw InternalException("Unsupported type for HivePartitionedColumnData::ComputePartitionIndices");
78087 }
78088}

◆ IsCharacter()

static bool duckdb::IsCharacter ( char  c)
inlinestaticprivate
78322 {
78323 return (c & 0xc0) != 0x80;
78324}

◆ Length()

template<class TA , class TR >
static TR duckdb::Length ( TA  input)
inlinestaticprivate
78327 {
78328 auto input_data = input.GetData();
78329 auto input_length = input.GetSize();
78330 TR length = 0;
78331 for (idx_t i = 0; i < input_length; i++) {
78332 length += IsCharacter(input_data[i]);
78333 }
78334 return length;
78335}

◆ GraphemeCount()

template<class TA , class TR >
static TR duckdb::GraphemeCount ( TA  input)
inlinestaticprivate
78338 {
78339 auto input_data = input.GetData();
78340 auto input_length = input.GetSize();
78341 for (idx_t i = 0; i < input_length; i++) {
78342 if (input_data[i] & 0x80) {
78343 // non-ascii character: use grapheme iterator on remainder of string
78344 return UnsafeNumericCast<TR>(Utf8Proc::GraphemeCount(input_data, input_length));
78345 }
78346 }
78347 return UnsafeNumericCast<TR>(input_length);
78348}

◆ StatsInternal()

static FileMetadata duckdb::StatsInternal ( int  fd,
const string &  path 
)
staticprivate
78542 {
78543 struct stat s;
78544 if (fstat(fd, &s) == -1) {
78545 throw IOException({{"errno", std::to_string(errno)}}, "Failed to get stats for file \"%s\": %s", path,
78546 strerror(errno));
78547 }
78548
78549 FileMetadata file_metadata;
78550 file_metadata.file_size = s.st_size;
78551 file_metadata.last_modification_time = Timestamp::FromEpochSeconds(s.st_mtime);
78552
78553 switch (s.st_mode & S_IFMT) {
78554 case S_IFBLK:
78555 file_metadata.file_type = FileType::FILE_TYPE_BLOCKDEV;
78556 break;
78557 case S_IFCHR:
78558 file_metadata.file_type = FileType::FILE_TYPE_CHARDEV;
78559 break;
78560 case S_IFIFO:
78561 file_metadata.file_type = FileType::FILE_TYPE_FIFO;
78562 break;
78563 case S_IFDIR:
78564 file_metadata.file_type = FileType::FILE_TYPE_DIR;
78565 break;
78566 case S_IFLNK:
78567 file_metadata.file_type = FileType::FILE_TYPE_LINK;
78568 break;
78569 case S_IFREG:
78570 file_metadata.file_type = FileType::FILE_TYPE_REGULAR;
78571 break;
78572 case S_IFSOCK:
78573 file_metadata.file_type = FileType::FILE_TYPE_SOCKET;
78574 break;
78575 default:
78576 file_metadata.file_type = FileType::FILE_TYPE_INVALID;
78577 break;
78578 }
78579
78580 return file_metadata;
78581} // LCOV_EXCL_STOP

◆ AdditionalProcessInfo()

static string duckdb::AdditionalProcessInfo ( FileSystem fs,
pid_t  pid 
)
staticprivate
78665 {
78666 return "";
78667}

◆ RemoveDirectoryRecursive()

int duckdb::RemoveDirectoryRecursive ( const char path)
private
79023 {
79024 DIR *d = opendir(path);
79025 idx_t path_len = (idx_t)strlen(path);
79026 int r = -1;
79027
79028 if (d) {
79029 struct dirent *p;
79030 r = 0;
79031 while (!r && (p = readdir(d))) {
79032 int r2 = -1;
79033 char *buf;
79034 idx_t len;
79035 /* Skip the names "." and ".." as we don't want to recurse on them. */
79036 if (!strcmp(p->d_name, ".") || !strcmp(p->d_name, "..")) {
79037 continue;
79038 }
79039 len = path_len + (idx_t)strlen(p->d_name) + 2;
79040 buf = new (std::nothrow) char[len];
79041 if (buf) {
79042 struct stat statbuf;
79043 snprintf(buf, len, "%s/%s", path, p->d_name);
79044 if (!stat(buf, &statbuf)) {
79045 if (S_ISDIR(statbuf.st_mode)) {
79046 r2 = RemoveDirectoryRecursive(buf);
79047 } else {
79048 r2 = unlink(buf);
79049 }
79050 }
79051 delete[] buf;
79052 }
79053 r = r2;
79054 }
79055 closedir(d);
79056 }
79057 if (!r) {
79058 r = rmdir(path);
79059 }
79060 return r;
79061}

◆ GetPosixVersionTag()

string duckdb::GetPosixVersionTag ( struct stat  s)
private
79076 {
79077 // dev/ino should be enough, but to guard against in-place writes we also add file size and modification time
79079 Store(UnsafeNumericCast<uint64_t>(s.st_dev), data_ptr_cast(&version_tag[0]));
79080 Store(UnsafeNumericCast<uint64_t>(s.st_ino), data_ptr_cast(&version_tag[1]));
79081 Store(UnsafeNumericCast<uint64_t>(s.st_size), data_ptr_cast(&version_tag[2]));
79082 Store(Timestamp::FromEpochSeconds(s.st_mtime).value, data_ptr_cast(&version_tag[3]));
79083
79084 return string(char_ptr_cast(version_tag), sizeof(uint64_t) * 4);
79085}

◆ IsCrawl()

static bool duckdb::IsCrawl ( const string &  glob)
staticprivate
79930 {
79931 // glob must match exactly
79932 return glob == "**";
79933}
void glob(String pattern, std::vector< String > &result, bool recursive=false)

◆ IsSymbolicLink()

static bool duckdb::IsSymbolicLink ( const string &  path)
staticprivate
79935 {
79936#ifndef _WIN32
79937 struct stat status;
79938 return (lstat(path.c_str(), &status) != -1 && S_ISLNK(status.st_mode));
79939#else
79943 return false;
79944 }
79945 return attributes & FILE_ATTRIBUTE_REPARSE_POINT;
79946#endif
79947}

◆ HasMultipleCrawl()

static bool duckdb::HasMultipleCrawl ( const vector< PathSplit > &  splits)
staticprivate
79978 {
79979 idx_t crawl_count = 0;
79980 for (auto &split : splits) {
79981 if (split.path == "**") {
79982 crawl_count++;
79983 }
79984 }
79985 return crawl_count > 1;
79986}
void split(const Mat &src, Mat *mvbegin)

◆ CrawlDirectoryLevel()

static void duckdb::CrawlDirectoryLevel ( FileSystem fs,
const string &  path,
optional_ptr< vector< OpenFileInfo > >  files,
std::priority_queue< ExpandDirectory > &  directories,
idx_t  split_index 
)
staticprivate
80003 {
80004 fs.ListFiles(path, [&](OpenFileInfo &info) {
80005 info.path = fs.JoinPath(path, info.path);
80006 if (IsSymbolicLink(info.path)) {
80007 return;
80008 }
80009 bool is_directory = FileSystem::IsDirectory(info);
80010 if (is_directory) {
80011 directories.emplace(std::move(info.path), split_index);
80012 } else if (files) {
80013 files->push_back(std::move(info));
80014 }
80015 });
80016}
DUCKDB_API string JoinPath(const string &a, const string &path)
Join two paths together.
Definition duckdb.cpp:73803
virtual DUCKDB_API bool ListFiles(const string &directory, const std::function< void(const string &, bool)> &callback, FileOpener *opener=nullptr)
List files in a directory, invoking the callback method for each one with (filename,...
Definition duckdb.cpp:74063
Definition duckdb.hpp:7908

◆ GlobFilesInternal()

static void duckdb::GlobFilesInternal ( FileSystem fs,
const string &  path,
const string &  glob,
bool  match_directory,
vector< OpenFileInfo > &  result 
)
staticprivate
80019 {
80020 fs.ListFiles(path, [&](OpenFileInfo &info) {
80021 bool is_directory = FileSystem::IsDirectory(info);
80023 return;
80024 }
80025 if (Glob(info.path.c_str(), info.path.size(), glob.c_str(), glob.size())) {
80026 info.path = fs.JoinPath(path, info.path);
80027 result.push_back(std::move(info));
80028 }
80029 });
80030}

◆ data_ptr_cast()

template<class SRC >
data_ptr_t duckdb::data_ptr_cast ( SRC src)
264 { // NOLINT: naming
265 return reinterpret_cast<data_ptr_t>(src);
266}

◆ const_data_ptr_cast()

template<class SRC >
const_data_ptr_t duckdb::const_data_ptr_cast ( const SRC src)
269 { // NOLINT: naming
270 return reinterpret_cast<const_data_ptr_t>(src);
271}

◆ char_ptr_cast()

template<class SRC >
char * duckdb::char_ptr_cast ( SRC src)
274 { // NOLINT: naming
275 return reinterpret_cast<char *>(src);
276}

◆ const_char_ptr_cast()

template<class SRC >
const char * duckdb::const_char_ptr_cast ( const SRC src)
279 { // NOLINT: naming
280 return reinterpret_cast<const char *>(src);
281}

◆ const_uchar_ptr_cast()

template<class SRC >
const unsigned char * duckdb::const_uchar_ptr_cast ( const SRC src)
284 { // NOLINT: naming
285 return reinterpret_cast<const unsigned char *>(src);
286}

◆ CastPointerToValue()

template<class SRC >
uintptr_t duckdb::CastPointerToValue ( SRC src)
289 {
290 return reinterpret_cast<uintptr_t>(src);
291}

◆ cast_pointer_to_uint64()

template<class SRC >
uint64_t duckdb::cast_pointer_to_uint64 ( SRC src)
294 {
295 return static_cast<uint64_t>(reinterpret_cast<uintptr_t>(src));
296}

◆ cast_uint64_to_pointer()

template<class SRC = data_t>
SRC * duckdb::cast_uint64_to_pointer ( uint64_t  value)
299 {
300 return reinterpret_cast<SRC *>(static_cast<uintptr_t>(value));
301}

◆ AssertRestrictFunction()

void duckdb::AssertRestrictFunction ( const void left_start,
const void left_end,
const void right_start,
const void right_end,
const char fname,
int  linenr 
)
inline
514 {
515 // assert that the two pointers do not overlap
516#ifdef DEBUG
517 if (!(left_end <= right_start || right_end <= left_start)) {
518 printf("ASSERT RESTRICT FAILED: %s:%d\n", fname, linenr);
519 D_ASSERT(0);
520 }
521#endif
522}

◆ BSwap() [1/12]

static int8_t duckdb::BSwap ( const int8_t x)
inlinestatic
1370 {
1371 return x;
1372}

◆ BSwap() [2/12]

static uint8_t duckdb::BSwap ( const uint8_t x)
inlinestatic
1374 {
1375 return x;
1376}

◆ BSwap() [3/12]

static uint16_t duckdb::BSwap ( const uint16_t x)
inlinestatic
1378 {
1379 return BSWAP16(x);
1380}

◆ BSwap() [4/12]

static int16_t duckdb::BSwap ( const int16_t x)
inlinestatic
1382 {
1383 return static_cast<int16_t>(BSWAP16(x));
1384}
::int16_t int16_t

◆ BSwap() [5/12]

static uint32_t duckdb::BSwap ( const uint32_t x)
inlinestatic
1386 {
1387 return BSWAP32(x);
1388}

◆ BSwap() [6/12]

static int32_t duckdb::BSwap ( const int32_t x)
inlinestatic
1390 {
1391 return static_cast<int32_t>(BSWAP32(x));
1392}
::int32_t int32_t

◆ BSwap() [7/12]

static uint64_t duckdb::BSwap ( const uint64_t x)
inlinestatic
1394 {
1395 return BSWAP64(x);
1396}

◆ BSwap() [8/12]

static int64_t duckdb::BSwap ( const int64_t x)
inlinestatic
1398 {
1399 return static_cast<int64_t>(BSWAP64(x));
1400}

◆ BSwap() [9/12]

static uhugeint_t duckdb::BSwap ( const uhugeint_t x)
inlinestatic
1402 {
1403 return uhugeint_t(BSWAP64(x.upper), BSWAP64(x.lower));
1404}
Definition duckdb.hpp:1258

◆ BSwap() [10/12]

static hugeint_t duckdb::BSwap ( const hugeint_t x)
inlinestatic
1406 {
1407 return hugeint_t(static_cast<int64_t>(BSWAP64(x.upper)), BSWAP64(x.lower));
1408}

◆ BSwap() [11/12]

static float duckdb::BSwap ( const float x)
inlinestatic
1410 {
1411 uint32_t temp;
1412 std::memcpy(&temp, &x, sizeof(temp));
1413 temp = BSWAP32(temp);
1414 float result;
1415 std::memcpy(&result, &temp, sizeof(result));
1416 return result;
1417}

◆ BSwap() [12/12]

static double duckdb::BSwap ( const double x)
inlinestatic
1419 {
1420 uint64_t temp;
1421 std::memcpy(&temp, &x, sizeof(temp));
1422 temp = BSWAP64(temp);
1423 double result;
1424 std::memcpy(&result, &temp, sizeof(result));
1425 return result;
1426}

◆ BSwapIfLE()

template<class T >
static T duckdb::BSwapIfLE ( const T &  x)
inlinestatic
1429 {
1430#if DUCKDB_IS_BIG_ENDIAN
1431 return x;
1432#else
1433 return BSwap(x);
1434#endif
1435}

◆ BSwapIfBE()

template<class T >
static T duckdb::BSwapIfBE ( const T &  x)
inlinestatic
1438 {
1439#if DUCKDB_IS_BIG_ENDIAN
1440 return BSwap(x);
1441#else
1442 return x;
1443#endif
1444}

◆ make_uniq()

template<class DATA_TYPE , class... ARGS>
TemplatedUniqueIf< DATA_TYPE, true >::templated_unique_single_t duckdb::make_uniq ( ARGS &&...  args)
inline
2004{
2005 return unique_ptr<DATA_TYPE, std::default_delete<DATA_TYPE>, true>(new DATA_TYPE(std::forward<ARGS>(args)...));
2006}

◆ make_shared_ptr()

template<class DATA_TYPE , class... ARGS>
shared_ptr< DATA_TYPE > duckdb::make_shared_ptr ( ARGS &&...  args)
inline
2012{
2013 return shared_ptr<DATA_TYPE>(duckdb_base_std::make_shared<DATA_TYPE>(std::forward<ARGS>(args)...));
2014}

◆ make_unsafe_uniq()

template<class DATA_TYPE , class... ARGS>
TemplatedUniqueIf< DATA_TYPE, false >::templated_unique_single_t duckdb::make_unsafe_uniq ( ARGS &&...  args)
inline
2020{
2021 return unique_ptr<DATA_TYPE, std::default_delete<DATA_TYPE>, false>(new DATA_TYPE(std::forward<ARGS>(args)...));
2022}

◆ make_uniq_array()

template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, true > duckdb::make_uniq_array ( size_t  n)
inline
2027{
2029}

◆ make_uniq_array_uninitialized()

template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, true > duckdb::make_uniq_array_uninitialized ( size_t  n)
inline

◆ make_unsafe_uniq_array()

template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, false > duckdb::make_unsafe_uniq_array ( size_t  n)
inline
2041{
2043}

◆ make_unsafe_uniq_array_uninitialized()

template<class DATA_TYPE >
unique_ptr< DATA_TYPE[], std::default_delete< DATA_TYPE[]>, false > duckdb::make_unsafe_uniq_array_uninitialized ( size_t  n)
inline
2048{
2050}

◆ make_uniq_base()

template<typename S , typename T , typename... ARGS>
unique_ptr< S > duckdb::make_uniq_base ( ARGS &&...  args)
2058 { // NOLINT: mimic std style
2059 return unique_ptr<S>(new T(std::forward<ARGS>(args)...));
2060}

◆ unique_ptr_cast()

template<typename SRC , typename TGT >
unique_ptr< TGT > duckdb::unique_ptr_cast ( unique_ptr< SRC src)
2070 { // NOLINT: mimic std style
2071 return unique_ptr<TGT>(static_cast<TGT *>(src.release()));
2072}

◆ shared_ptr_cast()

template<typename SRC , typename TGT >
shared_ptr< TGT > duckdb::shared_ptr_cast ( shared_ptr< SRC src)
2075 { // NOLINT: mimic std style
2076 return shared_ptr<TGT>(std::static_pointer_cast<TGT, SRC>(src.internal));
2077}

◆ make_unique()

template<class T , class... ARGS>
static duckdb::unique_ptr< T > duckdb::make_unique ( ARGS &&...  __args)
static
2088 { // NOLINT: mimic std style
2089#ifndef DUCKDB_ENABLE_DEPRECATED_API
2090 static_assert(sizeof(T) == 0, "Use make_uniq instead of make_unique!");
2091#endif // DUCKDB_ENABLE_DEPRECATED_API
2092 return unique_ptr<T>(new T(std::forward<ARGS>(__args)...));
2093}

◆ make_shared()

template<class T , class... ARGS>
static duckdb::shared_ptr< T > duckdb::make_shared ( ARGS &&...  __args)
static
2096 { // NOLINT: mimic std style
2097#ifndef DUCKDB_ENABLE_DEPRECATED_API
2098 static_assert(sizeof(T) == 0, "Use make_shared_ptr instead of make_shared!");
2099#endif // DUCKDB_ENABLE_DEPRECATED_API
2100 return shared_ptr<T>(new T(std::forward<ARGS>(__args)...));
2101}

◆ MaxValue()

template<typename T >
constexpr T duckdb::MaxValue ( a,
b 
)
constexpr
2104 {
2105 return a > b ? a : b;
2106}

◆ MinValue()

template<typename T >
constexpr T duckdb::MinValue ( a,
b 
)
constexpr
2109 {
2110 return a < b ? a : b;
2111}

◆ ClampValue()

template<typename T >
constexpr T duckdb::ClampValue ( v,
min,
max 
)
constexpr

Like std::clamp (C++17), returns v if within bounds, else nearest bound.

2115 {
2116 return MinValue(MaxValue(v, min), max);
2117}
Here is the call graph for this function:

◆ AbsValue()

template<typename T >
T duckdb::AbsValue ( a)
2120 {
2121 return a < 0 ? -a : a;
2122}

◆ AlignValue() [1/2]

template<class T , T val = 8, typename = typename std::enable_if<!std::is_pointer<T>::value>::type>
static T duckdb::AlignValue ( n)
inlinestatic

Align value (ceiling) (not for pointer types)

2126 {
2127 return ((n + (val - 1)) / val) * val;
2128}

◆ AlignValue() [2/2]

template<class T >
static T duckdb::AlignValue ( n,
val 
)
static
2131 {
2132 return ((n + (val - 1)) / val) * val;
2133}

◆ AlignPointer()

template<uintptr_t alignment, class T >
T * duckdb::AlignPointer ( T *  addr)
inline
2136 {
2137 static_assert((alignment & (alignment - 1)) == 0, "'alignment' has to be a power of 2");
2138 return reinterpret_cast<T *>((reinterpret_cast<uintptr_t>(addr) + alignment - 1) & ~(alignment - 1));
2139}

◆ AlignValueFloor()

template<class T , T val = 8>
constexpr T duckdb::AlignValueFloor ( n)
inlineconstexpr
2142 {
2143 return (n / val) * val;
2144}

◆ ValueIsAligned()

template<class T , T val = 8>
static bool duckdb::ValueIsAligned ( n)
inlinestatic
2147 {
2148 return (n % val) == 0;
2149}

◆ SignValue()

template<typename T >
T duckdb::SignValue ( a)
2152 {
2153 return a < 0 ? -1 : 1;
2154}

◆ Load()

template<typename T >
const T duckdb::Load ( const_data_ptr_t  ptr)
2157 {
2158 T ret;
2159 memcpy(&ret, ptr, sizeof(ret)); // NOLINT
2160 return ret;
2161}

◆ LoadLE()

template<typename T >
const T duckdb::LoadLE ( const_data_ptr_t  ptr)
2164 {
2165 return BSwapIfBE(Load<T>(ptr));
2166}

◆ Store()

template<typename T >
void duckdb::Store ( const T &  val,
data_ptr_t  ptr 
)
2169 {
2170 memcpy(ptr, (void *)&val, sizeof(val)); // NOLINT
2171}

◆ AssignSharedPointer()

template<class T >
void duckdb::AssignSharedPointer ( shared_ptr< T > &  target,
const shared_ptr< T > &  source 
)

This assigns a shared pointer, but ONLY assigns if "target" is not equal to "source" If this is often the case, this manner of assignment is significantly faster (~20X faster) Since it avoids the need of an atomic incref/decref at the cost of a single pointer comparison Benchmark: https://gist.github.com/Mytherin/4db3faa8e233c4a9b874b21f62bb4b96 If the shared pointers are not the same, the penalty is very low (on the order of 1%~ slower) This method should always be preferred if there is a (reasonable) chance that the pointers are the same

2180 {
2181 if (target.get() != source.get()) {
2182 target = source;
2183 }
2184}

◆ RefersToSameObject() [1/2]

template<class T >
bool duckdb::RefersToSameObject ( const reference< T > &  a,
const reference< T > &  b 
)

Returns whether or not two reference wrappers refer to the same object.

2191 {
2192 return &a.get() == &b.get();
2193}

◆ RefersToSameObject() [2/2]

template<class T >
bool duckdb::RefersToSameObject ( const T &  a,
const T &  b 
)
2196 {
2197 return &a == &b;
2198}

◆ DynamicCastCheck()

template<class T , class SRC >
void duckdb::DynamicCastCheck ( const SRC source)
2201 {
2202#ifndef __APPLE__
2203 // Actual check is on the fact that dynamic_cast and reinterpret_cast are equivalent
2204 D_ASSERT(reinterpret_cast<const T *>(source) == dynamic_cast<const T *>(source));
2205#endif
2206}

◆ make_buffer()

template<class T , typename... ARGS>
buffer_ptr< T > duckdb::make_buffer ( ARGS &&...  args)
2712 { // NOLINT: mimic std casing
2713 return make_shared_ptr<T>(std::forward<ARGS>(args)...);
2714}

◆ ThrowNumericCastError()

template<class TO , class FROM >
static void duckdb::ThrowNumericCastError ( FROM  in,
TO  minval,
TO  maxval 
)
static
3477 {
3478 throw InternalException("Information loss on integer cast: value %d outside of target range [%d, %d]", in, minval,
3479 maxval);
3480}

◆ NumericCast()

template<class TO , class FROM , class = typename std::enable_if<(NumericLimits<TO>::IsIntegral() && NumericLimits<FROM>::IsIntegral()) || std::is_same<TO, FROM>::value>::type>
TO duckdb::NumericCast ( FROM  val)
3530 {
3532}

◆ UnsafeNumericCast()

template<class TO , class FROM , class = typename std::enable_if<(NumericLimits<TO>::IsIntegral() && NumericLimits<FROM>::IsIntegral()) || std::is_same<TO, FROM>::value>::type>
TO duckdb::UnsafeNumericCast ( FROM  in)
3540 {
3541#if defined(DEBUG) || defined(UNSAFE_NUMERIC_CAST)
3542 return NumericCast<TO, FROM>(in);
3543#endif
3544 return static_cast<TO>(in);
3545}

◆ LossyNumericCast()

template<class TO , class FROM >
TO duckdb::LossyNumericCast ( FROM  val)
3551 {
3552 return static_cast<TO>(val);
3553}

◆ ExactNumericCast() [1/2]

template<class TO >
TO duckdb::ExactNumericCast ( double  val)
3560 {
3561 auto res = LossyNumericCast<TO>(val);
3562#if defined(DEBUG) || defined(UNSAFE_NUMERIC_CAST)
3563 if (val != double(res)) {
3564 throw InternalException("Information loss on double cast: value %lf outside of target range [%lf, %lf]", val,
3565 double(res), double(res));
3566 }
3567#endif
3568 return res;
3569}

◆ ExactNumericCast() [2/2]

template<class TO >
TO duckdb::ExactNumericCast ( float  val)
3572 {
3573 auto res = LossyNumericCast<TO>(val);
3574#if defined(DEBUG) || defined(UNSAFE_NUMERIC_CAST)
3575 if (val != float(res)) {
3576 throw InternalException("Information loss on float cast: value %f outside of target range [%f, %f]", val,
3577 float(res), float(res));
3578 }
3579#endif
3580 return res;
3581}

◆ CombineHash()

hash_t duckdb::CombineHash ( hash_t  left,
hash_t  right 
)
inline

Combine two hashes by XORing them.

4635 {
4636 return left ^ right;
4637}

◆ MurmurHash64()

hash_t duckdb::MurmurHash64 ( uint64_t  x)
inline

Efficient hash function that maximizes the avalanche effect and minimizes bias See: https://nullprogram.com/blog/2018/07/31/

4650 {
4651 x ^= x >> 32;
4652 x *= 0xd6e8feb86659fd93U;
4653 x ^= x >> 32;
4654 x *= 0xd6e8feb86659fd93U;
4655 x ^= x >> 32;
4656 return x;
4657}

◆ MurmurHash32()

hash_t duckdb::MurmurHash32 ( uint32_t  x)
inline
4659 {
4660 return MurmurHash64(x);
4661}
hash_t MurmurHash64(uint64_t x)
Definition duckdb.hpp:4650

◆ Hash() [1/3]

template<class T >
hash_t duckdb::Hash ( value)
4664 {
4665 return MurmurHash32(static_cast<uint32_t>(value));
4666}

◆ Hash() [2/3]

template<>
DUCKDB_API hash_t duckdb::Hash ( uint64_t  val)
inline
4669 {
4670 return MurmurHash64(val);
4671}

◆ Hash() [3/3]

template<>
DUCKDB_API hash_t duckdb::Hash ( int64_t  val)
inline
4673 {
4674 return MurmurHash64(static_cast<uint64_t>(val));
4675}

◆ operator==() [1/2]

bool duckdb::operator== ( const std::string &  lhs,
const String rhs 
)
inline
7009 {
7010 return rhs == lhs;
7011}

◆ operator==() [2/2]

bool duckdb::operator== ( const char lhs,
const String rhs 
)
inline
7013 {
7014 return rhs == lhs;
7015}

◆ AllocateArray()

template<class T >
T * duckdb::AllocateArray ( idx_t  size)
8696 {
8697 return (T *)Allocator::DefaultAllocator().AllocateData(size * sizeof(T));
8698}

◆ DeleteArray()

template<class T >
void duckdb::DeleteArray ( T *  ptr,
idx_t  size 
)
8701 {
8702 Allocator::DefaultAllocator().FreeData(data_ptr_cast(ptr), size * sizeof(T));
8703}

◆ AllocateObject()

template<typename T , typename... ARGS>
T * duckdb::AllocateObject ( ARGS &&...  args)
8706 {
8707 auto data = Allocator::DefaultAllocator().AllocateData(sizeof(T));
8708 return new (data) T(std::forward<ARGS>(args)...);
8709}

◆ DestroyObject()

template<typename T >
void duckdb::DestroyObject ( T *  ptr)
8712 {
8713 ptr->~T();
8714 Allocator::DefaultAllocator().FreeData(data_ptr_cast(ptr), sizeof(T));
8715}

◆ GetTypeId()

template<class T >
PhysicalType duckdb::GetTypeId ( )

Returns the PhysicalType for the given type.

10381 {
10382 using TYPE = typename std::remove_cv<T>::type;
10383
10384 if (std::is_same<TYPE, bool>()) {
10385 return PhysicalType::BOOL;
10386 } else if (std::is_same<TYPE, int8_t>()) {
10387 return PhysicalType::INT8;
10388 } else if (std::is_same<TYPE, int16_t>()) {
10389 return PhysicalType::INT16;
10390 } else if (std::is_same<TYPE, int32_t>()) {
10391 return PhysicalType::INT32;
10392 } else if (std::is_same<TYPE, int64_t>()) {
10393 return PhysicalType::INT64;
10394 } else if (std::is_same<TYPE, uint8_t>()) {
10395 return PhysicalType::UINT8;
10396 } else if (std::is_same<TYPE, uint16_t>()) {
10397 return PhysicalType::UINT16;
10398 } else if (std::is_same<TYPE, uint32_t>()) {
10399 return PhysicalType::UINT32;
10400 } else if (std::is_same<TYPE, uint64_t>()) {
10401 return PhysicalType::UINT64;
10402 } else if (std::is_same<TYPE, idx_t>() || std::is_same<TYPE, const idx_t>()) {
10403 return PhysicalType::UINT64;
10404 } else if (std::is_same<TYPE, hugeint_t>()) {
10405 return PhysicalType::INT128;
10406 } else if (std::is_same<TYPE, uhugeint_t>()) {
10407 return PhysicalType::UINT128;
10408 } else if (std::is_same<TYPE, date_t>()) {
10409 return PhysicalType::INT32;
10410 } else if (std::is_same<TYPE, dtime_t>()) {
10411 return PhysicalType::INT64;
10412 } else if (std::is_same<TYPE, dtime_tz_t>()) {
10413 return PhysicalType::INT64;
10414 } else if (std::is_same<TYPE, dtime_ns_t>()) {
10415 return PhysicalType::INT64;
10416 } else if (std::is_same<TYPE, timestamp_t>()) {
10417 return PhysicalType::INT64;
10418 } else if (std::is_same<TYPE, timestamp_sec_t>()) {
10419 return PhysicalType::INT64;
10420 } else if (std::is_same<TYPE, timestamp_ms_t>()) {
10421 return PhysicalType::INT64;
10422 } else if (std::is_same<TYPE, timestamp_ns_t>()) {
10423 return PhysicalType::INT64;
10424 } else if (std::is_same<TYPE, timestamp_tz_t>()) {
10425 return PhysicalType::INT64;
10426 } else if (std::is_same<TYPE, float>() || std::is_same<TYPE, float_na_equal>()) {
10427 return PhysicalType::FLOAT;
10428 } else if (std::is_same<TYPE, double>() || std::is_same<TYPE, double_na_equal>()) {
10429 return PhysicalType::DOUBLE;
10430 } else if (std::is_same<TYPE, const char *>() || std::is_same<TYPE, char *>() || std::is_same<TYPE, string_t>() ||
10431 std::is_same<TYPE, bignum_t>()) {
10432 return PhysicalType::VARCHAR;
10433 } else if (std::is_same<TYPE, interval_t>()) {
10434 return PhysicalType::INTERVAL;
10435 } else if (std::is_same<TYPE, list_entry_t>()) {
10436 return PhysicalType::LIST;
10437 } else if (std::is_pointer<TYPE>() || std::is_same<TYPE, uintptr_t>()) {
10438 if (sizeof(uintptr_t) == sizeof(uint32_t)) {
10439 return PhysicalType::UINT32;
10440 } else if (sizeof(uintptr_t) == sizeof(uint64_t)) {
10441 return PhysicalType::UINT64;
10442 } else {
10443 throw InternalException("Unsupported pointer size in GetTypeId");
10444 }
10445 } else {
10446 throw InternalException("Unsupported type in GetTypeId");
10447 }
10448}

◆ StorageTypeCompatible()

template<class T >
bool duckdb::StorageTypeCompatible ( PhysicalType  type)
10451 {
10452 using TYPE = typename std::remove_cv<T>::type;
10453
10454 if (std::is_same<TYPE, int8_t>()) {
10455 return type == PhysicalType::INT8 || type == PhysicalType::BOOL;
10456 }
10457 if (std::is_same<TYPE, uint8_t>()) {
10458 return type == PhysicalType::UINT8 || type == PhysicalType::BOOL;
10459 }
10460 return type == GetTypeId<T>();
10461}

◆ TypeIsNumber()

template<class T >
bool duckdb::TypeIsNumber ( )
10464 {
10465 using TYPE = typename std::remove_cv<T>::type;
10466
10467 return std::is_integral<TYPE>() || std::is_floating_point<TYPE>() || std::is_same<TYPE, hugeint_t>() ||
10468 std::is_same<TYPE, uhugeint_t>();
10469}

◆ IsValidType()

template<class T >
bool duckdb::IsValidType ( )
10472 {
10473 return GetTypeId<T>() != PhysicalType::INVALID;
10474}

◆ IsIntegerType()

template<class T >
bool duckdb::IsIntegerType ( )
10477 {
10478 return TypeIsIntegral(GetTypeId<T>());
10479}

◆ CreateRelationAlias()

static string duckdb::CreateRelationAlias ( RelationType  type,
const string &  alias 
)
static
42059 {
42060 if (!alias.empty()) {
42061 return alias;
42062 }
42063 return StringUtil::Format("%s_%s", EnumUtil::ToString(type), StringUtil::GenerateRandomName());
42064}

Variable Documentation

◆ EXTENSION_FUNCTIONS

constexpr ExtensionFunctionEntry duckdb::EXTENSION_FUNCTIONS[]
staticconstexprprivate
3301 {
3302 {"!__postfix", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3303 {"&", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3304 {"**", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3305 {"->>", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3306 {"<->", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3307 {"<<", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3308 {"<<=", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3309 {"<=>", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3310 {"<@", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3311 {">>", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3312 {">>=", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3313 {"@", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3314 {"@>", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3315 {"^", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3316 {"^@", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3317 {"abs", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3318 {"acos", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3319 {"acosh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3320 {"add_numbers_together", "demo_capi", CatalogType::SCALAR_FUNCTION_ENTRY},
3321 {"add_parquet_key", "parquet", CatalogType::PRAGMA_FUNCTION_ENTRY},
3322 {"aggregate", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3323 {"alias", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3324 {"apply", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3325 {"approx_count_distinct", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3326 {"approx_quantile", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3327 {"approx_top_k", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3328 {"arg_max", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3329 {"arg_max_null", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3330 {"arg_max_nulls_last", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3331 {"arg_min", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3332 {"arg_min_null", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3333 {"arg_min_nulls_last", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3334 {"argmax", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3335 {"argmin", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3336 {"array_agg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3337 {"array_aggr", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3338 {"array_aggregate", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3339 {"array_apply", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3340 {"array_cosine_distance", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3341 {"array_cosine_similarity", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3342 {"array_cross_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3343 {"array_distance", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3344 {"array_distinct", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3345 {"array_dot_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3346 {"array_filter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3347 {"array_grade_up", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3348 {"array_has_all", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3349 {"array_has_any", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3350 {"array_inner_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3351 {"array_negative_dot_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3352 {"array_negative_inner_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3353 {"array_reduce", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3354 {"array_reverse_sort", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3355 {"array_slice", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3356 {"array_sort", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3357 {"array_to_json", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3358 {"array_transform", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3359 {"array_unique", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3360 {"array_value", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3361 {"ascii", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3362 {"asin", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3363 {"asinh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3364 {"atan", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3365 {"atan2", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3366 {"atanh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3367 {"avg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3368 {"bar", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3369 {"base64", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3370 {"bin", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3371 {"bit_and", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3372 {"bit_count", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3373 {"bit_or", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3374 {"bit_position", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3375 {"bit_xor", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3376 {"bitstring", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3377 {"bitstring_agg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3378 {"bool_and", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3379 {"bool_or", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3380 {"broadcast", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3381 {"can_cast_implicitly", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3382 {"cardinality", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3383 {"cast_to_type", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3384 {"cbrt", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3385 {"ceil", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3386 {"ceiling", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3387 {"check_peg_parser", "autocomplete", CatalogType::TABLE_FUNCTION_ENTRY},
3388 {"chr", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3389 {"clear_httpfs_connection_cache", "httpfs", CatalogType::TABLE_FUNCTION_ENTRY},
3390 {"corr", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3391 {"cos", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3392 {"cosh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3393 {"cot", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3394 {"count_if", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3395 {"countif", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3396 {"covar_pop", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3397 {"covar_samp", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3398 {"create_fts_index", "fts", CatalogType::PRAGMA_FUNCTION_ENTRY},
3399 {"current_database", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3400 {"current_date", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3401 {"current_localtime", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3402 {"current_localtimestamp", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3403 {"current_query", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3404 {"current_schema", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3405 {"current_schemas", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3406 {"current_setting", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3407 {"damerau_levenshtein", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3408 {"dbgen", "tpch", CatalogType::TABLE_FUNCTION_ENTRY},
3409 {"decode", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3410 {"degrees", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3411 {"delta_scan", "delta", CatalogType::TABLE_FUNCTION_ENTRY},
3412 {"disable_peg_parser", "autocomplete", CatalogType::TABLE_FUNCTION_ENTRY},
3413 {"drop_fts_index", "fts", CatalogType::PRAGMA_FUNCTION_ENTRY},
3414 {"dsdgen", "tpcds", CatalogType::TABLE_FUNCTION_ENTRY},
3415 {"duckdb_proj_compiled_version", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3416 {"duckdb_proj_version", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3417 {"ducklake_add_data_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3418 {"ducklake_cleanup_old_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3419 {"ducklake_current_snapshot", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3420 {"ducklake_delete_orphaned_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3421 {"ducklake_expire_snapshots", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3422 {"ducklake_flush_inlined_data", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3423 {"ducklake_last_committed_snapshot", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3424 {"ducklake_list_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3425 {"ducklake_merge_adjacent_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3426 {"ducklake_options", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3427 {"ducklake_rewrite_data_files", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3428 {"ducklake_scan", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3429 {"ducklake_set_commit_message", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3430 {"ducklake_set_option", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3431 {"ducklake_settings", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3432 {"ducklake_snapshots", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3433 {"ducklake_table_changes", "ducklake", CatalogType::TABLE_MACRO_ENTRY},
3434 {"ducklake_table_deletions", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3435 {"ducklake_table_info", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3436 {"ducklake_table_insertions", "ducklake", CatalogType::TABLE_FUNCTION_ENTRY},
3437 {"editdist3", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3438 {"element_at", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3439 {"enable_peg_parser", "autocomplete", CatalogType::TABLE_FUNCTION_ENTRY},
3440 {"encode", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3441 {"entropy", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3442 {"enum_code", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3443 {"enum_first", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3444 {"enum_last", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3445 {"enum_range", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3446 {"enum_range_boundary", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3447 {"epoch_ms", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3448 {"epoch_ns", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3449 {"epoch_us", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3450 {"equi_width_bins", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3451 {"even", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3452 {"excel_text", "excel", CatalogType::SCALAR_FUNCTION_ENTRY},
3453 {"exp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3454 {"factorial", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3455 {"family", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3456 {"favg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3457 {"filter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3458 {"flatten", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3459 {"floor", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3460 {"format", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3461 {"format_bytes", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3462 {"formatreadabledecimalsize", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3463 {"formatreadablesize", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3464 {"from_base64", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3465 {"from_binary", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3466 {"from_hex", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3467 {"from_json", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3468 {"from_json_strict", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3469 {"fsum", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3470 {"fuzz_all_functions", "sqlsmith", CatalogType::TABLE_FUNCTION_ENTRY},
3471 {"fuzzyduck", "sqlsmith", CatalogType::TABLE_FUNCTION_ENTRY},
3472 {"gamma", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3473 {"gcd", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3474 {"gen_random_uuid", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3475 {"get_bit", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3476 {"get_current_time", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3477 {"get_current_timestamp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3478 {"get_type", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3479 {"grade_up", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3480 {"greatest", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3481 {"greatest_common_divisor", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3482 {"group_concat", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3483 {"hamming", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3484 {"hash", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3485 {"hex", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3486 {"histogram", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3487 {"histogram_exact", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3488 {"hnsw_compact_index", "vss", CatalogType::PRAGMA_FUNCTION_ENTRY},
3489 {"hnsw_index_scan", "vss", CatalogType::TABLE_FUNCTION_ENTRY},
3490 {"host", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3491 {"html_escape", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3492 {"html_unescape", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3493 {"iceberg_column_stats", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3494 {"iceberg_metadata", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3495 {"iceberg_partition_stats", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3496 {"iceberg_scan", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3497 {"iceberg_snapshots", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3498 {"iceberg_table_properties", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3499 {"iceberg_to_ducklake", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3500 {"icu_calendar_names", "icu", CatalogType::TABLE_FUNCTION_ENTRY},
3501 {"icu_collate_af", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3502 {"icu_collate_am", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3503 {"icu_collate_ar", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3504 {"icu_collate_ar_sa", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3505 {"icu_collate_as", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3506 {"icu_collate_az", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3507 {"icu_collate_be", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3508 {"icu_collate_bg", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3509 {"icu_collate_bn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3510 {"icu_collate_bo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3511 {"icu_collate_br", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3512 {"icu_collate_bs", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3513 {"icu_collate_ca", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3514 {"icu_collate_ceb", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3515 {"icu_collate_chr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3516 {"icu_collate_cs", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3517 {"icu_collate_cy", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3518 {"icu_collate_da", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3519 {"icu_collate_de", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3520 {"icu_collate_de_at", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3521 {"icu_collate_dsb", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3522 {"icu_collate_dz", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3523 {"icu_collate_ee", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3524 {"icu_collate_el", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3525 {"icu_collate_en", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3526 {"icu_collate_en_us", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3527 {"icu_collate_eo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3528 {"icu_collate_es", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3529 {"icu_collate_et", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3530 {"icu_collate_fa", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3531 {"icu_collate_fa_af", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3532 {"icu_collate_ff", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3533 {"icu_collate_fi", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3534 {"icu_collate_fil", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3535 {"icu_collate_fo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3536 {"icu_collate_fr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3537 {"icu_collate_fr_ca", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3538 {"icu_collate_fy", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3539 {"icu_collate_ga", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3540 {"icu_collate_gl", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3541 {"icu_collate_gu", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3542 {"icu_collate_ha", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3543 {"icu_collate_haw", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3544 {"icu_collate_he", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3545 {"icu_collate_he_il", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3546 {"icu_collate_hi", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3547 {"icu_collate_hr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3548 {"icu_collate_hsb", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3549 {"icu_collate_hu", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3550 {"icu_collate_hy", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3551 {"icu_collate_id", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3552 {"icu_collate_id_id", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3553 {"icu_collate_ig", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3554 {"icu_collate_is", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3555 {"icu_collate_it", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3556 {"icu_collate_ja", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3557 {"icu_collate_ka", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3558 {"icu_collate_kk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3559 {"icu_collate_kl", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3560 {"icu_collate_km", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3561 {"icu_collate_kn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3562 {"icu_collate_ko", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3563 {"icu_collate_kok", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3564 {"icu_collate_ku", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3565 {"icu_collate_ky", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3566 {"icu_collate_lb", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3567 {"icu_collate_lij", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3568 {"icu_collate_lkt", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3569 {"icu_collate_ln", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3570 {"icu_collate_lo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3571 {"icu_collate_lt", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3572 {"icu_collate_lv", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3573 {"icu_collate_mk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3574 {"icu_collate_ml", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3575 {"icu_collate_mn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3576 {"icu_collate_mr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3577 {"icu_collate_ms", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3578 {"icu_collate_mt", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3579 {"icu_collate_my", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3580 {"icu_collate_nb", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3581 {"icu_collate_nb_no", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3582 {"icu_collate_ne", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3583 {"icu_collate_nl", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3584 {"icu_collate_nn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3585 {"icu_collate_noaccent", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3586 {"icu_collate_nso", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3587 {"icu_collate_om", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3588 {"icu_collate_or", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3589 {"icu_collate_pa", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3590 {"icu_collate_pa_in", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3591 {"icu_collate_pl", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3592 {"icu_collate_ps", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3593 {"icu_collate_pt", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3594 {"icu_collate_ro", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3595 {"icu_collate_ru", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3596 {"icu_collate_sa", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3597 {"icu_collate_se", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3598 {"icu_collate_si", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3599 {"icu_collate_sk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3600 {"icu_collate_sl", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3601 {"icu_collate_smn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3602 {"icu_collate_sq", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3603 {"icu_collate_sr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3604 {"icu_collate_sr_ba", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3605 {"icu_collate_sr_me", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3606 {"icu_collate_sr_rs", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3607 {"icu_collate_st", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3608 {"icu_collate_sv", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3609 {"icu_collate_sw", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3610 {"icu_collate_ta", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3611 {"icu_collate_te", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3612 {"icu_collate_th", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3613 {"icu_collate_tk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3614 {"icu_collate_tn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3615 {"icu_collate_to", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3616 {"icu_collate_tr", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3617 {"icu_collate_ug", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3618 {"icu_collate_uk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3619 {"icu_collate_ur", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3620 {"icu_collate_uz", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3621 {"icu_collate_vi", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3622 {"icu_collate_wae", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3623 {"icu_collate_wo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3624 {"icu_collate_xh", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3625 {"icu_collate_yi", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3626 {"icu_collate_yo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3627 {"icu_collate_yue", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3628 {"icu_collate_yue_cn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3629 {"icu_collate_zh", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3630 {"icu_collate_zh_cn", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3631 {"icu_collate_zh_hk", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3632 {"icu_collate_zh_mo", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3633 {"icu_collate_zh_sg", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3634 {"icu_collate_zh_tw", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3635 {"icu_collate_zu", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3636 {"icu_sort_key", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3637 {"in_search_path", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3638 {"instr", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3639 {"is_histogram_other_bin", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3640 {"isfinite", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3641 {"isinf", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3642 {"isnan", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3643 {"jaccard", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3644 {"jaro_similarity", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3645 {"jaro_winkler_similarity", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3646 {"json", "json", CatalogType::MACRO_ENTRY},
3647 {"json_array", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3648 {"json_array_length", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3649 {"json_contains", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3650 {"json_deserialize_sql", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3651 {"json_each", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3652 {"json_execute_serialized_sql", "json", CatalogType::PRAGMA_FUNCTION_ENTRY},
3653 {"json_execute_serialized_sql", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3654 {"json_exists", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3655 {"json_extract", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3656 {"json_extract_path", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3657 {"json_extract_path_text", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3658 {"json_extract_string", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3659 {"json_group_array", "json", CatalogType::MACRO_ENTRY},
3660 {"json_group_object", "json", CatalogType::MACRO_ENTRY},
3661 {"json_group_structure", "json", CatalogType::MACRO_ENTRY},
3662 {"json_keys", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3663 {"json_merge_patch", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3664 {"json_object", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3665 {"json_pretty", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3666 {"json_quote", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3667 {"json_serialize_plan", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3668 {"json_serialize_sql", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3669 {"json_structure", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3670 {"json_transform", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3671 {"json_transform_strict", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3672 {"json_tree", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3673 {"json_type", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3674 {"json_valid", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3675 {"json_value", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3676 {"kahan_sum", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3677 {"kurtosis", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3678 {"kurtosis_pop", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3679 {"lcm", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3680 {"least", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3681 {"least_common_multiple", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3682 {"left", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3683 {"left_grapheme", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3684 {"levenshtein", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3685 {"lgamma", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3686 {"list", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3687 {"list_aggr", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3688 {"list_aggregate", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3689 {"list_apply", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3690 {"list_cosine_distance", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3691 {"list_cosine_similarity", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3692 {"list_distance", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3693 {"list_distinct", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3694 {"list_dot_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3695 {"list_filter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3696 {"list_grade_up", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3697 {"list_has_all", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3698 {"list_has_any", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3699 {"list_inner_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3700 {"list_negative_dot_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3701 {"list_negative_inner_product", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3702 {"list_pack", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3703 {"list_reduce", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3704 {"list_reverse_sort", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3705 {"list_slice", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3706 {"list_sort", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3707 {"list_transform", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3708 {"list_unique", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3709 {"list_value", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3710 {"listagg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3711 {"ln", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3712 {"load_aws_credentials", "aws", CatalogType::TABLE_FUNCTION_ENTRY},
3713 {"log", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3714 {"log10", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3715 {"log2", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3716 {"lpad", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3717 {"ltrim", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3718 {"mad", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3719 {"make_date", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3720 {"make_time", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3721 {"make_timestamp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3722 {"make_timestamp_ms", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3723 {"make_timestamp_ns", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3724 {"make_timestamptz", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
3725 {"make_type", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3726 {"map", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3727 {"map_concat", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3728 {"map_entries", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3729 {"map_extract", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3730 {"map_extract_value", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3731 {"map_from_entries", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3732 {"map_keys", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3733 {"map_values", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3734 {"max_by", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3735 {"mean", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3736 {"median", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3737 {"min_by", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3738 {"mismatches", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3739 {"mode", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3740 {"murmur3_32", "ducklake", CatalogType::SCALAR_FUNCTION_ENTRY},
3741 {"mysql_clear_cache", "mysql_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3742 {"mysql_debug_execution_plan", "mysql_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3743 {"mysql_execute", "mysql_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3744 {"mysql_explain_federated", "mysql_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3745 {"mysql_query", "mysql_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3746 {"nanosecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3747 {"netmask", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3748 {"network", "inet", CatalogType::SCALAR_FUNCTION_ENTRY},
3749 {"nextafter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3750 {"normalized_interval", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3751 {"now", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3752 {"odbc_begin_transaction", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3753 {"odbc_bind_params", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3754 {"odbc_close", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3755 {"odbc_commit", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3756 {"odbc_connect", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3757 {"odbc_copy", "odbc_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3758 {"odbc_create_params", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3759 {"odbc_list_data_sources", "odbc_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3760 {"odbc_list_drivers", "odbc_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3761 {"odbc_query", "odbc_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3762 {"odbc_rollback", "odbc_scanner", CatalogType::SCALAR_FUNCTION_ENTRY},
3763 {"ord", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3764 {"parquet_bloom_probe", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3765 {"parquet_file_metadata", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3766 {"parquet_full_metadata", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3767 {"parquet_kv_metadata", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3768 {"parquet_metadata", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3769 {"parquet_scan", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3770 {"parquet_schema", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3771 {"parse_dirname", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3772 {"parse_dirpath", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3773 {"parse_filename", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3774 {"parse_formatted_bytes", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3775 {"parse_path", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3776 {"pg_clear_cache", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3777 {"pg_timezone_names", "icu", CatalogType::TABLE_FUNCTION_ENTRY},
3778 {"pi", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3779 {"position", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3780 {"postgres_attach", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3781 {"postgres_configure_pool", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3782 {"postgres_execute", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3783 {"postgres_query", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3784 {"postgres_scan", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3785 {"postgres_scan_pushdown", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3786 {"pow", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3787 {"power", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3788 {"pragma_hnsw_index_info", "vss", CatalogType::TABLE_FUNCTION_ENTRY},
3789 {"pragma_rtree_index_info", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3790 {"printf", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3791 {"product", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3792 {"quantile", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3793 {"quantile_cont", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3794 {"quantile_disc", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3795 {"radians", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3796 {"random", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3797 {"read_avro", "avro", CatalogType::TABLE_FUNCTION_ENTRY},
3798 {"read_json", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3799 {"read_json_auto", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3800 {"read_json_objects", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3801 {"read_json_objects_auto", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3802 {"read_ndjson", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3803 {"read_ndjson_auto", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3804 {"read_ndjson_objects", "json", CatalogType::TABLE_FUNCTION_ENTRY},
3805 {"read_parquet", "parquet", CatalogType::TABLE_FUNCTION_ENTRY},
3806 {"read_postgres_binary", "postgres_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3807 {"read_xlsx", "excel", CatalogType::TABLE_FUNCTION_ENTRY},
3808 {"reduce", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3809 {"reduce_sql_statement", "sqlsmith", CatalogType::TABLE_FUNCTION_ENTRY},
3810 {"regr_avgx", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3811 {"regr_avgy", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3812 {"regr_count", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3813 {"regr_intercept", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3814 {"regr_r2", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3815 {"regr_slope", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3816 {"regr_sxx", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3817 {"regr_sxy", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3818 {"regr_syy", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3819 {"remove_iceberg_table_properties", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3820 {"repeat", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3821 {"replace", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3822 {"replace_type", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3823 {"reservoir_quantile", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3824 {"reverse", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3825 {"right", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3826 {"right_grapheme", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3827 {"round", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3828 {"row_to_json", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
3829 {"rpad", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3830 {"rtree_index_dump", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3831 {"rtree_index_scan", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3832 {"rtrim", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3833 {"sem", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3834 {"set_bit", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3835 {"set_iceberg_table_properties", "iceberg", CatalogType::TABLE_FUNCTION_ENTRY},
3836 {"setseed", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3837 {"shapefile_meta", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3838 {"sign", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3839 {"signbit", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3840 {"sin", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3841 {"sinh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3842 {"skewness", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3843 {"sleep_ms", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3844 {"sql_auto_complete", "autocomplete", CatalogType::TABLE_FUNCTION_ENTRY},
3845 {"sqlite_attach", "sqlite_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3846 {"sqlite_query", "sqlite_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3847 {"sqlite_scan", "sqlite_scanner", CatalogType::TABLE_FUNCTION_ENTRY},
3848 {"sqlsmith", "sqlsmith", CatalogType::TABLE_FUNCTION_ENTRY},
3849 {"sqrt", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
3850 {"st_affine", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3851 {"st_area", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3852 {"st_area_spheroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3853 {"st_asgeojson", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3854 {"st_ashexwkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3855 {"st_asmvt", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3856 {"st_asmvtgeom", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3857 {"st_assvg", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3858 {"st_azimuth", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3859 {"st_boundary", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3860 {"st_buffer", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3861 {"st_buildarea", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3862 {"st_centroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3863 {"st_closestpoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3864 {"st_collect", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3865 {"st_collectionextract", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3866 {"st_concavehull", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3867 {"st_contains", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3868 {"st_containsproperly", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3869 {"st_convexhull", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3870 {"st_coverageinvalidedges", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3871 {"st_coverageinvalidedges_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3872 {"st_coveragesimplify", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3873 {"st_coveragesimplify_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3874 {"st_coverageunion", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3875 {"st_coverageunion_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3876 {"st_coveredby", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3877 {"st_covers", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3878 {"st_crosses", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3879 {"st_difference", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3880 {"st_dimension", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3881 {"st_disjoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3882 {"st_distance", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3883 {"st_distance_geos", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3884 {"st_distance_sphere", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3885 {"st_distance_spheroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3886 {"st_drivers", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3887 {"st_dump", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3888 {"st_dwithin", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3889 {"st_dwithin_geos", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3890 {"st_dwithin_spheroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3891 {"st_endpoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3892 {"st_envelope", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3893 {"st_envelope_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3894 {"st_equals", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3895 {"st_expand", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3896 {"st_extent", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3897 {"st_extent_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3898 {"st_extent_approx", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3899 {"st_exteriorring", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3900 {"st_flipcoordinates", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3901 {"st_force2d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3902 {"st_force3dm", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3903 {"st_force3dz", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3904 {"st_force4d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3905 {"st_generatepoints", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3906 {"st_geometrytype", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3907 {"st_geomfromgeojson", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3908 {"st_geomfromhexewkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3909 {"st_geomfromhexwkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3910 {"st_geomfromtext", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3911 {"st_hasm", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3912 {"st_hasz", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3913 {"st_hilbert", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3914 {"st_interiorringn", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3915 {"st_interpolatepoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3916 {"st_intersection", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3917 {"st_intersection_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3918 {"st_intersects", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3919 {"st_isclosed", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3920 {"st_isempty", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3921 {"st_isring", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3922 {"st_issimple", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3923 {"st_isvalid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3924 {"st_length", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3925 {"st_length_spheroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3926 {"st_lineinterpolatepoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3927 {"st_lineinterpolatepoints", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3928 {"st_linelocatepoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3929 {"st_linemerge", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3930 {"st_linestring2dfromwkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3931 {"st_linesubstring", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3932 {"st_locatealong", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3933 {"st_locatebetween", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3934 {"st_m", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3935 {"st_makebox2d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3936 {"st_makeenvelope", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3937 {"st_makeline", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3938 {"st_makepoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3939 {"st_makepolygon", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3940 {"st_makevalid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3941 {"st_maximuminscribedcircle", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3942 {"st_memunion_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3943 {"st_minimumrotatedrectangle", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3944 {"st_mmax", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3945 {"st_mmin", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3946 {"st_multi", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3947 {"st_ngeometries", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3948 {"st_ninteriorrings", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3949 {"st_node", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3950 {"st_normalize", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3951 {"st_npoints", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3952 {"st_numgeometries", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3953 {"st_numinteriorrings", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3954 {"st_numpoints", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3955 {"st_overlaps", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3956 {"st_perimeter", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3957 {"st_perimeter_spheroid", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3958 {"st_point", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3959 {"st_point2d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3960 {"st_point2dfromwkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3961 {"st_point3d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3962 {"st_point4d", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3963 {"st_pointn", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3964 {"st_pointonsurface", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3965 {"st_points", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3966 {"st_polygon2dfromwkb", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3967 {"st_polygonize", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3968 {"st_quadkey", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3969 {"st_read", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3970 {"st_read_meta", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3971 {"st_readosm", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3972 {"st_readshp", "spatial", CatalogType::TABLE_FUNCTION_ENTRY},
3973 {"st_reduceprecision", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3974 {"st_removerepeatedpoints", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3975 {"st_reverse", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3976 {"st_rotate", "spatial", CatalogType::MACRO_ENTRY},
3977 {"st_rotatex", "spatial", CatalogType::MACRO_ENTRY},
3978 {"st_rotatey", "spatial", CatalogType::MACRO_ENTRY},
3979 {"st_rotatez", "spatial", CatalogType::MACRO_ENTRY},
3980 {"st_scale", "spatial", CatalogType::MACRO_ENTRY},
3981 {"st_shortestline", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3982 {"st_simplify", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3983 {"st_simplifypreservetopology", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3984 {"st_startpoint", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3985 {"st_tileenvelope", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3986 {"st_touches", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3987 {"st_transform", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3988 {"st_translate", "spatial", CatalogType::MACRO_ENTRY},
3989 {"st_transscale", "spatial", CatalogType::MACRO_ENTRY},
3990 {"st_union", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3991 {"st_union_agg", "spatial", CatalogType::AGGREGATE_FUNCTION_ENTRY},
3992 {"st_voronoidiagram", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3993 {"st_within", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3994 {"st_withinproperly", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3995 {"st_x", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3996 {"st_xmax", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3997 {"st_xmin", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3998 {"st_y", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
3999 {"st_ymax", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4000 {"st_ymin", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4001 {"st_z", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4002 {"st_zmax", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4003 {"st_zmflag", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4004 {"st_zmin", "spatial", CatalogType::SCALAR_FUNCTION_ENTRY},
4005 {"start_ui", "ui", CatalogType::TABLE_FUNCTION_ENTRY},
4006 {"start_ui_server", "ui", CatalogType::TABLE_FUNCTION_ENTRY},
4007 {"starts_with", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4008 {"stats", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4009 {"stddev", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4010 {"stddev_pop", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4011 {"stddev_samp", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4012 {"stem", "fts", CatalogType::SCALAR_FUNCTION_ENTRY},
4013 {"stop_ui_server", "ui", CatalogType::TABLE_FUNCTION_ENTRY},
4014 {"string_agg", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4015 {"strpos", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4016 {"struct_insert", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4017 {"struct_keys", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4018 {"struct_update", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4019 {"struct_values", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4020 {"sum", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4021 {"sum_no_overflow", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4022 {"sumkahan", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4023 {"switch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4024 {"tan", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4025 {"tanh", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4026 {"text", "excel", CatalogType::SCALAR_FUNCTION_ENTRY},
4027 {"timetz_byte_comparable", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4028 {"to_base", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4029 {"to_base64", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4030 {"to_binary", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4031 {"to_centuries", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4032 {"to_days", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4033 {"to_decades", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4034 {"to_hex", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4035 {"to_hours", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4036 {"to_json", "json", CatalogType::SCALAR_FUNCTION_ENTRY},
4037 {"to_microseconds", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4038 {"to_millennia", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4039 {"to_milliseconds", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4040 {"to_minutes", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4041 {"to_months", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4042 {"to_quarters", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4043 {"to_seconds", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4044 {"to_timestamp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4045 {"to_weeks", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4046 {"to_years", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4047 {"today", "icu", CatalogType::SCALAR_FUNCTION_ENTRY},
4048 {"tpcds", "tpcds", CatalogType::PRAGMA_FUNCTION_ENTRY},
4049 {"tpcds_answers", "tpcds", CatalogType::TABLE_FUNCTION_ENTRY},
4050 {"tpcds_queries", "tpcds", CatalogType::TABLE_FUNCTION_ENTRY},
4051 {"tpch", "tpch", CatalogType::PRAGMA_FUNCTION_ENTRY},
4052 {"tpch_answers", "tpch", CatalogType::TABLE_FUNCTION_ENTRY},
4053 {"tpch_queries", "tpch", CatalogType::TABLE_FUNCTION_ENTRY},
4054 {"transaction_timestamp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4055 {"translate", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4056 {"trim", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4057 {"trunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4058 {"txid_current", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4059 {"typeof", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4060 {"ui_is_started", "ui", CatalogType::TABLE_FUNCTION_ENTRY},
4061 {"unbin", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4062 {"unhex", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4063 {"unicode", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4064 {"union_extract", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4065 {"union_tag", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4066 {"union_value", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4067 {"unpivot_list", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4068 {"url_decode", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4069 {"url_encode", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4070 {"uuid", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4071 {"uuid_extract_timestamp", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4072 {"uuid_extract_version", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4073 {"uuidv4", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4074 {"uuidv7", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4075 {"var_pop", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4076 {"var_samp", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4077 {"variance", "core_functions", CatalogType::AGGREGATE_FUNCTION_ENTRY},
4078 {"variant_to_parquet_variant", "parquet", CatalogType::SCALAR_FUNCTION_ENTRY},
4079 {"vector_type", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4080 {"version", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4081 {"vss_join", "vss", CatalogType::TABLE_MACRO_ENTRY},
4082 {"vss_match", "vss", CatalogType::TABLE_MACRO_ENTRY},
4083 {"xor", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4084 {"|", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4085 {"~", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY},
4086}; // END_OF_EXTENSION_FUNCTIONS

◆ EXTENSION_FUNCTION_OVERLOADS

constexpr ExtensionFunctionOverloadEntry duckdb::EXTENSION_FUNCTION_OVERLOADS[]
staticconstexprprivate
4088 {
4089 {"age", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>INTERVAL"},
4090 {"age", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP,TIMESTAMP]>INTERVAL"},
4091 {"age", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>INTERVAL"},
4092 {"age", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ,TIMESTAMPTZ]>INTERVAL"},
4093 {"century", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4094 {"century", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4095 {"century", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4096 {"century", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4097 {"date_diff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE,DATE]>BIGINT"},
4098 {"date_diff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME,TIME]>BIGINT"},
4099 {"date_diff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP,TIMESTAMP]>BIGINT"},
4100 {"date_diff", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ,TIMESTAMPTZ]>BIGINT"},
4101 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',DATE]>STRUCT()"},
4102 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',INTERVAL]>STRUCT()"},
4103 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIME]>STRUCT()"},
4104 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMESTAMP]>STRUCT()"},
4105 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMETZ]>STRUCT()"},
4106 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIME_NS]>STRUCT()"},
4107 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE]>BIGINT"},
4108 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,INTERVAL]>BIGINT"},
4109 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME]>BIGINT"},
4110 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP]>BIGINT"},
4111 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMETZ]>BIGINT"},
4112 {"date_part", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME_NS]>BIGINT"},
4113 {"date_part", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMESTAMPTZ]>STRUCT()"},
4114 {"date_part", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ]>BIGINT"},
4115 {"date_sub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE,DATE]>BIGINT"},
4116 {"date_sub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME,TIME]>BIGINT"},
4117 {"date_sub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP,TIMESTAMP]>BIGINT"},
4118 {"date_sub", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ,TIMESTAMPTZ]>BIGINT"},
4119 {"date_trunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE]>TIMESTAMP"},
4120 {"date_trunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,INTERVAL]>INTERVAL"},
4121 {"date_trunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP]>TIMESTAMP"},
4122 {"date_trunc", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ]>TIMESTAMPTZ"},
4123 {"datediff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE,DATE]>BIGINT"},
4124 {"datediff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME,TIME]>BIGINT"},
4125 {"datediff", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP,TIMESTAMP]>BIGINT"},
4126 {"datediff", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ,TIMESTAMPTZ]>BIGINT"},
4127 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',DATE]>STRUCT()"},
4128 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',INTERVAL]>STRUCT()"},
4129 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIME]>STRUCT()"},
4130 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMESTAMP]>STRUCT()"},
4131 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMETZ]>STRUCT()"},
4132 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIME_NS]>STRUCT()"},
4133 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE]>BIGINT"},
4134 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,INTERVAL]>BIGINT"},
4135 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME]>BIGINT"},
4136 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP]>BIGINT"},
4137 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMETZ]>BIGINT"},
4138 {"datepart", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME_NS]>BIGINT"},
4139 {"datepart", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "['VARCHAR[]',TIMESTAMPTZ]>STRUCT()"},
4140 {"datepart", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ]>BIGINT"},
4141 {"datesub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE,DATE]>BIGINT"},
4142 {"datesub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIME,TIME]>BIGINT"},
4143 {"datesub", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP,TIMESTAMP]>BIGINT"},
4144 {"datesub", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ,TIMESTAMPTZ]>BIGINT"},
4145 {"datetrunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,DATE]>TIMESTAMP"},
4146 {"datetrunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,INTERVAL]>INTERVAL"},
4147 {"datetrunc", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP]>TIMESTAMP"},
4148 {"datetrunc", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ]>TIMESTAMPTZ"},
4149 {"day", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4150 {"day", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4151 {"day", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4152 {"day", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4153 {"dayname", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>VARCHAR"},
4154 {"dayname", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>VARCHAR"},
4155 {"dayname", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>VARCHAR"},
4156 {"dayofmonth", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4157 {"dayofmonth", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4158 {"dayofmonth", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4159 {"dayofmonth", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4160 {"dayofweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4161 {"dayofweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4162 {"dayofweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4163 {"dayofweek", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4164 {"dayofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4165 {"dayofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4166 {"dayofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4167 {"dayofyear", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4168 {"decade", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4169 {"decade", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4170 {"decade", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4171 {"decade", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4172 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>DOUBLE"},
4173 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>DOUBLE"},
4174 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>DOUBLE"},
4175 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>DOUBLE"},
4176 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>DOUBLE"},
4177 {"epoch", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>DOUBLE"},
4178 {"epoch", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>DOUBLE"},
4179 {"era", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4180 {"era", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4181 {"era", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4182 {"era", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4183 {"generate_series", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT]>BIGINT[]"},
4184 {"generate_series", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT,BIGINT]>BIGINT[]"},
4185 {"generate_series", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT,BIGINT,BIGINT]>BIGINT[]"},
4186 {"generate_series", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY,
4187 "[TIMESTAMP,TIMESTAMP,INTERVAL]>TIMESTAMP[]"},
4188 {"generate_series", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ,TIMESTAMPTZ,INTERVAL]>TIMESTAMPTZ[]"},
4189 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4190 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4191 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>BIGINT"},
4192 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4193 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>BIGINT"},
4194 {"hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>BIGINT"},
4195 {"hour", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4196 {"isodow", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4197 {"isodow", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4198 {"isodow", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4199 {"isodow", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4200 {"isoyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4201 {"isoyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4202 {"isoyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4203 {"isoyear", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4204 {"julian", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>DOUBLE"},
4205 {"julian", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>DOUBLE"},
4206 {"julian", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>DOUBLE"},
4207 {"last_day", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>DATE"},
4208 {"last_day", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>DATE"},
4209 {"last_day", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>DATE"},
4210 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4211 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4212 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>BIGINT"},
4213 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4214 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>BIGINT"},
4215 {"microsecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>BIGINT"},
4216 {"microsecond", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4217 {"millennium", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4218 {"millennium", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4219 {"millennium", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4220 {"millennium", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4221 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4222 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4223 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>BIGINT"},
4224 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4225 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>BIGINT"},
4226 {"millisecond", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>BIGINT"},
4227 {"millisecond", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4228 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4229 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4230 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>BIGINT"},
4231 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4232 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>BIGINT"},
4233 {"minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>BIGINT"},
4234 {"minute", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4235 {"month", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4236 {"month", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4237 {"month", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4238 {"month", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4239 {"monthname", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>VARCHAR"},
4240 {"monthname", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>VARCHAR"},
4241 {"monthname", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>VARCHAR"},
4242 {"quarter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4243 {"quarter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4244 {"quarter", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4245 {"quarter", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4246 {"range", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT]>BIGINT[]"},
4247 {"range", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT,BIGINT]>BIGINT[]"},
4248 {"range", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[BIGINT,BIGINT,BIGINT]>BIGINT[]"},
4249 {"range", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP,TIMESTAMP,INTERVAL]>TIMESTAMP[]"},
4250 {"range", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ,TIMESTAMPTZ,INTERVAL]>TIMESTAMPTZ[]"},
4251 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4252 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4253 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME]>BIGINT"},
4254 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4255 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMETZ]>BIGINT"},
4256 {"second", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIME_NS]>BIGINT"},
4257 {"second", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4258 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,DATE]>DATE"},
4259 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,DATE,DATE]>DATE"},
4260 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,DATE,INTERVAL]>DATE"},
4261 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMP]>TIMESTAMP"},
4262 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMP,INTERVAL]>TIMESTAMP"},
4263 {"time_bucket", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMP,TIMESTAMP]>TIMESTAMP"},
4264 {"time_bucket", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMPTZ]>TIMESTAMPTZ"},
4265 {"time_bucket", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMPTZ,INTERVAL]>TIMESTAMPTZ"},
4266 {"time_bucket", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMPTZ,TIMESTAMPTZ]>TIMESTAMPTZ"},
4267 {"time_bucket", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMESTAMPTZ,VARCHAR]>TIMESTAMPTZ"},
4268 {"timezone", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4269 {"timezone", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4270 {"timezone", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL,TIMETZ]>TIMETZ"},
4271 {"timezone", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4272 {"timezone", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4273 {"timezone", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMP]>TIMESTAMPTZ"},
4274 {"timezone", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMESTAMPTZ]>TIMESTAMP"},
4275 {"timezone", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[VARCHAR,TIMETZ]>TIMETZ"},
4276 {"timezone_hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4277 {"timezone_hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4278 {"timezone_hour", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4279 {"timezone_hour", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4280 {"timezone_minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4281 {"timezone_minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4282 {"timezone_minute", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4283 {"timezone_minute", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4284 {"week", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4285 {"week", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4286 {"week", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4287 {"week", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4288 {"weekday", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4289 {"weekday", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4290 {"weekday", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4291 {"weekday", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4292 {"weekofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4293 {"weekofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4294 {"weekofyear", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4295 {"weekofyear", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4296 {"year", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4297 {"year", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4298 {"year", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4299 {"year", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4300 {"yearweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[DATE]>BIGINT"},
4301 {"yearweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[INTERVAL]>BIGINT"},
4302 {"yearweek", "core_functions", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMP]>BIGINT"},
4303 {"yearweek", "icu", CatalogType::SCALAR_FUNCTION_ENTRY, "[TIMESTAMPTZ]>BIGINT"},
4304}; // END_OF_EXTENSION_FUNCTION_OVERLOADS

◆ EXTENSION_SETTINGS

constexpr ExtensionEntry duckdb::EXTENSION_SETTINGS[]
staticconstexprprivate
4306 {
4307 {"allow_asterisks_in_http_paths", "httpfs"},
4308 {"auto_fallback_to_full_download", "httpfs"},
4309 {"azure_account_name", "azure"},
4310 {"azure_context_caching", "azure"},
4311 {"azure_credential_chain", "azure"},
4312 {"azure_endpoint", "azure"},
4313 {"azure_http_logging", "azure"},
4314 {"azure_http_logging_redact_headers", "azure"},
4315 {"azure_http_logging_redact_query_params", "azure"},
4316 {"azure_http_proxy", "azure"},
4317 {"azure_http_stats", "azure"},
4318 {"azure_proxy_password", "azure"},
4319 {"azure_proxy_user_name", "azure"},
4320 {"azure_read_buffer_size", "azure"},
4321 {"azure_read_transfer_chunk_size", "azure"},
4322 {"azure_read_transfer_concurrency", "azure"},
4323 {"azure_storage_connection_string", "azure"},
4324 {"azure_transport_option_type", "azure"},
4325 {"binary_as_string", "parquet"},
4326 {"ca_cert_file", "httpfs"},
4327 {"calendar", "icu"},
4328 {"disable_parquet_prefetching", "parquet"},
4329 {"ducklake_default_data_inlining_row_limit", "ducklake"},
4330 {"ducklake_max_retry_count", "ducklake"},
4331 {"ducklake_retry_backoff", "ducklake"},
4332 {"ducklake_retry_wait_ms", "ducklake"},
4333 {"ducklake_write_deletion_vectors", "ducklake"},
4334 {"enable_curl_server_cert_verification", "httpfs"},
4335 {"enable_geoparquet_conversion", "parquet"},
4336 {"enable_global_s3_configuration", "httpfs"},
4337 {"enable_server_cert_verification", "httpfs"},
4338 {"force_download", "httpfs"},
4339 {"force_download_threshold", "httpfs"},
4340 {"geometry_always_xy", "spatial"},
4341 {"hf_max_per_page", "httpfs"},
4342 {"hnsw_ef_search", "vss"},
4343 {"hnsw_enable_experimental_persistence", "vss"},
4344 {"http_keep_alive", "httpfs"},
4345 {"http_retries", "httpfs"},
4346 {"http_retry_backoff", "httpfs"},
4347 {"http_retry_wait_ms", "httpfs"},
4348 {"http_timeout", "httpfs"},
4349 {"httpfs_client_implementation", "httpfs"},
4350 {"httpfs_connection_caching", "httpfs"},
4351 {"iceberg_test_force_token_expiry", "iceberg"},
4352 {"iceberg_via_aws_sdk_for_catalog_interactions", "iceberg"},
4353 {"merge_http_secret_into_s3_request", "httpfs"},
4354 {"mysql_adaptive_replan_enabled", "mysql_scanner"},
4355 {"mysql_aggregate_pushdown_enabled", "mysql_scanner"},
4356 {"mysql_bit1_as_boolean", "mysql_scanner"},
4357 {"mysql_compression_aware_costs", "mysql_scanner"},
4358 {"mysql_compression_ratio", "mysql_scanner"},
4359 {"mysql_debug_show_queries", "mysql_scanner"},
4360 {"mysql_enable_transactions", "mysql_scanner"},
4361 {"mysql_experimental_filter_pushdown", "mysql_scanner"},
4362 {"mysql_explain_validation_enabled", "mysql_scanner"},
4363 {"mysql_hint_injection_enabled", "mysql_scanner"},
4364 {"mysql_hint_staleness_threshold", "mysql_scanner"},
4365 {"mysql_incomplete_dates_as_nulls", "mysql_scanner"},
4366 {"mysql_order_pushdown_enabled", "mysql_scanner"},
4367 {"mysql_pool_acquire_mode", "mysql_scanner"},
4368 {"mysql_pool_connection_idle_timeout_millis", "mysql_scanner"},
4369 {"mysql_pool_connection_max_lifetime_millis", "mysql_scanner"},
4370 {"mysql_pool_enable_reaper_thread", "mysql_scanner"},
4371 {"mysql_pool_enable_thread_local_cache", "mysql_scanner"},
4372 {"mysql_pool_size", "mysql_scanner"},
4373 {"mysql_pool_wait_timeout_millis", "mysql_scanner"},
4374 {"mysql_push_threshold_no_index", "mysql_scanner"},
4375 {"mysql_push_threshold_with_index", "mysql_scanner"},
4376 {"mysql_query_timeout_enabled", "mysql_scanner"},
4377 {"mysql_query_timeout_max_ms", "mysql_scanner"},
4378 {"mysql_query_timeout_min_ms", "mysql_scanner"},
4379 {"mysql_session_time_zone", "mysql_scanner"},
4380 {"mysql_sql_buffer_result", "mysql_scanner"},
4381 {"mysql_time_as_time", "mysql_scanner"},
4382 {"mysql_tinyint1_as_boolean", "mysql_scanner"},
4383 {"parquet_metadata_cache", "parquet"},
4384 {"pg_array_as_varchar", "postgres_scanner"},
4385 {"pg_connection_cache", "postgres_scanner"},
4386 {"pg_connection_limit", "postgres_scanner"},
4387 {"pg_debug_show_queries", "postgres_scanner"},
4388 {"pg_experimental_filter_pushdown", "postgres_scanner"},
4389 {"pg_idle_in_transaction_timeout_millis", "postgres_scanner"},
4390 {"pg_null_byte_replacement", "postgres_scanner"},
4391 {"pg_pages_per_task", "postgres_scanner"},
4392 {"pg_pool_enable_reaper_thread", "postgres_scanner"},
4393 {"pg_pool_enable_thread_local_cache", "postgres_scanner"},
4394 {"pg_pool_health_check_query", "postgres_scanner"},
4395 {"pg_pool_idle_timeout_millis", "postgres_scanner"},
4396 {"pg_pool_max_connections", "postgres_scanner"},
4397 {"pg_pool_max_lifetime_millis", "postgres_scanner"},
4398 {"pg_pool_wait_timeout_millis", "postgres_scanner"},
4399 {"pg_statement_timeout_millis", "postgres_scanner"},
4400 {"pg_use_binary_copy", "postgres_scanner"},
4401 {"pg_use_ctid_scan", "postgres_scanner"},
4402 {"pg_use_text_protocol", "postgres_scanner"},
4403 {"prefetch_all_parquet_files", "parquet"},
4404 {"s3_access_key_id", "httpfs"},
4405 {"s3_allow_recursive_globbing", "httpfs"},
4406 {"s3_endpoint", "httpfs"},
4407 {"s3_kms_key_id", "httpfs"},
4408 {"s3_region", "httpfs"},
4409 {"s3_requester_pays", "httpfs"},
4410 {"s3_secret_access_key", "httpfs"},
4411 {"s3_session_token", "httpfs"},
4412 {"s3_uploader_max_filesize", "httpfs"},
4413 {"s3_uploader_max_parts_per_file", "httpfs"},
4414 {"s3_uploader_thread_limit", "httpfs"},
4415 {"s3_url_compatibility_mode", "httpfs"},
4416 {"s3_url_style", "httpfs"},
4417 {"s3_use_ssl", "httpfs"},
4418 {"s3_version_id_pinning", "httpfs"},
4419 {"sqlite_all_varchar", "sqlite_scanner"},
4420 {"sqlite_debug_show_queries", "sqlite_scanner"},
4421 {"sqlite_disable_multithreaded_scans", "sqlite_scanner"},
4422 {"timezone", "icu"},
4423 {"ui_local_port", "ui"},
4424 {"ui_polling_interval", "ui"},
4425 {"ui_remote_url", "ui"},
4426 {"unsafe_disable_etag_checks", "httpfs"},
4427 {"unsafe_enable_version_guessing", "iceberg"},
4428}; // END_OF_EXTENSION_SETTINGS

◆ EXTENSION_SECRET_TYPES

constexpr ExtensionEntry duckdb::EXTENSION_SECRET_TYPES[]
staticconstexprprivate
Initial value:
= {
{"aws", "httpfs"}, {"azure", "azure"}, {"ducklake", "ducklake"}, {"gcs", "httpfs"},
{"huggingface", "httpfs"}, {"iceberg", "iceberg"}, {"mysql", "mysql_scanner"}, {"postgres", "postgres_scanner"},
{"r2", "httpfs"}, {"s3", "httpfs"},
}
4430 {
4431 {"aws", "httpfs"}, {"azure", "azure"}, {"ducklake", "ducklake"}, {"gcs", "httpfs"},
4432 {"huggingface", "httpfs"}, {"iceberg", "iceberg"}, {"mysql", "mysql_scanner"}, {"postgres", "postgres_scanner"},
4433 {"r2", "httpfs"}, {"s3", "httpfs"},
4434}; // END_OF_EXTENSION_SECRET_TYPES

◆ EXTENSION_COPY_FUNCTIONS

constexpr ExtensionEntry duckdb::EXTENSION_COPY_FUNCTIONS[]
staticconstexprprivate
Initial value:
= {
{"parquet", "parquet"}, {"json", "json"}, {"avro", "avro"}}
4438 {
4439 {"parquet", "parquet"}, {"json", "json"}, {"avro", "avro"}}; // END_OF_EXTENSION_COPY_FUNCTIONS

◆ EXTENSION_TYPES

constexpr ExtensionEntry duckdb::EXTENSION_TYPES[]
staticconstexprprivate
Initial value:
= {
{"json", "json"},
{"inet", "inet"},
}
4443 {
4444 {"json", "json"},
4445 {"inet", "inet"},
4446}; // END_OF_EXTENSION_TYPES

◆ EXTENSION_COLLATIONS

constexpr ExtensionEntry duckdb::EXTENSION_COLLATIONS[]
staticconstexprprivate
Initial value:
= {
{"af", "icu"}, {"am", "icu"}, {"ar", "icu"}, {"ar_sa", "icu"}, {"as", "icu"}, {"az", "icu"},
{"be", "icu"}, {"bg", "icu"}, {"bn", "icu"}, {"bo", "icu"}, {"br", "icu"}, {"bs", "icu"},
{"ca", "icu"}, {"ceb", "icu"}, {"chr", "icu"}, {"cs", "icu"}, {"cy", "icu"}, {"da", "icu"},
{"de", "icu"}, {"de_at", "icu"}, {"dsb", "icu"}, {"dz", "icu"}, {"ee", "icu"}, {"el", "icu"},
{"en", "icu"}, {"en_us", "icu"}, {"eo", "icu"}, {"es", "icu"}, {"et", "icu"}, {"fa", "icu"},
{"fa_af", "icu"}, {"ff", "icu"}, {"fi", "icu"}, {"fil", "icu"}, {"fo", "icu"}, {"fr", "icu"},
{"fr_ca", "icu"}, {"fy", "icu"}, {"ga", "icu"}, {"gl", "icu"}, {"gu", "icu"}, {"ha", "icu"},
{"haw", "icu"}, {"he", "icu"}, {"he_il", "icu"}, {"hi", "icu"}, {"hr", "icu"}, {"hsb", "icu"},
{"hu", "icu"}, {"hy", "icu"}, {"id", "icu"}, {"id_id", "icu"}, {"ig", "icu"}, {"is", "icu"},
{"it", "icu"}, {"ja", "icu"}, {"ka", "icu"}, {"kk", "icu"}, {"kl", "icu"}, {"km", "icu"},
{"kn", "icu"}, {"ko", "icu"}, {"kok", "icu"}, {"ku", "icu"}, {"ky", "icu"}, {"lb", "icu"},
{"lkt", "icu"}, {"ln", "icu"}, {"lo", "icu"}, {"lt", "icu"}, {"lv", "icu"}, {"mk", "icu"},
{"ml", "icu"}, {"mn", "icu"}, {"mr", "icu"}, {"ms", "icu"}, {"mt", "icu"}, {"my", "icu"},
{"nb", "icu"}, {"nb_no", "icu"}, {"ne", "icu"}, {"nl", "icu"}, {"nn", "icu"}, {"om", "icu"},
{"or", "icu"}, {"pa", "icu"}, {"pa_in", "icu"}, {"pl", "icu"}, {"ps", "icu"}, {"pt", "icu"},
{"ro", "icu"}, {"ru", "icu"}, {"sa", "icu"}, {"se", "icu"}, {"si", "icu"}, {"sk", "icu"},
{"sl", "icu"}, {"smn", "icu"}, {"sq", "icu"}, {"sr", "icu"}, {"sr_ba", "icu"}, {"sr_me", "icu"},
{"sr_rs", "icu"}, {"sv", "icu"}, {"sw", "icu"}, {"ta", "icu"}, {"te", "icu"}, {"th", "icu"},
{"tk", "icu"}, {"to", "icu"}, {"tr", "icu"}, {"ug", "icu"}, {"uk", "icu"}, {"ur", "icu"},
{"uz", "icu"}, {"vi", "icu"}, {"wae", "icu"}, {"wo", "icu"}, {"xh", "icu"}, {"yi", "icu"},
{"yo", "icu"}, {"yue", "icu"}, {"yue_cn", "icu"}, {"zh", "icu"}, {"zh_cn", "icu"}, {"zh_hk", "icu"},
{"zh_mo", "icu"}, {"zh_sg", "icu"}, {"zh_tw", "icu"}, {"zu", "icu"}}
4450 {
4451 {"af", "icu"}, {"am", "icu"}, {"ar", "icu"}, {"ar_sa", "icu"}, {"as", "icu"}, {"az", "icu"},
4452 {"be", "icu"}, {"bg", "icu"}, {"bn", "icu"}, {"bo", "icu"}, {"br", "icu"}, {"bs", "icu"},
4453 {"ca", "icu"}, {"ceb", "icu"}, {"chr", "icu"}, {"cs", "icu"}, {"cy", "icu"}, {"da", "icu"},
4454 {"de", "icu"}, {"de_at", "icu"}, {"dsb", "icu"}, {"dz", "icu"}, {"ee", "icu"}, {"el", "icu"},
4455 {"en", "icu"}, {"en_us", "icu"}, {"eo", "icu"}, {"es", "icu"}, {"et", "icu"}, {"fa", "icu"},
4456 {"fa_af", "icu"}, {"ff", "icu"}, {"fi", "icu"}, {"fil", "icu"}, {"fo", "icu"}, {"fr", "icu"},
4457 {"fr_ca", "icu"}, {"fy", "icu"}, {"ga", "icu"}, {"gl", "icu"}, {"gu", "icu"}, {"ha", "icu"},
4458 {"haw", "icu"}, {"he", "icu"}, {"he_il", "icu"}, {"hi", "icu"}, {"hr", "icu"}, {"hsb", "icu"},
4459 {"hu", "icu"}, {"hy", "icu"}, {"id", "icu"}, {"id_id", "icu"}, {"ig", "icu"}, {"is", "icu"},
4460 {"it", "icu"}, {"ja", "icu"}, {"ka", "icu"}, {"kk", "icu"}, {"kl", "icu"}, {"km", "icu"},
4461 {"kn", "icu"}, {"ko", "icu"}, {"kok", "icu"}, {"ku", "icu"}, {"ky", "icu"}, {"lb", "icu"},
4462 {"lkt", "icu"}, {"ln", "icu"}, {"lo", "icu"}, {"lt", "icu"}, {"lv", "icu"}, {"mk", "icu"},
4463 {"ml", "icu"}, {"mn", "icu"}, {"mr", "icu"}, {"ms", "icu"}, {"mt", "icu"}, {"my", "icu"},
4464 {"nb", "icu"}, {"nb_no", "icu"}, {"ne", "icu"}, {"nl", "icu"}, {"nn", "icu"}, {"om", "icu"},
4465 {"or", "icu"}, {"pa", "icu"}, {"pa_in", "icu"}, {"pl", "icu"}, {"ps", "icu"}, {"pt", "icu"},
4466 {"ro", "icu"}, {"ru", "icu"}, {"sa", "icu"}, {"se", "icu"}, {"si", "icu"}, {"sk", "icu"},
4467 {"sl", "icu"}, {"smn", "icu"}, {"sq", "icu"}, {"sr", "icu"}, {"sr_ba", "icu"}, {"sr_me", "icu"},
4468 {"sr_rs", "icu"}, {"sv", "icu"}, {"sw", "icu"}, {"ta", "icu"}, {"te", "icu"}, {"th", "icu"},
4469 {"tk", "icu"}, {"to", "icu"}, {"tr", "icu"}, {"ug", "icu"}, {"uk", "icu"}, {"ur", "icu"},
4470 {"uz", "icu"}, {"vi", "icu"}, {"wae", "icu"}, {"wo", "icu"}, {"xh", "icu"}, {"yi", "icu"},
4471 {"yo", "icu"}, {"yue", "icu"}, {"yue_cn", "icu"}, {"zh", "icu"}, {"zh_cn", "icu"}, {"zh_hk", "icu"},
4472 {"zh_mo", "icu"}, {"zh_sg", "icu"}, {"zh_tw", "icu"}, {"zu", "icu"}}; // END_OF_EXTENSION_COLLATIONS

◆ EXTENSION_FILE_PREFIXES

constexpr ExtensionEntry duckdb::EXTENSION_FILE_PREFIXES[]
staticconstexprprivate
Initial value:
= {
{"http://", "httpfs"}, {"https://", "httpfs"}, {"s3://", "httpfs"}, {"s3a://", "httpfs"}, {"s3n://", "httpfs"},
{"gcs://", "httpfs"}, {"gs://", "httpfs"}, {"r2://", "httpfs"}, {"azure://", "azure"}, {"az://", "azure"},
{"abfss://", "azure"}, {"hf://", "httpfs"}}
4476 {
4477 {"http://", "httpfs"}, {"https://", "httpfs"}, {"s3://", "httpfs"}, {"s3a://", "httpfs"}, {"s3n://", "httpfs"},
4478 {"gcs://", "httpfs"}, {"gs://", "httpfs"}, {"r2://", "httpfs"}, {"azure://", "azure"}, {"az://", "azure"},
4479 {"abfss://", "azure"}, {"hf://", "httpfs"}}; // END_OF_EXTENSION_FILE_PREFIXES

◆ EXTENSION_FILE_POSTFIXES

constexpr ExtensionEntry duckdb::EXTENSION_FILE_POSTFIXES[]
staticconstexprprivate
Initial value:
= {
{".parquet", "parquet"}, {".json", "json"}, {".jsonl", "json"}, {".ndjson", "json"}, {".shp", "spatial"},
{".gpkg", "spatial"}, {".fgb", "spatial"}, {".xlsx", "excel"}, {".avro", "avro"},
}
4483 {
4484 {".parquet", "parquet"}, {".json", "json"}, {".jsonl", "json"}, {".ndjson", "json"}, {".shp", "spatial"},
4485 {".gpkg", "spatial"}, {".fgb", "spatial"}, {".xlsx", "excel"}, {".avro", "avro"},
4486}; // END_OF_EXTENSION_FILE_POSTFIXES

◆ EXTENSION_FILE_CONTAINS

constexpr ExtensionEntry duckdb::EXTENSION_FILE_CONTAINS[]
staticconstexprprivate
Initial value:
= {{".parquet?", "parquet"},
{".json?", "json"},
{".ndjson?", ".jsonl?"},
{".jsonl?", ".ndjson?"}}
4490 {{".parquet?", "parquet"},
4491 {".json?", "json"},
4492 {".ndjson?", ".jsonl?"},
4493 {".jsonl?", ".ndjson?"}}; // EXTENSION_FILE_CONTAINS

◆ EXTENSION_SECRET_PROVIDERS

constexpr ExtensionEntry duckdb::EXTENSION_SECRET_PROVIDERS[]
staticconstexprprivate
Initial value:
= {
{"s3/config", "httpfs"},
{"gcs/config", "httpfs"},
{"r2/config", "httpfs"},
{"s3/credential_chain", "aws"},
{"gcs/credential_chain", "aws"},
{"r2/credential_chain", "aws"},
{"aws/credential_chain", "aws"},
{"azure/access_token", "azure"},
{"azure/config", "azure"},
{"azure/credential_chain", "azure"},
{"azure/service_principal", "azure"},
{"huggingface/config", "httfps"},
{"huggingface/credential_chain", "httpfs"},
{"bearer/config", "httpfs"},
{"mysql/config", "mysql_scanner"},
{"postgres/config", "postgres_scanner"}}
4497 {
4498 {"s3/config", "httpfs"},
4499 {"gcs/config", "httpfs"},
4500 {"r2/config", "httpfs"},
4501 {"s3/credential_chain", "aws"},
4502 {"gcs/credential_chain", "aws"},
4503 {"r2/credential_chain", "aws"},
4504 {"aws/credential_chain", "aws"},
4505 {"azure/access_token", "azure"},
4506 {"azure/config", "azure"},
4507 {"azure/credential_chain", "azure"},
4508 {"azure/service_principal", "azure"},
4509 {"huggingface/config", "httfps"},
4510 {"huggingface/credential_chain", "httpfs"},
4511 {"bearer/config", "httpfs"},
4512 {"mysql/config", "mysql_scanner"},
4513 {"postgres/config", "postgres_scanner"}}; // EXTENSION_SECRET_PROVIDERS

◆ AUTOLOADABLE_EXTENSIONS

constexpr const char* duckdb::AUTOLOADABLE_EXTENSIONS[]
staticconstexprprivate
Initial value:
= {"avro",
"aws",
"azure",
"autocomplete",
"core_functions",
"delta",
"ducklake",
"encodings",
"excel",
"fts",
"httpfs",
"iceberg",
"inet",
"icu",
"json",
"motherduck",
"mysql_scanner",
"parquet",
"sqlite_scanner",
"sqlsmith",
"postgres_scanner",
"tpcds",
"tpch",
"unity_catalog",
"ui"}
4515 {"avro",
4516 "aws",
4517 "azure",
4518 "autocomplete",
4519 "core_functions",
4520 "delta",
4521 "ducklake",
4522 "encodings",
4523 "excel",
4524 "fts",
4525 "httpfs",
4526 "iceberg",
4527 "inet",
4528 "icu",
4529 "json",
4530 "motherduck",
4531 "mysql_scanner",
4532 "parquet",
4533 "sqlite_scanner",
4534 "sqlsmith",
4535 "postgres_scanner",
4536 "tpcds",
4537 "tpch",
4538 "unity_catalog",
4539 "ui"}; // END_OF_AUTOLOADABLE_EXTENSIONS

◆ internal_macros

const DefaultMacro duckdb::internal_macros[]
staticprivate
24011 {
24012 {DEFAULT_SCHEMA, "current_role", {nullptr}, {{nullptr, nullptr}}, "'duckdb'"}, // user name of current execution context
24013 {DEFAULT_SCHEMA, "current_user", {nullptr}, {{nullptr, nullptr}}, "'duckdb'"}, // user name of current execution context
24014 {DEFAULT_SCHEMA, "current_catalog", {nullptr}, {{nullptr, nullptr}}, "main.current_database()"}, // name of current database (called "catalog" in the SQL standard)
24015 {DEFAULT_SCHEMA, "user", {nullptr}, {{nullptr, nullptr}}, "current_user"}, // equivalent to current_user
24016 {DEFAULT_SCHEMA, "session_user", {nullptr}, {{nullptr, nullptr}}, "'duckdb'"}, // session user name
24017 {"pg_catalog", "inet_client_addr", {nullptr}, {{nullptr, nullptr}}, "NULL"}, // address of the remote connection
24018 {"pg_catalog", "inet_client_port", {nullptr}, {{nullptr, nullptr}}, "NULL"}, // port of the remote connection
24019 {"pg_catalog", "inet_server_addr", {nullptr}, {{nullptr, nullptr}}, "NULL"}, // address of the local connection
24020 {"pg_catalog", "inet_server_port", {nullptr}, {{nullptr, nullptr}}, "NULL"}, // port of the local connection
24021 {"pg_catalog", "pg_my_temp_schema", {nullptr}, {{nullptr, nullptr}}, "0"}, // OID of session's temporary schema, or 0 if none
24022 {"pg_catalog", "pg_is_other_temp_schema", {"schema_id", nullptr}, {{nullptr, nullptr}}, "false"}, // is schema another session's temporary schema?
24023
24024 {"pg_catalog", "pg_conf_load_time", {nullptr}, {{nullptr, nullptr}}, "current_timestamp"}, // configuration load time
24025 {"pg_catalog", "pg_postmaster_start_time", {nullptr}, {{nullptr, nullptr}}, "current_timestamp"}, // server start time
24026
24027 {"pg_catalog", "pg_typeof", {"expression", nullptr}, {{nullptr, nullptr}}, "lower(typeof(expression))"}, // get the data type of any value
24028
24029 {"pg_catalog", "current_database", {nullptr}, {{nullptr, nullptr}}, "system.main.current_database()"}, // name of current database (called "catalog" in the SQL standard)
24030 {"pg_catalog", "current_query", {nullptr}, {{nullptr, nullptr}}, "system.main.current_query()"}, // the currently executing query (NULL if not inside a plpgsql function)
24031 {"pg_catalog", "current_schema", {nullptr}, {{nullptr, nullptr}}, "system.main.current_schema()"}, // name of current schema
24032 {"pg_catalog", "current_schemas", {"include_implicit"}, {{nullptr, nullptr}}, "system.main.current_schemas(include_implicit)"}, // names of schemas in search path
24033
24034 // privilege functions
24035 {"pg_catalog", "has_any_column_privilege", {"table", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for any column of table
24036 {"pg_catalog", "has_any_column_privilege", {"user", "table", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for any column of table
24037 {"pg_catalog", "has_column_privilege", {"table", "column", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for column
24038 {"pg_catalog", "has_column_privilege", {"user", "table", "column", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for column
24039 {"pg_catalog", "has_database_privilege", {"database", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for database
24040 {"pg_catalog", "has_database_privilege", {"user", "database", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for database
24041 {"pg_catalog", "has_foreign_data_wrapper_privilege", {"fdw", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for foreign-data wrapper
24042 {"pg_catalog", "has_foreign_data_wrapper_privilege", {"user", "fdw", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for foreign-data wrapper
24043 {"pg_catalog", "has_function_privilege", {"function", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for function
24044 {"pg_catalog", "has_function_privilege", {"user", "function", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for function
24045 {"pg_catalog", "has_language_privilege", {"language", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for language
24046 {"pg_catalog", "has_language_privilege", {"user", "language", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for language
24047 {"pg_catalog", "has_schema_privilege", {"schema", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for schema
24048 {"pg_catalog", "has_schema_privilege", {"user", "schema", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for schema
24049 {"pg_catalog", "has_sequence_privilege", {"sequence", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for sequence
24050 {"pg_catalog", "has_sequence_privilege", {"user", "sequence", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for sequence
24051 {"pg_catalog", "has_server_privilege", {"server", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for foreign server
24052 {"pg_catalog", "has_server_privilege", {"user", "server", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for foreign server
24053 {"pg_catalog", "has_table_privilege", {"table", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for table
24054 {"pg_catalog", "has_table_privilege", {"user", "table", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for table
24055 {"pg_catalog", "has_tablespace_privilege", {"tablespace", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for tablespace
24056 {"pg_catalog", "has_tablespace_privilege", {"user", "tablespace", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for tablespace
24057
24058 // various postgres system functions
24059 {"pg_catalog", "pg_get_viewdef", {"oid", nullptr}, {{nullptr, nullptr}}, "(select sql from duckdb_views() v where v.view_oid=oid)"},
24060 {"pg_catalog", "pg_get_constraintdef", {"constraint_oid", nullptr}, {{nullptr, nullptr}}, "(select constraint_text from duckdb_constraints() d_constraint where d_constraint.table_oid=constraint_oid//1000000 and d_constraint.constraint_index=constraint_oid%1000000)"},
24061 {"pg_catalog", "pg_get_constraintdef", {"constraint_oid", "pretty_bool", nullptr}, {{nullptr, nullptr}}, "pg_get_constraintdef(constraint_oid)"},
24062 {"pg_catalog", "pg_get_expr", {"pg_node_tree", "relation_oid", nullptr}, {{nullptr, nullptr}}, "pg_node_tree"},
24063 {"pg_catalog", "format_pg_type", {"logical_type", "type_name", nullptr}, {{nullptr, nullptr}}, "case upper(logical_type) when 'FLOAT' then 'float4' when 'DOUBLE' then 'float8' when 'DECIMAL' then 'numeric' when 'ENUM' then lower(type_name) when 'VARCHAR' then 'varchar' when 'BLOB' then 'bytea' when 'TIMESTAMP' then 'timestamp' when 'TIME' then 'time' when 'TIMESTAMP WITH TIME ZONE' then 'timestamptz' when 'TIME WITH TIME ZONE' then 'timetz' when 'SMALLINT' then 'int2' when 'INTEGER' then 'int4' when 'BIGINT' then 'int8' when 'BOOLEAN' then 'bool' else lower(logical_type) end"},
24064 {"pg_catalog", "format_type", {"type_oid", "typemod", nullptr}, {{nullptr, nullptr}}, "(select format_pg_type(logical_type, type_name) from duckdb_types() t where t.type_oid=type_oid) || case when typemod>0 then concat('(', typemod//1000, ',', typemod%1000, ')') else '' end"},
24065 {"pg_catalog", "map_to_pg_oid", {"type_name", nullptr}, {{nullptr, nullptr}}, "case type_name when 'bool' then 16 when 'int16' then 21 when 'int' then 23 when 'bigint' then 20 when 'date' then 1082 when 'time' then 1083 when 'datetime' then 1114 when 'dec' then 1700 when 'float' then 700 when 'double' then 701 when 'bpchar' then 1043 when 'binary' then 17 when 'interval' then 1186 when 'timestamptz' then 1184 when 'timestamp with time zone' then 1184 when 'timetz' then 1266 when 'time with time zone' then 1266 when 'bit' then 1560 when 'guid' then 2950 else null end"}, // map duckdb_oid to pg_oid. If no corresponding type, return null
24066
24067 {"pg_catalog", "pg_has_role", {"user", "role", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does user have privilege for role
24068 {"pg_catalog", "pg_has_role", {"role", "privilege", nullptr}, {{nullptr, nullptr}}, "true"}, //boolean //does current user have privilege for role
24069
24070 {"pg_catalog", "col_description", {"table_oid", "column_number", nullptr}, {{nullptr, nullptr}}, "NULL"}, // get comment for a table column
24071 {"pg_catalog", "obj_description", {"object_oid", "catalog_name", nullptr}, {{nullptr, nullptr}}, "NULL"}, // get comment for a database object
24072 {"pg_catalog", "shobj_description", {"object_oid", "catalog_name", nullptr}, {{nullptr, nullptr}}, "NULL"}, // get comment for a shared database object
24073
24074 // visibility functions
24075 {"pg_catalog", "pg_collation_is_visible", {"collation_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24076 {"pg_catalog", "pg_conversion_is_visible", {"conversion_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24077 {"pg_catalog", "pg_function_is_visible", {"function_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24078 {"pg_catalog", "pg_opclass_is_visible", {"opclass_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24079 {"pg_catalog", "pg_operator_is_visible", {"operator_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24080 {"pg_catalog", "pg_opfamily_is_visible", {"opclass_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24081 {"pg_catalog", "pg_table_is_visible", {"table_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24082 {"pg_catalog", "pg_ts_config_is_visible", {"config_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24083 {"pg_catalog", "pg_ts_dict_is_visible", {"dict_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24084 {"pg_catalog", "pg_ts_parser_is_visible", {"parser_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24085 {"pg_catalog", "pg_ts_template_is_visible", {"template_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24086 {"pg_catalog", "pg_type_is_visible", {"type_oid", nullptr}, {{nullptr, nullptr}}, "true"},
24087
24088 {"pg_catalog", "pg_size_pretty", {"bytes", nullptr}, {{nullptr, nullptr}}, "format_bytes(bytes)"},
24089 {"pg_catalog", "pg_sleep", {"seconds", nullptr}, {{nullptr, nullptr}}, "sleep_ms(CAST(seconds * 1000 AS BIGINT))"},
24090
24091 {DEFAULT_SCHEMA, "round_even", {"x", "n", nullptr}, {{nullptr, nullptr}}, "CASE ((abs(x) * power(10, n+1)) % 10) WHEN 5 THEN round(x/2, n) * 2 ELSE round(x, n) END"},
24092 {DEFAULT_SCHEMA, "roundbankers", {"x", "n", nullptr}, {{nullptr, nullptr}}, "round_even(x, n)"},
24093 {DEFAULT_SCHEMA, "nullif", {"a", "b", nullptr}, {{nullptr, nullptr}}, "CASE WHEN a=b THEN NULL ELSE a END"},
24094 {DEFAULT_SCHEMA, "list_append", {"l", "e", nullptr}, {{nullptr, nullptr}}, "list_concat(l, list_value(e))"},
24095 {DEFAULT_SCHEMA, "array_append", {"arr", "el", nullptr}, {{nullptr, nullptr}}, "list_append(arr, el)"},
24096 {DEFAULT_SCHEMA, "list_prepend", {"e", "l", nullptr}, {{nullptr, nullptr}}, "list_concat(list_value(e), l)"},
24097 {DEFAULT_SCHEMA, "array_prepend", {"el", "arr", nullptr}, {{nullptr, nullptr}}, "list_prepend(el, arr)"},
24098 {DEFAULT_SCHEMA, "array_pop_back", {"arr", nullptr}, {{nullptr, nullptr}}, "arr[:LEN(arr)-1]"},
24099 {DEFAULT_SCHEMA, "array_pop_front", {"arr", nullptr}, {{nullptr, nullptr}}, "arr[2:]"},
24100 {DEFAULT_SCHEMA, "array_push_back", {"arr", "e", nullptr}, {{nullptr, nullptr}}, "list_concat(arr, list_value(e))"},
24101 {DEFAULT_SCHEMA, "array_push_front", {"arr", "e", nullptr}, {{nullptr, nullptr}}, "list_concat(list_value(e), arr)"},
24102 {DEFAULT_SCHEMA, "array_to_string", {"arr", "sep", nullptr}, {{nullptr, nullptr}}, "case len(arr::varchar[]) when 0 then '' else list_aggr(arr::varchar[], 'string_agg', sep) end"},
24103 // Test default parameters
24104 {DEFAULT_SCHEMA, "array_to_string_comma_default", {"arr", nullptr}, {{"sep", "','"}, {nullptr, nullptr}}, "case len(arr::varchar[]) when 0 then '' else list_aggr(arr::varchar[], 'string_agg', sep) end"},
24105
24106 {DEFAULT_SCHEMA, "generate_subscripts", {"arr", "dim", nullptr}, {{nullptr, nullptr}}, "unnest(generate_series(1, array_length(arr, dim)))"},
24107 {DEFAULT_SCHEMA, "fdiv", {"x", "y", nullptr}, {{nullptr, nullptr}}, "floor(x/y)"},
24108 {DEFAULT_SCHEMA, "fmod", {"x", "y", nullptr}, {{nullptr, nullptr}}, "(x-y*floor(x/y))"},
24109 {DEFAULT_SCHEMA, "split_part", {"string", "delimiter", "position", nullptr}, {{nullptr, nullptr}}, "if(string IS NOT NULL AND delimiter IS NOT NULL AND position IS NOT NULL, coalesce(string_split(string, delimiter)[position],''), NULL)"},
24110 {DEFAULT_SCHEMA, "geomean", {"x", nullptr}, {{nullptr, nullptr}}, "exp(avg(ln(x)))"},
24111 {DEFAULT_SCHEMA, "geometric_mean", {"x", nullptr}, {{nullptr, nullptr}}, "geomean(x)"},
24112
24113 {DEFAULT_SCHEMA, "weighted_avg", {"value", "weight", nullptr}, {{nullptr, nullptr}}, "SUM(value * weight) / SUM(CASE WHEN value IS NOT NULL THEN weight ELSE 0 END)"},
24114 {DEFAULT_SCHEMA, "wavg", {"value", "weight", nullptr}, {{nullptr, nullptr}}, "weighted_avg(value, weight)"},
24115
24116 {DEFAULT_SCHEMA, "list_reverse", {"l", nullptr}, {{nullptr, nullptr}}, "l[:-:-1]"},
24117 {DEFAULT_SCHEMA, "array_reverse", {"l", nullptr}, {{nullptr, nullptr}}, "list_reverse(l)"},
24118
24119 // algebraic list aggregates
24120 {DEFAULT_SCHEMA, "list_avg", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'avg')"},
24121 {DEFAULT_SCHEMA, "list_var_samp", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'var_samp')"},
24122 {DEFAULT_SCHEMA, "list_var_pop", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'var_pop')"},
24123 {DEFAULT_SCHEMA, "list_stddev_pop", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'stddev_pop')"},
24124 {DEFAULT_SCHEMA, "list_stddev_samp", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'stddev_samp')"},
24125 {DEFAULT_SCHEMA, "list_sem", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'sem')"},
24126
24127 // distributive list aggregates
24128 {DEFAULT_SCHEMA, "list_approx_count_distinct", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'approx_count_distinct')"},
24129 {DEFAULT_SCHEMA, "list_bit_xor", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'bit_xor')"},
24130 {DEFAULT_SCHEMA, "list_bit_or", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'bit_or')"},
24131 {DEFAULT_SCHEMA, "list_bit_and", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'bit_and')"},
24132 {DEFAULT_SCHEMA, "list_bool_and", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'bool_and')"},
24133 {DEFAULT_SCHEMA, "list_bool_or", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'bool_or')"},
24134 {DEFAULT_SCHEMA, "list_count", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'count')"},
24135 {DEFAULT_SCHEMA, "list_entropy", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'entropy')"},
24136 {DEFAULT_SCHEMA, "list_last", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'last')"},
24137 {DEFAULT_SCHEMA, "list_first", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'first')"},
24138 {DEFAULT_SCHEMA, "list_any_value", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'any_value')"},
24139 {DEFAULT_SCHEMA, "list_kurtosis", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'kurtosis')"},
24140 {DEFAULT_SCHEMA, "list_kurtosis_pop", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'kurtosis_pop')"},
24141 {DEFAULT_SCHEMA, "list_min", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'min')"},
24142 {DEFAULT_SCHEMA, "list_max", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'max')"},
24143 {DEFAULT_SCHEMA, "list_product", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'product')"},
24144 {DEFAULT_SCHEMA, "list_skewness", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'skewness')"},
24145 {DEFAULT_SCHEMA, "list_sum", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'sum')"},
24146 {DEFAULT_SCHEMA, "list_string_agg", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'string_agg')"},
24147
24148 // holistic list aggregates
24149 {DEFAULT_SCHEMA, "list_mode", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'mode')"},
24150 {DEFAULT_SCHEMA, "list_median", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'median')"},
24151 {DEFAULT_SCHEMA, "list_mad", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'mad')"},
24152
24153 // nested list aggregates
24154 {DEFAULT_SCHEMA, "list_histogram", {"l", nullptr}, {{nullptr, nullptr}}, "list_aggr(l, 'histogram')"},
24155
24156 // map functions
24157 {DEFAULT_SCHEMA, "map_contains_entry", {"map", "key", "value"}, {{nullptr, nullptr}}, "contains(map_entries(map), {'key': key, 'value': value})"},
24158 {DEFAULT_SCHEMA, "map_contains_value", {"map", "value", nullptr}, {{nullptr, nullptr}}, "contains(map_values(map), value)"},
24159
24160 // date functions
24161 {DEFAULT_SCHEMA, "date_add", {"date", "interval", nullptr}, {{nullptr, nullptr}}, "date + interval"},
24162
24163 // date functions - convenience macro for getting days in month
24164 {DEFAULT_SCHEMA, "days_in_month", {"date", nullptr}, {{nullptr, nullptr}}, "day(last_day(date))"},
24165
24166 // timestamptz functions
24167 {DEFAULT_SCHEMA, "ago", {"i", nullptr}, {{nullptr, nullptr}}, "current_timestamp - i::interval"},
24168
24169 // regexp functions
24170 {DEFAULT_SCHEMA, "regexp_split_to_table", {"text", "pattern", nullptr}, {{nullptr, nullptr}}, "unnest(string_split_regex(text, pattern))"},
24171
24172 // storage helper functions
24173 {DEFAULT_SCHEMA, "get_block_size", {"db_name"}, {{nullptr, nullptr}}, "(SELECT block_size FROM pragma_database_size() WHERE database_name = db_name)"},
24174
24175 // string functions
24176 {DEFAULT_SCHEMA, "md5_number_upper", {"param"}, {{nullptr, nullptr}}, "((md5_number(param)::bit::varchar)[65:])::bit::uint64"},
24177 {DEFAULT_SCHEMA, "md5_number_lower", {"param"}, {{nullptr, nullptr}}, "((md5_number(param)::bit::varchar)[:64])::bit::uint64"},
24178
24179 {nullptr, nullptr, {nullptr}, {{nullptr, nullptr}}, nullptr}
24180 };

◆ internal_schemas

const DefaultSchema duckdb::internal_schemas[] = {{"information_schema"}, {"pg_catalog"}, {nullptr}}
staticprivate
24303{{"information_schema"}, {"pg_catalog"}, {nullptr}};

◆ internal_table_macros

const DefaultTableMacro duckdb::internal_table_macros[]
static
24389 {
24390 {DEFAULT_SCHEMA, "histogram_values", {"source", "col_name", nullptr}, {{"bin_count", "10"}, {"technique", "'auto'"}, {nullptr, nullptr}}, R"(
24391WITH bins AS (
24392 SELECT
24393 CASE
24394 WHEN (NOT (can_cast_implicitly(MIN(col_name), NULL::BIGINT) OR
24395 can_cast_implicitly(MIN(col_name), NULL::DOUBLE) OR
24396 can_cast_implicitly(MIN(col_name), NULL::TIMESTAMP)) AND technique='auto')
24397 OR technique='sample'
24398 THEN
24399 approx_top_k(col_name, bin_count)
24400 WHEN technique='equi-height'
24401 THEN
24402 quantile(col_name, [x / bin_count::DOUBLE for x in generate_series(1, bin_count)])
24403 WHEN technique='equi-width'
24404 THEN
24405 equi_width_bins(MIN(col_name), MAX(col_name), bin_count, false)
24406 WHEN technique='equi-width-nice' OR technique='auto'
24407 THEN
24408 equi_width_bins(MIN(col_name), MAX(col_name), bin_count, true)
24409 ELSE
24410 error(concat('Unrecognized technique ', technique))
24411 END AS bins
24412 FROM query_table(source::VARCHAR)
24413 )
24414SELECT UNNEST(map_keys(histogram)) AS bin, UNNEST(map_values(histogram)) AS count
24415FROM (
24416 SELECT CASE
24417 WHEN (NOT (can_cast_implicitly(MIN(col_name), NULL::BIGINT) OR
24418 can_cast_implicitly(MIN(col_name), NULL::DOUBLE) OR
24419 can_cast_implicitly(MIN(col_name), NULL::TIMESTAMP)) AND technique='auto')
24420 OR technique='sample'
24421 THEN
24422 histogram_exact(col_name, bins)
24423 ELSE
24424 histogram(col_name, bins)
24425 END AS histogram
24426 FROM query_table(source::VARCHAR), bins
24427);
24428)"},
24429 {DEFAULT_SCHEMA, "histogram", {"source", "col_name", nullptr}, {{"bin_count", "10"}, {"technique", "'auto'"}, {nullptr, nullptr}}, R"(
24430SELECT
24431 CASE
24432 WHEN is_histogram_other_bin(bin)
24433 THEN '(other values)'
24434 WHEN (NOT (can_cast_implicitly(bin, NULL::BIGINT) OR
24435 can_cast_implicitly(bin, NULL::DOUBLE) OR
24436 can_cast_implicitly(bin, NULL::TIMESTAMP)) AND technique='auto')
24437 OR technique='sample'
24438 THEN bin::VARCHAR
24439 WHEN row_number() over () = 1
24440 THEN concat('x <= ', bin::VARCHAR)
24441 ELSE concat(lag(bin::VARCHAR) over (), ' < x <= ', bin::VARCHAR)
24442 END AS bin,
24443 count,
24444 bar(count, 0, max(count) over ()) AS bar
24445FROM histogram_values(source, col_name, bin_count := bin_count, technique := technique);
24446)"},
24447 {DEFAULT_SCHEMA, "duckdb_logs_parsed", {"log_type"}, {}, R"(
24448SELECT * EXCLUDE (message), UNNEST(parse_duckdb_log_message(log_type, message))
24449FROM duckdb_logs(denormalized_table=1)
24450WHERE type ILIKE log_type
24451)"},
24452 {DEFAULT_SCHEMA, "duckdb_profiling_settings", {}, {}, R"(
24453SELECT * EXCLUDE(input_type, scope, aliases)
24454 FROM duckdb_settings()
24455 WHERE name IN (
24456 'enable_profiling',
24457 'profiling_coverage',
24458 'profiling_output',
24459 'profiling_mode',
24460 'custom_profiling_settings'
24461 );
24462)"},
24463 {nullptr, nullptr, {nullptr}, {{nullptr, nullptr}}, nullptr}
24464 };

◆ internal_views

const DefaultView duckdb::internal_views[]
static
25185 {
25186 {DEFAULT_SCHEMA, "pragma_database_list", "SELECT database_oid AS seq, database_name AS name, path AS file FROM duckdb_databases() WHERE NOT internal ORDER BY 1"},
25187 {DEFAULT_SCHEMA, "sqlite_master", "select 'table' \"type\", table_name \"name\", table_name \"tbl_name\", 0 rootpage, sql from duckdb_tables union all select 'view' \"type\", view_name \"name\", view_name \"tbl_name\", 0 rootpage, sql from duckdb_views union all select 'index' \"type\", index_name \"name\", table_name \"tbl_name\", 0 rootpage, sql from duckdb_indexes;"},
25188 {DEFAULT_SCHEMA, "sqlite_schema", "SELECT * FROM sqlite_master"},
25189 {DEFAULT_SCHEMA, "sqlite_temp_master", "SELECT * FROM sqlite_master"},
25190 {DEFAULT_SCHEMA, "sqlite_temp_schema", "SELECT * FROM sqlite_master"},
25191 {DEFAULT_SCHEMA, "duckdb_constraints", "SELECT * FROM duckdb_constraints()"},
25192 {DEFAULT_SCHEMA, "duckdb_columns", "SELECT * FROM duckdb_columns() WHERE NOT internal"},
25193 {DEFAULT_SCHEMA, "duckdb_databases", "SELECT * FROM duckdb_databases() WHERE NOT internal"},
25194 {DEFAULT_SCHEMA, "duckdb_indexes", "SELECT * FROM duckdb_indexes()"},
25195 {DEFAULT_SCHEMA, "duckdb_schemas", "SELECT * FROM duckdb_schemas() WHERE NOT internal"},
25196 {DEFAULT_SCHEMA, "duckdb_tables", "SELECT * FROM duckdb_tables() WHERE NOT internal"},
25197 {DEFAULT_SCHEMA, "duckdb_types", "SELECT * FROM duckdb_types()"},
25198 {DEFAULT_SCHEMA, "duckdb_views", "SELECT * FROM duckdb_views() WHERE NOT internal"},
25199 {DEFAULT_SCHEMA, "duckdb_logs", "SELECT * FROM duckdb_logs(denormalized_table=true)"},
25200 {"pg_catalog", "pg_am", "SELECT 0 oid, 'art' amname, NULL amhandler, 'i' amtype"},
25201 {"pg_catalog", "pg_prepared_statements", "SELECT name, statement, NULL prepare_time, parameter_types, result_types, NULL from_sql, NULL generic_plans, NULL custom_plans from duckdb_prepared_statements()"},
25202 {"pg_catalog", "pg_attribute", "SELECT table_oid attrelid, column_name attname, data_type_id atttypid, 0 attstattarget, NULL attlen, column_index attnum, 0 attndims, -1 attcacheoff, case when data_type ilike '%decimal%' then numeric_precision*1000+numeric_scale else -1 end atttypmod, false attbyval, NULL attstorage, NULL attalign, NOT is_nullable attnotnull, column_default IS NOT NULL atthasdef, false atthasmissing, '' attidentity, '' attgenerated, false attisdropped, true attislocal, 0 attinhcount, 0 attcollation, NULL attcompression, NULL attacl, NULL attoptions, NULL attfdwoptions, NULL attmissingval FROM duckdb_columns()"},
25203 {"pg_catalog", "pg_attrdef", "SELECT column_index oid, table_oid adrelid, column_index adnum, column_default adbin from duckdb_columns() where column_default is not null;"},
25204 {"pg_catalog", "pg_class", "SELECT table_oid oid, table_name relname, schema_oid relnamespace, 0 reltype, 0 reloftype, 0 relowner, 0 relam, 0 relfilenode, 0 reltablespace, 0 relpages, estimated_size::real reltuples, 0 relallvisible, 0 reltoastrelid, 0 reltoastidxid, index_count > 0 relhasindex, false relisshared, case when temporary then 't' else 'p' end relpersistence, 'r' relkind, column_count relnatts, check_constraint_count relchecks, false relhasoids, has_primary_key relhaspkey, false relhasrules, false relhastriggers, false relhassubclass, false relrowsecurity, true relispopulated, NULL relreplident, false relispartition, 0 relrewrite, 0 relfrozenxid, NULL relminmxid, NULL relacl, NULL reloptions, NULL relpartbound FROM duckdb_tables() UNION ALL SELECT view_oid oid, view_name relname, schema_oid relnamespace, 0 reltype, 0 reloftype, 0 relowner, 0 relam, 0 relfilenode, 0 reltablespace, 0 relpages, 0 reltuples, 0 relallvisible, 0 reltoastrelid, 0 reltoastidxid, false relhasindex, false relisshared, case when temporary then 't' else 'p' end relpersistence, 'v' relkind, column_count relnatts, 0 relchecks, false relhasoids, false relhaspkey, false relhasrules, false relhastriggers, false relhassubclass, false relrowsecurity, true relispopulated, NULL relreplident, false relispartition, 0 relrewrite, 0 relfrozenxid, NULL relminmxid, NULL relacl, NULL reloptions, NULL relpartbound FROM duckdb_views() UNION ALL SELECT sequence_oid oid, sequence_name relname, schema_oid relnamespace, 0 reltype, 0 reloftype, 0 relowner, 0 relam, 0 relfilenode, 0 reltablespace, 0 relpages, 0 reltuples, 0 relallvisible, 0 reltoastrelid, 0 reltoastidxid, false relhasindex, false relisshared, case when temporary then 't' else 'p' end relpersistence, 'S' relkind, 0 relnatts, 0 relchecks, false relhasoids, false relhaspkey, false relhasrules, false relhastriggers, false relhassubclass, false relrowsecurity, true relispopulated, NULL relreplident, false relispartition, 0 relrewrite, 0 relfrozenxid, NULL relminmxid, NULL relacl, NULL reloptions, NULL relpartbound FROM duckdb_sequences() UNION ALL SELECT index_oid oid, index_name relname, schema_oid relnamespace, 0 reltype, 0 reloftype, 0 relowner, 0 relam, 0 relfilenode, 0 reltablespace, 0 relpages, 0 reltuples, 0 relallvisible, 0 reltoastrelid, 0 reltoastidxid, false relhasindex, false relisshared, 't' relpersistence, 'i' relkind, NULL relnatts, 0 relchecks, false relhasoids, false relhaspkey, false relhasrules, false relhastriggers, false relhassubclass, false relrowsecurity, true relispopulated, NULL relreplident, false relispartition, 0 relrewrite, 0 relfrozenxid, NULL relminmxid, NULL relacl, NULL reloptions, NULL relpartbound FROM duckdb_indexes()"},
25205 {"pg_catalog", "pg_constraint", "SELECT table_oid*1000000+constraint_index oid, constraint_text conname, schema_oid connamespace, CASE constraint_type WHEN 'CHECK' then 'c' WHEN 'UNIQUE' then 'u' WHEN 'PRIMARY KEY' THEN 'p' WHEN 'FOREIGN KEY' THEN 'f' ELSE 'x' END contype, false condeferrable, false condeferred, true convalidated, table_oid conrelid, 0 contypid, 0 conindid, 0 conparentid, 0 confrelid, NULL confupdtype, NULL confdeltype, NULL confmatchtype, true conislocal, 0 coninhcount, false connoinherit, constraint_column_indexes conkey, NULL confkey, NULL conpfeqop, NULL conppeqop, NULL conffeqop, NULL conexclop, expression conbin FROM duckdb_constraints()"},
25206 {"pg_catalog", "pg_database", "SELECT database_oid oid, database_name datname FROM duckdb_databases()"},
25207 {"pg_catalog", "pg_depend", "SELECT * FROM duckdb_dependencies()"},
25208 {"pg_catalog", "pg_description", "SELECT table_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_tables() WHERE NOT internal UNION ALL SELECT table_oid AS objoid, database_oid AS classoid, column_index AS objsubid, comment AS description FROM duckdb_columns() WHERE NOT internal UNION ALL SELECT view_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_views() WHERE NOT internal UNION ALL SELECT index_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_indexes UNION ALL SELECT sequence_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_sequences() UNION ALL SELECT type_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_types() WHERE NOT internal UNION ALL SELECT function_oid AS objoid, database_oid AS classoid, 0 AS objsubid, comment AS description FROM duckdb_functions() WHERE NOT internal;"},
25209 {"pg_catalog", "pg_enum", "SELECT NULL oid, a.type_oid enumtypid, list_position(b.labels, a.elabel) enumsortorder, a.elabel enumlabel FROM (SELECT UNNEST(labels) elabel, type_oid FROM duckdb_types() WHERE logical_type='ENUM') a JOIN duckdb_types() b ON a.type_oid=b.type_oid;"},
25210 {"pg_catalog", "pg_index", "SELECT index_oid indexrelid, table_oid indrelid, 0 indnatts, 0 indnkeyatts, is_unique indisunique, is_primary indisprimary, false indisexclusion, true indimmediate, false indisclustered, true indisvalid, false indcheckxmin, true indisready, true indislive, false indisreplident, NULL::INT[] indkey, NULL::OID[] indcollation, NULL::OID[] indclass, NULL::INT[] indoption, expressions indexprs, NULL indpred FROM duckdb_indexes()"},
25211 {"pg_catalog", "pg_indexes", "SELECT schema_name schemaname, table_name tablename, index_name indexname, NULL \"tablespace\", sql indexdef FROM duckdb_indexes()"},
25212 {"pg_catalog", "pg_namespace", "SELECT oid, schema_name nspname, 0 nspowner, NULL nspacl FROM duckdb_schemas() where database_name=current_database()"},
25213 {"pg_catalog", "pg_proc", "SELECT f.function_oid oid, function_name proname, s.oid pronamespace, NULL proowner, NULL prolang, 0 procost, 0 prorows, varargs provariadic, 0 prosupport, CASE function_type WHEN 'aggregate' THEN 'a' ELSE 'f' END prokind, false prosecdef, false proleakproof, false proisstrict, function_type = 'table' proretset, case (stability) when 'CONSISTENT' then 'i' when 'CONSISTENT_WITHIN_QUERY' then 's' when 'VOLATILE' then 'v' end provolatile, 'u' proparallel, length(parameters) pronargs, 0 pronargdefaults, return_type prorettype, parameter_types proargtypes, NULL proallargtypes, NULL proargmodes, parameters proargnames, NULL proargdefaults, NULL protrftypes, NULL prosrc, NULL probin, macro_definition prosqlbody, NULL proconfig, NULL proacl, function_type = 'aggregate' proisagg, FROM duckdb_functions() f LEFT JOIN duckdb_schemas() s USING (database_name, schema_name)"},
25214 {"pg_catalog", "pg_sequence", "SELECT sequence_oid seqrelid, 0 seqtypid, start_value seqstart, increment_by seqincrement, max_value seqmax, min_value seqmin, 0 seqcache, cycle seqcycle FROM duckdb_sequences()"},
25215 {"pg_catalog", "pg_sequences", "SELECT schema_name schemaname, sequence_name sequencename, 'duckdb' sequenceowner, 0 data_type, start_value, min_value, max_value, increment_by, cycle, 0 cache_size, last_value FROM duckdb_sequences()"},
25216 {"pg_catalog", "pg_settings", "SELECT name, value setting, description short_desc, CASE WHEN input_type = 'VARCHAR' THEN 'string' WHEN input_type = 'BOOLEAN' THEN 'bool' WHEN input_type IN ('BIGINT', 'UBIGINT') THEN 'integer' ELSE input_type END vartype FROM duckdb_settings()"},
25217 {"pg_catalog", "pg_tables", "SELECT schema_name schemaname, table_name tablename, 'duckdb' tableowner, NULL \"tablespace\", index_count > 0 hasindexes, false hasrules, false hastriggers FROM duckdb_tables()"},
25218 {"pg_catalog", "pg_tablespace", "SELECT 0 oid, 'pg_default' spcname, 0 spcowner, NULL spcacl, NULL spcoptions"},
25219 {"pg_catalog", "pg_type", "SELECT CASE WHEN type_oid IS NULL THEN NULL WHEN logical_type = 'ENUM' AND type_name <> 'enum' THEN type_oid ELSE map_to_pg_oid(type_name) END oid, format_pg_type(logical_type, type_name) typname, schema_oid typnamespace, 0 typowner, type_size typlen, false typbyval, CASE WHEN logical_type='ENUM' THEN 'e' else 'b' end typtype, CASE WHEN type_category='NUMERIC' THEN 'N' WHEN type_category='STRING' THEN 'S' WHEN type_category='DATETIME' THEN 'D' WHEN type_category='BOOLEAN' THEN 'B' WHEN type_category='COMPOSITE' THEN 'C' WHEN type_category='USER' THEN 'U' ELSE 'X' END typcategory, false typispreferred, true typisdefined, NULL typdelim, NULL typrelid, NULL typsubscript, NULL typelem, NULL typarray, NULL typinput, NULL typoutput, NULL typreceive, NULL typsend, NULL typmodin, NULL typmodout, NULL typanalyze, 'd' typalign, 'p' typstorage, NULL typnotnull, NULL typbasetype, NULL typtypmod, NULL typndims, NULL typcollation, NULL typdefaultbin, NULL typdefault, NULL typacl FROM duckdb_types() WHERE type_oid IS NOT NULL;"},
25220 {"pg_catalog", "pg_views", "SELECT schema_name schemaname, view_name viewname, 'duckdb' viewowner, sql definition FROM duckdb_views()"},
25221 {"information_schema", "columns", "SELECT database_name table_catalog, schema_name table_schema, table_name, column_name, column_index ordinal_position, column_default, CASE WHEN is_nullable THEN 'YES' ELSE 'NO' END is_nullable, data_type, character_maximum_length, NULL::INT character_octet_length, numeric_precision, numeric_precision_radix, numeric_scale, NULL::INT datetime_precision, NULL::VARCHAR interval_type, NULL::INT interval_precision, NULL::VARCHAR character_set_catalog, NULL::VARCHAR character_set_schema, NULL::VARCHAR character_set_name, NULL::VARCHAR collation_catalog, NULL::VARCHAR collation_schema, NULL::VARCHAR collation_name, NULL::VARCHAR domain_catalog, NULL::VARCHAR domain_schema, NULL::VARCHAR domain_name, NULL::VARCHAR udt_catalog, NULL::VARCHAR udt_schema, NULL::VARCHAR udt_name, NULL::VARCHAR scope_catalog, NULL::VARCHAR scope_schema, NULL::VARCHAR scope_name, NULL::BIGINT maximum_cardinality, NULL::VARCHAR dtd_identifier, NULL::BOOL is_self_referencing, NULL::BOOL is_identity, NULL::VARCHAR identity_generation, NULL::VARCHAR identity_start, NULL::VARCHAR identity_increment, NULL::VARCHAR identity_maximum, NULL::VARCHAR identity_minimum, NULL::BOOL identity_cycle, NULL::VARCHAR is_generated, NULL::VARCHAR generation_expression, NULL::BOOL is_updatable, comment AS COLUMN_COMMENT FROM duckdb_columns;"},
25222 {"information_schema", "schemata", "SELECT database_name catalog_name, schema_name, 'duckdb' schema_owner, NULL::VARCHAR default_character_set_catalog, NULL::VARCHAR default_character_set_schema, NULL::VARCHAR default_character_set_name, sql sql_path FROM duckdb_schemas()"},
25223 {"information_schema", "tables", "SELECT database_name table_catalog, schema_name table_schema, table_name, CASE WHEN temporary THEN 'LOCAL TEMPORARY' ELSE 'BASE TABLE' END table_type, NULL::VARCHAR self_referencing_column_name, NULL::VARCHAR reference_generation, NULL::VARCHAR user_defined_type_catalog, NULL::VARCHAR user_defined_type_schema, NULL::VARCHAR user_defined_type_name, 'YES' is_insertable_into, 'NO' is_typed, CASE WHEN temporary THEN 'PRESERVE' ELSE NULL END commit_action, comment AS TABLE_COMMENT FROM duckdb_tables() UNION ALL SELECT database_name table_catalog, schema_name table_schema, view_name table_name, 'VIEW' table_type, NULL self_referencing_column_name, NULL reference_generation, NULL user_defined_type_catalog, NULL user_defined_type_schema, NULL user_defined_type_name, 'NO' is_insertable_into, 'NO' is_typed, NULL commit_action, comment AS TABLE_COMMENT FROM duckdb_views;"},
25224 {"information_schema", "character_sets", "SELECT NULL::VARCHAR character_set_catalog, NULL::VARCHAR character_set_schema, 'UTF8' character_set_name, 'UCS' character_repertoire, 'UTF8' form_of_use, current_database() default_collate_catalog, 'pg_catalog' default_collate_schema, 'ucs_basic' default_collate_name;"},
25225 {"information_schema", "referential_constraints", "SELECT f.database_name constraint_catalog, f.schema_name constraint_schema, f.constraint_name constraint_name, c.database_name unique_constraint_catalog, c.schema_name unique_constraint_schema, c.constraint_name unique_constraint_name, 'NONE' match_option, 'NO ACTION' update_rule, 'NO ACTION' delete_rule FROM duckdb_constraints() c, duckdb_constraints() f WHERE f.constraint_type = 'FOREIGN KEY' AND (c.constraint_type = 'UNIQUE' OR c.constraint_type = 'PRIMARY KEY') AND f.database_oid = c.database_oid AND f.schema_oid = c.schema_oid AND lower(f.referenced_table) = lower(c.table_name) AND [lower(x) for x in f.referenced_column_names] = [lower(x) for x in c.constraint_column_names]"},
25226 {"information_schema", "key_column_usage", "SELECT database_name constraint_catalog, schema_name constraint_schema, constraint_name, database_name table_catalog, schema_name table_schema, table_name, UNNEST(constraint_column_names) column_name, UNNEST(generate_series(1, len(constraint_column_names))) ordinal_position, CASE constraint_type WHEN 'FOREIGN KEY' THEN UNNEST (generate_series(1, len(constraint_column_names))) ELSE NULL END position_in_unique_constraint FROM duckdb_constraints() WHERE constraint_type = 'FOREIGN KEY' OR constraint_type = 'PRIMARY KEY' OR constraint_type = 'UNIQUE';"},
25227 {"information_schema", "table_constraints", "SELECT database_name constraint_catalog, schema_name constraint_schema, constraint_name, database_name table_catalog, schema_name table_schema, table_name, CASE constraint_type WHEN 'NOT NULL' THEN 'CHECK' ELSE constraint_type END constraint_type, 'NO' is_deferrable, 'NO' initially_deferred, 'YES' enforced, 'YES' nulls_distinct FROM duckdb_constraints() WHERE constraint_type = 'PRIMARY KEY' OR constraint_type = 'FOREIGN KEY' OR constraint_type = 'UNIQUE' OR constraint_type = 'CHECK' OR constraint_type = 'NOT NULL';"},
25228 {"information_schema", "constraint_column_usage", "SELECT database_name AS table_catalog, schema_name AS table_schema, table_name, column_name, database_name AS constraint_catalog, schema_name AS constraint_schema, constraint_name, constraint_type, constraint_text FROM (SELECT dc.*, UNNEST(dc.constraint_column_names) AS column_name FROM duckdb_constraints() AS dc WHERE constraint_type NOT IN ('NOT NULL') );"},
25229 {"information_schema", "constraint_table_usage", "SELECT database_name AS table_catalog, schema_name AS table_schema, table_name, database_name AS constraint_catalog, schema_name AS constraint_schema, constraint_name, constraint_type FROM duckdb_constraints() WHERE constraint_type NOT IN ('NOT NULL');"},
25230 {"information_schema", "check_constraints", "SELECT database_name AS constraint_catalog, schema_name AS constraint_schema, constraint_name, CASE constraint_type WHEN 'NOT NULL' THEN column_name || ' IS NOT NULL' ELSE constraint_text END AS check_clause FROM (SELECT dc.*, UNNEST(dc.constraint_column_names) AS column_name FROM duckdb_constraints() AS dc WHERE constraint_type IN ('CHECK', 'NOT NULL'));"},
25231 {"information_schema", "views", "SELECT database_name AS table_catalog, schema_name AS table_schema, view_name AS table_name, sql AS view_definition, 'NONE' AS check_option, 'NO' AS is_updatable, 'NO' AS is_insertable_into, 'NO' AS is_trigger_updatable, 'NO' AS is_trigger_deletable, 'NO' AS is_trigger_insertable_into FROM duckdb_views();"},
25232 {nullptr, nullptr, nullptr}};

◆ str_nil

constexpr const char duckdb::str_nil[4] = {'\200', '\0', '\0', '\0'}
constexpr

This could be two bytes but then GCC gives a warning when it's copied.

30958{'\200', '\0', '\0', '\0'};

◆ internal_optimizer_types

const DefaultOptimizerType duckdb::internal_optimizer_types[]
staticprivate
69665 {
69666 {"expression_rewriter", OptimizerType::EXPRESSION_REWRITER},
69667 {"filter_pullup", OptimizerType::FILTER_PULLUP},
69668 {"filter_pushdown", OptimizerType::FILTER_PUSHDOWN},
69669 {"empty_result_pullup", OptimizerType::EMPTY_RESULT_PULLUP},
69670 {"cte_filter_pusher", OptimizerType::CTE_FILTER_PUSHER},
69671 {"regex_range", OptimizerType::REGEX_RANGE},
69672 {"in_clause", OptimizerType::IN_CLAUSE},
69673 {"join_order", OptimizerType::JOIN_ORDER},
69674 {"deliminator", OptimizerType::DELIMINATOR},
69675 {"unnest_rewriter", OptimizerType::UNNEST_REWRITER},
69676 {"unused_columns", OptimizerType::UNUSED_COLUMNS},
69677 {"statistics_propagation", OptimizerType::STATISTICS_PROPAGATION},
69678 {"common_subexpressions", OptimizerType::COMMON_SUBEXPRESSIONS},
69679 {"common_aggregate", OptimizerType::COMMON_AGGREGATE},
69680 {"column_lifetime", OptimizerType::COLUMN_LIFETIME},
69681 {"limit_pushdown", OptimizerType::LIMIT_PUSHDOWN},
69682 {"row_group_pruner", OptimizerType::ROW_GROUP_PRUNER},
69683 {"top_n", OptimizerType::TOP_N},
69684 {"top_n_window_elimination", OptimizerType::TOP_N_WINDOW_ELIMINATION},
69685 {"build_side_probe_side", OptimizerType::BUILD_SIDE_PROBE_SIDE},
69686 {"compressed_materialization", OptimizerType::COMPRESSED_MATERIALIZATION},
69687 {"duplicate_groups", OptimizerType::DUPLICATE_GROUPS},
69688 {"reorder_filter", OptimizerType::REORDER_FILTER},
69689 {"sampling_pushdown", OptimizerType::SAMPLING_PUSHDOWN},
69690 {"join_filter_pushdown", OptimizerType::JOIN_FILTER_PUSHDOWN},
69691 {"extension", OptimizerType::EXTENSION},
69692 {"materialized_cte", OptimizerType::MATERIALIZED_CTE},
69693 {"sum_rewriter", OptimizerType::SUM_REWRITER},
69694 {"late_materialization", OptimizerType::LATE_MATERIALIZATION},
69695 {"cte_inlining", OptimizerType::CTE_INLINING},
69696 {"common_subplan", OptimizerType::COMMON_SUBPLAN},
69697 {"join_elimination", OptimizerType::JOIN_ELIMINATION},
69698 {"window_self_join", OptimizerType::WINDOW_SELF_JOIN},
69699 {nullptr, OptimizerType::INVALID}};

◆ EXCEPTION_MAP

constexpr ExceptionEntry duckdb::EXCEPTION_MAP[]
staticconstexpr
70686 {{ExceptionType::INVALID, "Invalid"},
70687 {ExceptionType::OUT_OF_RANGE, "Out of Range"},
70688 {ExceptionType::CONVERSION, "Conversion"},
70689 {ExceptionType::UNKNOWN_TYPE, "Unknown Type"},
70690 {ExceptionType::DECIMAL, "Decimal"},
70691 {ExceptionType::MISMATCH_TYPE, "Mismatch Type"},
70692 {ExceptionType::DIVIDE_BY_ZERO, "Divide by Zero"},
70693 {ExceptionType::OBJECT_SIZE, "Object Size"},
70694 {ExceptionType::INVALID_TYPE, "Invalid type"},
70695 {ExceptionType::SERIALIZATION, "Serialization"},
70696 {ExceptionType::TRANSACTION, "TransactionContext"},
70697 {ExceptionType::NOT_IMPLEMENTED, "Not implemented"},
70698 {ExceptionType::EXPRESSION, "Expression"},
70699 {ExceptionType::CATALOG, "Catalog"},
70700 {ExceptionType::PARSER, "Parser"},
70701 {ExceptionType::BINDER, "Binder"},
70702 {ExceptionType::PLANNER, "Planner"},
70703 {ExceptionType::SCHEDULER, "Scheduler"},
70704 {ExceptionType::EXECUTOR, "Executor"},
70705 {ExceptionType::CONSTRAINT, "Constraint"},
70706 {ExceptionType::INDEX, "Index"},
70707 {ExceptionType::STAT, "Stat"},
70708 {ExceptionType::CONNECTION, "Connection"},
70709 {ExceptionType::SYNTAX, "Syntax"},
70710 {ExceptionType::SETTINGS, "Settings"},
70711 {ExceptionType::OPTIMIZER, "Optimizer"},
70712 {ExceptionType::NULL_POINTER, "NullPointer"},
70713 {ExceptionType::IO, "IO"},
70714 {ExceptionType::INTERRUPT, "INTERRUPT"},
70715 {ExceptionType::FATAL, "FATAL"},
70716 {ExceptionType::INTERNAL, "INTERNAL"},
70717 {ExceptionType::INVALID_INPUT, "Invalid Input"},
70718 {ExceptionType::OUT_OF_MEMORY, "Out of Memory"},
70719 {ExceptionType::PERMISSION, "Permission"},
70720 {ExceptionType::PARAMETER_NOT_RESOLVED, "Parameter Not Resolved"},
70721 {ExceptionType::PARAMETER_NOT_ALLOWED, "Parameter Not Allowed"},
70722 {ExceptionType::DEPENDENCY, "Dependency"},
70723 {ExceptionType::MISSING_EXTENSION, "Missing Extension"},
70724 {ExceptionType::HTTP, "HTTP"},
70725 {ExceptionType::AUTOLOAD, "Extension Autoloading"},
70726 {ExceptionType::SEQUENCE, "Sequence"},
70727 {ExceptionType::INVALID_CONFIGURATION, "Invalid Configuration"}};

◆ GZIP_FLAG_UNSUPPORTED

constexpr const unsigned char duckdb::GZIP_FLAG_UNSUPPORTED
staticconstexpr
Initial value:
=
GZIP_FLAG_ASCII | GZIP_FLAG_MULTIPART | GZIP_FLAG_COMMENT | GZIP_FLAG_ENCRYPT