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::Deserializer Class Referenceabstract
Inheritance diagram for duckdb::Deserializer:
Collaboration diagram for duckdb::Deserializer:

Classes

class  List
 

Public Member Functions

virtual bool CanDeserializeProperty (const field_id_t field_id, const char *tag)=0
 
template<typename T >
void ReadProperty (const field_id_t field_id, const char *tag, T &ret)
 
template<typename T >
ReadProperty (const field_id_t field_id, const char *tag)
 
template<typename T >
ReadPropertyWithDefault (const field_id_t field_id, const char *tag)
 
template<typename T >
ReadPropertyWithExplicitDefault (const field_id_t field_id, const char *tag, T default_value)
 
template<typename T >
void ReadPropertyWithDefault (const field_id_t field_id, const char *tag, T &ret)
 
template<typename T >
void ReadPropertyWithExplicitDefault (const field_id_t field_id, const char *tag, T &ret, T default_value)
 
template<typename T >
void ReadPropertyWithExplicitDefault (const field_id_t field_id, const char *tag, CSVOption< T > &ret, T default_value)
 
void ReadProperty (const field_id_t field_id, const char *tag, data_ptr_t ret, idx_t count)
 
template<typename T >
void ReadDeletedProperty (const field_id_t field_id, const char *tag)
 
template<class T >
void Set (T entry)
 Set a serialization property.
 
template<class T >
Get ()
 Retrieve the last set serialization property of this type.
 
template<class T >
optional_ptr< T > TryGet ()
 
template<class T >
void Unset ()
 Unset a serialization property.
 
SerializationDataGetSerializationData ()
 
void SetSerializationData (const SerializationData &other)
 
template<class FUNC >
void ReadListInternal (FUNC func)
 
template<class FUNC >
void ReadList (const field_id_t field_id, const char *tag, FUNC func)
 
template<class FUNC >
void ReadOptionalList (const field_id_t field_id, const char *tag, FUNC func)
 
template<class FUNC >
void ReadObject (const field_id_t field_id, const char *tag, FUNC func)
 

Protected Member Functions

virtual void OnPropertyBegin (const field_id_t field_id, const char *tag)=0
 
virtual void OnPropertyEnd ()=0
 
virtual bool OnOptionalPropertyBegin (const field_id_t field_id, const char *tag)=0
 
virtual void OnOptionalPropertyEnd (bool present)=0
 
virtual void OnObjectBegin ()=0
 
virtual void OnObjectEnd ()=0
 
virtual idx_t OnListBegin ()=0
 
virtual void OnListEnd ()=0
 
virtual bool OnNullableBegin ()=0
 
virtual void OnNullableEnd ()=0
 
virtual bool ReadBool ()=0
 
virtual char ReadChar ()
 
virtual int8_t ReadSignedInt8 ()=0
 
virtual uint8_t ReadUnsignedInt8 ()=0
 
virtual int16_t ReadSignedInt16 ()=0
 
virtual uint16_t ReadUnsignedInt16 ()=0
 
virtual int32_t ReadSignedInt32 ()=0
 
virtual uint32_t ReadUnsignedInt32 ()=0
 
virtual int64_t ReadSignedInt64 ()=0
 
virtual uint64_t ReadUnsignedInt64 ()=0
 
virtual hugeint_t ReadHugeInt ()=0
 
virtual uhugeint_t ReadUhugeInt ()=0
 
virtual float ReadFloat ()=0
 
virtual double ReadDouble ()=0
 
virtual string ReadString ()=0
 
virtual void ReadDataPtr (data_ptr_t &ptr, idx_t count)=0
 

Protected Attributes

bool deserialize_enum_from_string = false
 
SerializationData data
 

Private Member Functions

template<typename T = void>
std::enable_if< has_deserialize< T >::value, T >::type Read ()
 
template<class T , typename ELEMENT_TYPE = typename is_optionally_owned_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_optionally_owned_ptr< T >::value, T >::type Read ()
 
template<class T , typename ELEMENT_TYPE = typename is_unique_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_unique_ptr< T >::value &&has_deserialize< ELEMENT_TYPE >::value, T >::type Read ()
 
template<class T , typename ELEMENT_TYPE = typename is_unique_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_unique_ptr< T >::value &&!has_deserialize< ELEMENT_TYPE >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_shared_ptr< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_vector< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_unsafe_vector< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_unordered_map< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_map< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_insertion_preserving_map< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_unordered_set< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_set< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_pair< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< is_queue< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, bool >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, char >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, int8_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, uint8_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, int16_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, uint16_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, int32_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, uint32_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, int64_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, uint64_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, float >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, double >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, string >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_enum< T >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, hugeint_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, uhugeint_t >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, LogicalIndex >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, PhysicalIndex >::value, T >::type Read ()
 
template<typename T = void>
std::enable_if< std::is_same< T, optional_idx >::value, T >::type Read ()
 

Constructor & Destructor Documentation

◆ ~Deserializer()

virtual duckdb::Deserializer::~Deserializer ( )
inlinevirtual
51907 {
51908 }

Member Function Documentation

◆ ReadProperty() [1/3]

template<typename T >
void duckdb::Deserializer::ReadProperty ( const field_id_t  field_id,
const char tag,
T &  ret 
)
inline
51937 {
51938 OnPropertyBegin(field_id, tag);
51939 ret = Read<T>();
51940 OnPropertyEnd();
51941 }

◆ ReadProperty() [2/3]

template<typename T >
T duckdb::Deserializer::ReadProperty ( const field_id_t  field_id,
const char tag 
)
inline
51945 {
51946 OnPropertyBegin(field_id, tag);
51947 auto ret = Read<T>();
51948 OnPropertyEnd();
51949 return ret;
51950 }

◆ ReadPropertyWithDefault() [1/2]

template<typename T >
T duckdb::Deserializer::ReadPropertyWithDefault ( const field_id_t  field_id,
const char tag 
)
inline
51954 {
51955 if (!OnOptionalPropertyBegin(field_id, tag)) {
51956 OnOptionalPropertyEnd(false);
51957 return std::forward<T>(SerializationDefaultValue::GetDefault<T>());
51958 }
51959 auto ret = Read<T>();
51960 OnOptionalPropertyEnd(true);
51961 return ret;
51962 }

◆ ReadPropertyWithExplicitDefault() [1/3]

template<typename T >
T duckdb::Deserializer::ReadPropertyWithExplicitDefault ( const field_id_t  field_id,
const char tag,
default_value 
)
inline
51965 {
51966 if (!OnOptionalPropertyBegin(field_id, tag)) {
51967 OnOptionalPropertyEnd(false);
51968 return std::forward<T>(default_value);
51969 }
51970 auto ret = Read<T>();
51971 OnOptionalPropertyEnd(true);
51972 return ret;
51973 }

◆ ReadPropertyWithDefault() [2/2]

template<typename T >
void duckdb::Deserializer::ReadPropertyWithDefault ( const field_id_t  field_id,
const char tag,
T &  ret 
)
inline
51977 {
51978 if (!OnOptionalPropertyBegin(field_id, tag)) {
51979 ret = std::forward<T>(SerializationDefaultValue::GetDefault<T>());
51980 OnOptionalPropertyEnd(false);
51981 return;
51982 }
51983 ret = Read<T>();
51984 OnOptionalPropertyEnd(true);
51985 }

◆ ReadPropertyWithExplicitDefault() [2/3]

template<typename T >
void duckdb::Deserializer::ReadPropertyWithExplicitDefault ( const field_id_t  field_id,
const char tag,
T &  ret,
default_value 
)
inline
51988 {
51989 if (!OnOptionalPropertyBegin(field_id, tag)) {
51990 ret = std::forward<T>(default_value);
51991 OnOptionalPropertyEnd(false);
51992 return;
51993 }
51994 ret = Read<T>();
51995 OnOptionalPropertyEnd(true);
51996 }

◆ ReadPropertyWithExplicitDefault() [3/3]

template<typename T >
void duckdb::Deserializer::ReadPropertyWithExplicitDefault ( const field_id_t  field_id,
const char tag,
CSVOption< T > &  ret,
default_value 
)
inline
52000 {
52001 if (!OnOptionalPropertyBegin(field_id, tag)) {
52002 ret = std::forward<T>(default_value);
52003 OnOptionalPropertyEnd(false);
52004 return;
52005 }
52006 ret = Read<T>();
52007 OnOptionalPropertyEnd(true);
52008 }

◆ ReadProperty() [3/3]

void duckdb::Deserializer::ReadProperty ( const field_id_t  field_id,
const char tag,
data_ptr_t  ret,
idx_t  count 
)
inline
52012 {
52013 OnPropertyBegin(field_id, tag);
52014 ReadDataPtr(ret, count);
52015 OnPropertyEnd();
52016 }

◆ ReadDeletedProperty()

template<typename T >
void duckdb::Deserializer::ReadDeletedProperty ( const field_id_t  field_id,
const char tag 
)
inline
52020 {
52021 // Try to read the property. If not present, great!
52022 if (!OnOptionalPropertyBegin(field_id, tag)) {
52023 OnOptionalPropertyEnd(false);
52024 return;
52025 }
52026 // Otherwise read and discard the value
52027 (void)Read<T>();
52028 OnOptionalPropertyEnd(true);
52029 }

◆ Set()

template<class T >
void duckdb::Deserializer::Set ( entry)
inline

Set a serialization property.

52033 {
52034 return data.Set<T>(entry);
52035 }

◆ Get()

template<class T >
T duckdb::Deserializer::Get ( )
inline

Retrieve the last set serialization property of this type.

52039 {
52040 return data.Get<T>();
52041 }

◆ TryGet()

template<class T >
optional_ptr< T > duckdb::Deserializer::TryGet ( )
inline
52044 {
52045 return data.TryGet<T>();
52046 }

◆ Unset()

template<class T >
void duckdb::Deserializer::Unset ( )
inline

Unset a serialization property.

52050 {
52051 return data.Unset<T>();
52052 }

◆ GetSerializationData()

SerializationData & duckdb::Deserializer::GetSerializationData ( )
inline
52054 {
52055 return data;
52056 }

◆ SetSerializationData()

void duckdb::Deserializer::SetSerializationData ( const SerializationData other)
inline
52058 {
52059 data = other;
52060 }

◆ ReadListInternal()

template<class FUNC >
void duckdb::Deserializer::ReadListInternal ( FUNC  func)
inline
52063 {
52064 auto size = OnListBegin();
52065 List list {*this};
52066 for (idx_t i = 0; i < size; i++) {
52067 func(list, i);
52068 }
52069 OnListEnd();
52070 }
GOpaque< Size > size(const GMat &src)

◆ ReadList()

template<class FUNC >
void duckdb::Deserializer::ReadList ( const field_id_t  field_id,
const char tag,
FUNC  func 
)
inline
52073 {
52074 OnPropertyBegin(field_id, tag);
52075 ReadListInternal(func);
52076 OnPropertyEnd();
52077 }

◆ ReadOptionalList()

template<class FUNC >
void duckdb::Deserializer::ReadOptionalList ( const field_id_t  field_id,
const char tag,
FUNC  func 
)
inline
52080 {
52081 if (!OnOptionalPropertyBegin(field_id, tag)) {
52082 OnOptionalPropertyEnd(false);
52083 return;
52084 }
52085 ReadListInternal(func);
52086 OnOptionalPropertyEnd(true);
52087 }

◆ ReadObject()

template<class FUNC >
void duckdb::Deserializer::ReadObject ( const field_id_t  field_id,
const char tag,
FUNC  func 
)
inline
52090 {
52091 OnPropertyBegin(field_id, tag);
52092 OnObjectBegin();
52093 func(*this);
52094 OnObjectEnd();
52095 OnPropertyEnd();
52096 }

◆ Read() [1/33]

template<typename T = void>
std::enable_if< has_deserialize< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52101 {
52102 OnObjectBegin();
52103 auto val = T::Deserialize(*this);
52104 OnObjectEnd();
52105 return val;
52106 }

◆ Read() [2/33]

template<class T , typename ELEMENT_TYPE = typename is_optionally_owned_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_optionally_owned_ptr< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52110 {
52111 return optionally_owned_ptr<ELEMENT_TYPE>(Read<unique_ptr<ELEMENT_TYPE>>());
52112 }

◆ Read() [3/33]

template<class T , typename ELEMENT_TYPE = typename is_unique_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_unique_ptr< T >::value &&has_deserialize< ELEMENT_TYPE >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52116 {
52117 unique_ptr<ELEMENT_TYPE> ptr = nullptr;
52118 auto is_present = OnNullableBegin();
52119 if (is_present) {
52120 OnObjectBegin();
52121 ptr = ELEMENT_TYPE::Deserialize(*this);
52122 OnObjectEnd();
52123 }
52124 OnNullableEnd();
52125 return ptr;
52126 }

◆ Read() [4/33]

template<class T , typename ELEMENT_TYPE = typename is_unique_ptr<T>::ELEMENT_TYPE>
std::enable_if< is_unique_ptr< T >::value &&!has_deserialize< ELEMENT_TYPE >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52130 {
52131 unique_ptr<ELEMENT_TYPE> ptr = nullptr;
52132 auto is_present = OnNullableBegin();
52133 if (is_present) {
52134 OnObjectBegin();
52135 ptr = make_uniq<ELEMENT_TYPE>(Read<ELEMENT_TYPE>());
52136 OnObjectEnd();
52137 }
52138 OnNullableEnd();
52139 return ptr;
52140 }

◆ Read() [5/33]

template<typename T = void>
std::enable_if< is_shared_ptr< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52144 {
52145 using ELEMENT_TYPE = typename is_shared_ptr<T>::ELEMENT_TYPE;
52146 shared_ptr<ELEMENT_TYPE> ptr = nullptr;
52147 auto is_present = OnNullableBegin();
52148 if (is_present) {
52149 OnObjectBegin();
52150 ptr = ELEMENT_TYPE::Deserialize(*this);
52151 OnObjectEnd();
52152 }
52153 OnNullableEnd();
52154 return ptr;
52155 }

◆ Read() [6/33]

template<typename T = void>
std::enable_if< is_vector< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52159 {
52160 using ELEMENT_TYPE = typename is_vector<T>::ELEMENT_TYPE;
52161 T vec;
52162 auto size = OnListBegin();
52163 for (idx_t i = 0; i < size; i++) {
52164 vec.push_back(Read<ELEMENT_TYPE>());
52165 }
52166 OnListEnd();
52167 return vec;
52168 }

◆ Read() [7/33]

template<typename T = void>
std::enable_if< is_unsafe_vector< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52171 {
52172 using ELEMENT_TYPE = typename is_unsafe_vector<T>::ELEMENT_TYPE;
52173 T vec;
52174 auto size = OnListBegin();
52175 for (idx_t i = 0; i < size; i++) {
52176 vec.push_back(Read<ELEMENT_TYPE>());
52177 }
52178 OnListEnd();
52179
52180 return vec;
52181 }

◆ Read() [8/33]

template<typename T = void>
std::enable_if< is_unordered_map< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52185 {
52186 using KEY_TYPE = typename is_unordered_map<T>::KEY_TYPE;
52187 using VALUE_TYPE = typename is_unordered_map<T>::VALUE_TYPE;
52188
52189 T map;
52190 auto size = OnListBegin();
52191 for (idx_t i = 0; i < size; i++) {
52192 OnObjectBegin();
52193 auto key = ReadProperty<KEY_TYPE>(0, "key");
52194 auto value = ReadProperty<VALUE_TYPE>(1, "value");
52195 OnObjectEnd();
52196 map[std::move(key)] = std::move(value);
52197 }
52198 OnListEnd();
52199 return map;
52200 }

◆ Read() [9/33]

template<typename T = void>
std::enable_if< is_map< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52203 {
52204 using KEY_TYPE = typename is_map<T>::KEY_TYPE;
52205 using VALUE_TYPE = typename is_map<T>::VALUE_TYPE;
52206
52207 T map;
52208 auto size = OnListBegin();
52209 for (idx_t i = 0; i < size; i++) {
52210 OnObjectBegin();
52211 auto key = ReadProperty<KEY_TYPE>(0, "key");
52212 auto value = ReadProperty<VALUE_TYPE>(1, "value");
52213 OnObjectEnd();
52214 map[std::move(key)] = std::move(value);
52215 }
52216 OnListEnd();
52217 return map;
52218 }

◆ Read() [10/33]

template<typename T = void>
std::enable_if< is_insertion_preserving_map< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52221 {
52222 using VALUE_TYPE = typename is_insertion_preserving_map<T>::VALUE_TYPE;
52223
52224 T map;
52225 auto size = OnListBegin();
52226 for (idx_t i = 0; i < size; i++) {
52227 OnObjectBegin();
52228 auto key = ReadProperty<string>(0, "key");
52229 auto value = ReadProperty<VALUE_TYPE>(1, "value");
52230 OnObjectEnd();
52231 map[key] = std::move(value);
52232 }
52233 OnListEnd();
52234 return map;
52235 }

◆ Read() [11/33]

template<typename T = void>
std::enable_if< is_unordered_set< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52239 {
52240 using ELEMENT_TYPE = typename is_unordered_set<T>::ELEMENT_TYPE;
52241 auto size = OnListBegin();
52242 T set;
52243 for (idx_t i = 0; i < size; i++) {
52244 set.insert(Read<ELEMENT_TYPE>());
52245 }
52246 OnListEnd();
52247 return set;
52248 }

◆ Read() [12/33]

template<typename T = void>
std::enable_if< is_set< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52252 {
52253 using ELEMENT_TYPE = typename is_set<T>::ELEMENT_TYPE;
52254 auto size = OnListBegin();
52255 T set;
52256 for (idx_t i = 0; i < size; i++) {
52257 set.insert(Read<ELEMENT_TYPE>());
52258 }
52259 OnListEnd();
52260 return set;
52261 }

◆ Read() [13/33]

template<typename T = void>
std::enable_if< is_pair< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52265 {
52266 using FIRST_TYPE = typename is_pair<T>::FIRST_TYPE;
52267 using SECOND_TYPE = typename is_pair<T>::SECOND_TYPE;
52268 OnObjectBegin();
52269 auto first = ReadProperty<FIRST_TYPE>(0, "first");
52270 auto second = ReadProperty<SECOND_TYPE>(1, "second");
52271 OnObjectEnd();
52272 return std::make_pair(first, second);
52273 }

◆ Read() [14/33]

template<typename T = void>
std::enable_if< is_queue< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52277 {
52278 using ELEMENT_TYPE = typename is_queue<T>::ELEMENT_TYPE;
52279 T queue;
52280 auto size = OnListBegin();
52281 for (idx_t i = 0; i < size; i++) {
52282 queue.emplace(Read<ELEMENT_TYPE>());
52283 }
52284 OnListEnd();
52285 return queue;
52286 }

◆ Read() [15/33]

template<typename T = void>
std::enable_if< std::is_same< T, bool >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52291 {
52292 return ReadBool();
52293 }

◆ Read() [16/33]

template<typename T = void>
std::enable_if< std::is_same< T, char >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52297 {
52298 return ReadChar();
52299 }

◆ Read() [17/33]

template<typename T = void>
std::enable_if< std::is_same< T, int8_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52303 {
52304 return ReadSignedInt8();
52305 }

◆ Read() [18/33]

template<typename T = void>
std::enable_if< std::is_same< T, uint8_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52309 {
52310 return ReadUnsignedInt8();
52311 }

◆ Read() [19/33]

template<typename T = void>
std::enable_if< std::is_same< T, int16_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52315 {
52316 return ReadSignedInt16();
52317 }

◆ Read() [20/33]

template<typename T = void>
std::enable_if< std::is_same< T, uint16_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52321 {
52322 return ReadUnsignedInt16();
52323 }

◆ Read() [21/33]

template<typename T = void>
std::enable_if< std::is_same< T, int32_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52327 {
52328 return ReadSignedInt32();
52329 }

◆ Read() [22/33]

template<typename T = void>
std::enable_if< std::is_same< T, uint32_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52333 {
52334 return ReadUnsignedInt32();
52335 }

◆ Read() [23/33]

template<typename T = void>
std::enable_if< std::is_same< T, int64_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52339 {
52340 return ReadSignedInt64();
52341 }

◆ Read() [24/33]

template<typename T = void>
std::enable_if< std::is_same< T, uint64_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52345 {
52346 return ReadUnsignedInt64();
52347 }

◆ Read() [25/33]

template<typename T = void>
std::enable_if< std::is_same< T, float >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52351 {
52352 return ReadFloat();
52353 }

◆ Read() [26/33]

template<typename T = void>
std::enable_if< std::is_same< T, double >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52357 {
52358 return ReadDouble();
52359 }

◆ Read() [27/33]

template<typename T = void>
std::enable_if< std::is_same< T, string >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52363 {
52364 return ReadString();
52365 }

◆ Read() [28/33]

template<typename T = void>
std::enable_if< std::is_enum< T >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52369 {
52370 if (deserialize_enum_from_string) {
52371 auto str = ReadString();
52372 return EnumUtil::FromString<T>(str.c_str());
52373 } else {
52374 return (T)Read<typename std::underlying_type<T>::type>();
52375 }
52376 }

◆ Read() [29/33]

template<typename T = void>
std::enable_if< std::is_same< T, hugeint_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52380 {
52381 return ReadHugeInt();
52382 }

◆ Read() [30/33]

template<typename T = void>
std::enable_if< std::is_same< T, uhugeint_t >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52386 {
52387 return ReadUhugeInt();
52388 }

◆ Read() [31/33]

template<typename T = void>
std::enable_if< std::is_same< T, LogicalIndex >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52392 {
52393 return LogicalIndex(ReadUnsignedInt64());
52394 }

◆ Read() [32/33]

template<typename T = void>
std::enable_if< std::is_same< T, PhysicalIndex >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52398 {
52399 return PhysicalIndex(ReadUnsignedInt64());
52400 }

◆ Read() [33/33]

template<typename T = void>
std::enable_if< std::is_same< T, optional_idx >::value, T >::type duckdb::Deserializer::Read ( )
inlineprivate
52404 {
52405 auto idx = ReadUnsignedInt64();
52406 return idx == DConstants::INVALID_INDEX ? optional_idx() : optional_idx(idx);
52407 }
static constexpr const idx_t INVALID_INDEX
The value used to signify an invalid index entry.
Definition duckdb.hpp:1117

◆ ReadChar()

virtual char duckdb::Deserializer::ReadChar ( )
inlineprotectedvirtual
52425 {
52426 throw NotImplementedException("ReadChar not implemented");
52427 }

The documentation for this class was generated from the following file: