Zserio C++17 runtime library  0.5.0
Built for Zserio 2.17.0
zserio Namespace Reference

Namespaces

 builtin
 
 pmr
 
 ppmr
 

Classes

class  AllocatorHolder
 
class  AllocatorHolder< ALLOC, true >
 
class  BasicAny
 
class  ArrayLengthException
 
struct  ArrayTraits
 
struct  ArrayTraits< detail::BoolWrapper >
 
struct  ArrayTraits< detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED > >
 
struct  ArrayTraits< detail::VarIntWrapper< VALUE_TYPE, VAR_TYPE > >
 
struct  ArrayTraits< detail::FloatWrapper< VALUE_TYPE, FLOAT_TYPE > >
 
struct  ArrayTraits< BasicBytes< ALLOC > >
 
struct  ArrayTraits< BasicBitBuffer< ALLOC > >
 
struct  ArrayTraits< BasicString< ALLOC > >
 
struct  ArrayTraits< T, std::enable_if_t< std::is_enum_v< T > > >
 
struct  ArrayTraits< T, std::enable_if_t< zserio::is_bitmask_v< T > > >
 
class  ArrayView
 
struct  BitsTag
 
class  BasicBitBuffer
 
struct  view_type< BasicBitBuffer< ALLOC > >
 
class  BitStreamReader
 
class  BitStreamWriter
 
struct  view_type< BasicBytes< ALLOC > >
 
class  ChoiceCaseException
 
class  ConstraintException
 
class  CppRuntimeException
 
class  DataView
 
struct  EnumTraits
 
class  Extended
 
class  ExtendedFieldException
 
class  IBasicTypeInfo
 
class  IIntrospectableData
 
class  IBasicIntrospectableView
 
class  IPubsub
 
class  IBasicReflectableData
 
class  IBasicServiceData
 
class  BasicIntrospectableServiceData
 
class  BasicObjectServiceData
 
class  BasicRawServiceDataHolder
 
class  BasicRawServiceDataView
 
class  IBasicService
 
class  IBasicServiceClient
 
class  ISqliteDatabase
 
struct  ItemsAccessor
 
struct  ItemsAccessor< T, std::enable_if_t< std::is_enum_v< T > > >
 
struct  ItemsAccessor< T, std::enable_if_t< zserio::is_bitmask_v< T > > >
 
struct  BasicFieldInfo
 
struct  BasicParameterInfo
 
struct  BasicFunctionInfo
 
struct  BasicCaseInfo
 
struct  BasicColumnInfo
 
struct  BasicTableInfo
 
struct  BasicTemplateArgumentInfo
 
struct  BasicMessageInfo
 
struct  BasicMethodInfo
 
struct  ItemInfo
 
class  IValidationObserver
 
class  IBasicWalkFilter
 
class  IBasicWalkObserver
 
class  BasicJsonDecoder
 
class  JsonEncoder
 
class  BasicJsonParser
 
class  BasicJsonReader
 
class  JsonParserException
 
class  BasicJsonTokenizer
 
class  BasicJsonWriter
 
class  MissedOptionalException
 
class  BasicOptional
 
class  BadOptionalAccess
 
class  OutOfRangeException
 
class  PubsubException
 
class  ReflectableUtil
 
class  ServiceException
 
class  Span
 
class  SqliteConnection
 
class  SqliteErrorCode
 
class  SqliteException
 
struct  SqliteFinalizer
 
struct  view_type< BasicString< ALLOC > >
 
class  View
 
struct  is_allocator
 
struct  is_first_allocator
 
struct  is_first_allocator< T, ARGS... >
 
struct  has_allocator
 
struct  has_allocator< T, std::void_t< typename T::allocator_type > >
 
struct  is_bitmask
 
struct  is_bitmask< T, std::void_t< decltype(std::declval< T >().getValue()), typename T::ZserioType > >
 
struct  is_span
 
struct  is_span< Span< T, Extent > >
 
struct  is_numeric_wrapper
 
struct  is_numeric_wrapper< T, std::enable_if_t< std::is_base_of_v< detail::NumericTypeWrapper< typename T::ValueType >, T > > >
 
struct  is_dyn_int_wrapper
 
struct  is_dyn_int_wrapper< T, std::enable_if_t< std::is_base_of_v< detail::DynIntWrapper< typename T::ValueType >, T > > >
 
struct  is_complete
 
struct  is_complete< T, std::void_t< decltype(sizeof(T))> >
 
struct  view_type
 
struct  view_type< T, std::enable_if_t< is_complete_v< View< T > > > >
 
struct  offset_field_reference
 
struct  offset_field_reference< T, std::enable_if_t< detail::needs_offset_reference_v< T > > >
 
struct  TypeInfoUtil
 
struct  NumericLimits
 
struct  NumericLimits< detail::BoolWrapper >
 
struct  NumericLimits< detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED > >
 
struct  NumericLimits< detail::VarIntWrapper< VALUE_TYPE, VAR_TYPE > >
 
struct  NumericLimits< detail::DynIntWrapper< VALUE_TYPE > >
 
struct  NumericLimits< detail::FloatWrapper< float, detail::FloatType::FLOAT16 > >
 
struct  NumericLimits< detail::FloatWrapper< float, detail::FloatType::FLOAT32 > >
 
struct  NumericLimits< detail::FloatWrapper< double, detail::FloatType::FLOAT64 > >
 
class  UnexpectedOptionalException
 
class  UnionCaseException
 
class  ValidationException
 
struct  ValidationSqliteUtil
 
class  BadVariantAccess
 
struct  in_place_index_t
 
class  BasicVariant
 
class  View< detail::DynIntWrapper< VALUE_TYPE > >
 
class  BasicDefaultWalkFilter
 
class  BasicWalker
 
class  BasicDefaultWalkObserver
 
class  BasicDepthWalkFilter
 
class  BasicRegexWalkFilter
 
class  BasicArrayLengthWalkFilter
 
class  BasicAndWalkFilter
 
class  BasicZserioTreeCreator
 

Typedefs

using Any = BasicAny<>
 
using BitBuffer = BasicBitBuffer<>
 
template<typename ALLOC >
using BasicBitBufferView = std::reference_wrapper< const BasicBitBuffer< ALLOC > >
 
using BitBufferView = std::reference_wrapper< const BitBuffer >
 
using BitSize = unsigned int
 
template<typename ALLOC = std::allocator<uint8_t>>
using BasicBytes = std::vector< uint8_t, ALLOC >
 
using Bytes = BasicBytes<>
 
using BytesView = Span< const uint8_t >
 
template<typename T >
using generic_accessor_t = typename detail::generic_accessor< T >::type
 
template<typename ALLOC = std::allocator<uint8_t>>
using IBasicIntrospectableViewConstPtr = typename IBasicIntrospectableView< ALLOC >::ConstPtr
 
template<typename ALLOC = std::allocator<uint8_t>>
using IBasicServiceDataPtr = std::shared_ptr< IBasicServiceData< ALLOC > >
 
using JsonParser = BasicJsonParser<>
 
using JsonReader = BasicJsonReader<>
 
template<typename T >
using Optional = BasicOptional< std::allocator< uint8_t >, T >
 
template<typename ALLOC , typename T >
using RebindAlloc = typename std::allocator_traits< ALLOC >::template rebind_alloc< T >
 
template<typename ALLOC >
using BasicString = std::basic_string< char, std::char_traits< char >, ALLOC >
 
using String = BasicString< std::allocator< char > >
 
template<typename T , typename ALLOC = std::allocator<T>>
using UniquePtr = std::unique_ptr< T, detail::UniquePtrDeleter< ALLOC > >
 
template<typename INDEX , typename... T>
using Variant = BasicVariant< std::allocator< uint8_t >, INDEX, T... >
 
template<typename T , typename ALLOC = std::allocator<T>>
using Vector = std::vector< T, ALLOC >
 
using ZserioTreeCreator = BasicZserioTreeCreator< std::allocator< uint8_t > >
 
using IIntrospectableView = IBasicIntrospectableView<>
 
using IIntrospectableViewConstPtr = IBasicIntrospectableViewConstPtr<>
 
template<typename ALLOC = std::allocator<uint8_t>>
using IBasicReflectableDataPtr = typename IBasicReflectableData< ALLOC >::Ptr
 
template<typename ALLOC = std::allocator<uint8_t>>
using IBasicReflectableDataConstPtr = typename IBasicReflectableData< ALLOC >::ConstPtr
 
using IReflectableData = IBasicReflectableData<>
 
using IReflectableDataPtr = IBasicReflectableDataPtr<>
 
using IReflectableDataConstPtr = IBasicReflectableDataConstPtr<>
 
using IServiceData = IBasicServiceData<>
 
using IServiceDataPtr = IBasicServiceDataPtr<>
 
using IService = IBasicService<>
 
using IServiceClient = IBasicServiceClient<>
 
template<typename ZSERIO_OBJECT >
using IntrospectableServiceData = BasicIntrospectableServiceData< ZSERIO_OBJECT >
 
using ObjectServiceData = BasicObjectServiceData<>
 
using RawServiceDataHolder = BasicRawServiceDataHolder<>
 
using RawServiceDataView = BasicRawServiceDataView<>
 
using ITypeInfo = IBasicTypeInfo<>
 
using FieldInfo = BasicFieldInfo<>
 
using ParameterInfo = BasicParameterInfo<>
 
using FunctionInfo = BasicFunctionInfo<>
 
using CaseInfo = BasicCaseInfo<>
 
using ColumnInfo = BasicColumnInfo<>
 
using TableInfo = BasicTableInfo<>
 
using TemplateArgumentInfo = BasicTemplateArgumentInfo<>
 
using MessageInfo = BasicMessageInfo<>
 
using MethodInfo = BasicMethodInfo<>
 
using IWalkFilter = IBasicWalkFilter<>
 
using IWalkObserver = IBasicWalkObserver<>
 
using JsonWriter = BasicJsonWriter<>
 
template<typename T , typename V = void>
using view_type_t = typename view_type< T, V >::type
 
template<typename T , typename V = void>
using offset_field_reference_t = typename offset_field_reference< T, V >::type
 
using Bool = detail::BoolWrapper
 
using Int1 = detail::FixedIntWrapper< 1, true >
 
using Int2 = detail::FixedIntWrapper< 2, true >
 
using Int3 = detail::FixedIntWrapper< 3, true >
 
using Int4 = detail::FixedIntWrapper< 4, true >
 
using Int5 = detail::FixedIntWrapper< 5, true >
 
using Int6 = detail::FixedIntWrapper< 6, true >
 
using Int7 = detail::FixedIntWrapper< 7, true >
 
using Int8 = detail::FixedIntWrapper< 8, true >
 
using Int9 = detail::FixedIntWrapper< 9, true >
 
using Int10 = detail::FixedIntWrapper< 10, true >
 
using Int11 = detail::FixedIntWrapper< 11, true >
 
using Int12 = detail::FixedIntWrapper< 12, true >
 
using Int13 = detail::FixedIntWrapper< 13, true >
 
using Int14 = detail::FixedIntWrapper< 14, true >
 
using Int15 = detail::FixedIntWrapper< 15, true >
 
using Int16 = detail::FixedIntWrapper< 16, true >
 
using Int17 = detail::FixedIntWrapper< 17, true >
 
using Int18 = detail::FixedIntWrapper< 18, true >
 
using Int19 = detail::FixedIntWrapper< 19, true >
 
using Int20 = detail::FixedIntWrapper< 20, true >
 
using Int21 = detail::FixedIntWrapper< 21, true >
 
using Int22 = detail::FixedIntWrapper< 22, true >
 
using Int23 = detail::FixedIntWrapper< 23, true >
 
using Int24 = detail::FixedIntWrapper< 24, true >
 
using Int25 = detail::FixedIntWrapper< 25, true >
 
using Int26 = detail::FixedIntWrapper< 26, true >
 
using Int27 = detail::FixedIntWrapper< 27, true >
 
using Int28 = detail::FixedIntWrapper< 28, true >
 
using Int29 = detail::FixedIntWrapper< 29, true >
 
using Int30 = detail::FixedIntWrapper< 30, true >
 
using Int31 = detail::FixedIntWrapper< 31, true >
 
using Int32 = detail::FixedIntWrapper< 32, true >
 
using Int33 = detail::FixedIntWrapper< 33, true >
 
using Int34 = detail::FixedIntWrapper< 34, true >
 
using Int35 = detail::FixedIntWrapper< 35, true >
 
using Int36 = detail::FixedIntWrapper< 36, true >
 
using Int37 = detail::FixedIntWrapper< 37, true >
 
using Int38 = detail::FixedIntWrapper< 38, true >
 
using Int39 = detail::FixedIntWrapper< 39, true >
 
using Int40 = detail::FixedIntWrapper< 40, true >
 
using Int41 = detail::FixedIntWrapper< 41, true >
 
using Int42 = detail::FixedIntWrapper< 42, true >
 
using Int43 = detail::FixedIntWrapper< 43, true >
 
using Int44 = detail::FixedIntWrapper< 44, true >
 
using Int45 = detail::FixedIntWrapper< 45, true >
 
using Int46 = detail::FixedIntWrapper< 46, true >
 
using Int47 = detail::FixedIntWrapper< 47, true >
 
using Int48 = detail::FixedIntWrapper< 48, true >
 
using Int49 = detail::FixedIntWrapper< 49, true >
 
using Int50 = detail::FixedIntWrapper< 50, true >
 
using Int51 = detail::FixedIntWrapper< 51, true >
 
using Int52 = detail::FixedIntWrapper< 52, true >
 
using Int53 = detail::FixedIntWrapper< 53, true >
 
using Int54 = detail::FixedIntWrapper< 54, true >
 
using Int55 = detail::FixedIntWrapper< 55, true >
 
using Int56 = detail::FixedIntWrapper< 56, true >
 
using Int57 = detail::FixedIntWrapper< 57, true >
 
using Int58 = detail::FixedIntWrapper< 58, true >
 
using Int59 = detail::FixedIntWrapper< 59, true >
 
using Int60 = detail::FixedIntWrapper< 60, true >
 
using Int61 = detail::FixedIntWrapper< 61, true >
 
using Int62 = detail::FixedIntWrapper< 62, true >
 
using Int63 = detail::FixedIntWrapper< 63, true >
 
using Int64 = detail::FixedIntWrapper< 64, true >
 
using UInt1 = detail::FixedIntWrapper< 1, false >
 
using UInt2 = detail::FixedIntWrapper< 2, false >
 
using UInt3 = detail::FixedIntWrapper< 3, false >
 
using UInt4 = detail::FixedIntWrapper< 4, false >
 
using UInt5 = detail::FixedIntWrapper< 5, false >
 
using UInt6 = detail::FixedIntWrapper< 6, false >
 
using UInt7 = detail::FixedIntWrapper< 7, false >
 
using UInt8 = detail::FixedIntWrapper< 8, false >
 
using UInt9 = detail::FixedIntWrapper< 9, false >
 
using UInt10 = detail::FixedIntWrapper< 10, false >
 
using UInt11 = detail::FixedIntWrapper< 11, false >
 
using UInt12 = detail::FixedIntWrapper< 12, false >
 
using UInt13 = detail::FixedIntWrapper< 13, false >
 
using UInt14 = detail::FixedIntWrapper< 14, false >
 
using UInt15 = detail::FixedIntWrapper< 15, false >
 
using UInt16 = detail::FixedIntWrapper< 16, false >
 
using UInt17 = detail::FixedIntWrapper< 17, false >
 
using UInt18 = detail::FixedIntWrapper< 18, false >
 
using UInt19 = detail::FixedIntWrapper< 19, false >
 
using UInt20 = detail::FixedIntWrapper< 20, false >
 
using UInt21 = detail::FixedIntWrapper< 21, false >
 
using UInt22 = detail::FixedIntWrapper< 22, false >
 
using UInt23 = detail::FixedIntWrapper< 23, false >
 
using UInt24 = detail::FixedIntWrapper< 24, false >
 
using UInt25 = detail::FixedIntWrapper< 25, false >
 
using UInt26 = detail::FixedIntWrapper< 26, false >
 
using UInt27 = detail::FixedIntWrapper< 27, false >
 
using UInt28 = detail::FixedIntWrapper< 28, false >
 
using UInt29 = detail::FixedIntWrapper< 29, false >
 
using UInt30 = detail::FixedIntWrapper< 30, false >
 
using UInt31 = detail::FixedIntWrapper< 31, false >
 
using UInt32 = detail::FixedIntWrapper< 32, false >
 
using UInt33 = detail::FixedIntWrapper< 33, false >
 
using UInt34 = detail::FixedIntWrapper< 34, false >
 
using UInt35 = detail::FixedIntWrapper< 35, false >
 
using UInt36 = detail::FixedIntWrapper< 36, false >
 
using UInt37 = detail::FixedIntWrapper< 37, false >
 
using UInt38 = detail::FixedIntWrapper< 38, false >
 
using UInt39 = detail::FixedIntWrapper< 39, false >
 
using UInt40 = detail::FixedIntWrapper< 40, false >
 
using UInt41 = detail::FixedIntWrapper< 41, false >
 
using UInt42 = detail::FixedIntWrapper< 42, false >
 
using UInt43 = detail::FixedIntWrapper< 43, false >
 
using UInt44 = detail::FixedIntWrapper< 44, false >
 
using UInt45 = detail::FixedIntWrapper< 45, false >
 
using UInt46 = detail::FixedIntWrapper< 46, false >
 
using UInt47 = detail::FixedIntWrapper< 47, false >
 
using UInt48 = detail::FixedIntWrapper< 48, false >
 
using UInt49 = detail::FixedIntWrapper< 49, false >
 
using UInt50 = detail::FixedIntWrapper< 50, false >
 
using UInt51 = detail::FixedIntWrapper< 51, false >
 
using UInt52 = detail::FixedIntWrapper< 52, false >
 
using UInt53 = detail::FixedIntWrapper< 53, false >
 
using UInt54 = detail::FixedIntWrapper< 54, false >
 
using UInt55 = detail::FixedIntWrapper< 55, false >
 
using UInt56 = detail::FixedIntWrapper< 56, false >
 
using UInt57 = detail::FixedIntWrapper< 57, false >
 
using UInt58 = detail::FixedIntWrapper< 58, false >
 
using UInt59 = detail::FixedIntWrapper< 59, false >
 
using UInt60 = detail::FixedIntWrapper< 60, false >
 
using UInt61 = detail::FixedIntWrapper< 61, false >
 
using UInt62 = detail::FixedIntWrapper< 62, false >
 
using UInt63 = detail::FixedIntWrapper< 63, false >
 
using UInt64 = detail::FixedIntWrapper< 64, false >
 
template<size_t BIT_SIZE>
using Int = detail::FixedIntWrapper< BIT_SIZE, true >
 
template<size_t BIT_SIZE>
using UInt = detail::FixedIntWrapper< BIT_SIZE, false >
 
using DynInt8 = detail::DynIntWrapper< int8_t >
 
using DynInt16 = detail::DynIntWrapper< int16_t >
 
using DynInt32 = detail::DynIntWrapper< int32_t >
 
using DynInt64 = detail::DynIntWrapper< int64_t >
 
using DynUInt8 = detail::DynIntWrapper< uint8_t >
 
using DynUInt16 = detail::DynIntWrapper< uint16_t >
 
using DynUInt32 = detail::DynIntWrapper< uint32_t >
 
using DynUInt64 = detail::DynIntWrapper< uint64_t >
 
using VarInt16 = detail::VarIntWrapper< int16_t, detail::VarIntType::VAR16 >
 
using VarInt32 = detail::VarIntWrapper< int32_t, detail::VarIntType::VAR32 >
 
using VarInt64 = detail::VarIntWrapper< int64_t, detail::VarIntType::VAR64 >
 
using VarInt = detail::VarIntWrapper< int64_t, detail::VarIntType::VAR >
 
using VarUInt16 = detail::VarIntWrapper< uint16_t, detail::VarIntType::VAR16 >
 
using VarUInt32 = detail::VarIntWrapper< uint32_t, detail::VarIntType::VAR32 >
 
using VarUInt64 = detail::VarIntWrapper< uint64_t, detail::VarIntType::VAR64 >
 
using VarUInt = detail::VarIntWrapper< uint64_t, detail::VarIntType::VAR >
 
using VarSize = detail::VarIntWrapper< uint32_t, detail::VarIntType::VARSIZE >
 
using Float16 = detail::FloatWrapper< float, detail::FloatType::FLOAT16 >
 
using Float32 = detail::FloatWrapper< float, detail::FloatType::FLOAT32 >
 
using Float64 = detail::FloatWrapper< double, detail::FloatType::FLOAT64 >
 
using Walker = BasicWalker<>
 
using DefaultWalkObserver = BasicDefaultWalkObserver<>
 
using DefaultWalkFilter = BasicDefaultWalkFilter<>
 
using DepthWalkFilter = BasicDepthWalkFilter<>
 
using RegexWalkFilter = BasicRegexWalkFilter<>
 
using ArrayLengthWalkFilter = BasicArrayLengthWalkFilter<>
 
using AndWalkFilter = BasicAndWalkFilter<>
 

Enumerations

enum class  CppType {
  BOOL , INT8 , INT16 , INT32 ,
  INT64 , UINT8 , UINT16 , UINT32 ,
  UINT64 , FLOAT , DOUBLE , BYTES ,
  STRING , BIT_BUFFER , ENUM , BITMASK ,
  STRUCT , CHOICE , UNION , SQL_TABLE ,
  SQL_DATABASE , SERVICE , PUBSUB
}
 
enum class  SchemaType {
  BOOL , INT1 , INT2 , INT3 ,
  INT4 , INT5 , INT6 , INT7 ,
  INT8 , INT9 , INT10 , INT11 ,
  INT12 , INT13 , INT14 , INT15 ,
  INT16 , INT17 , INT18 , INT19 ,
  INT20 , INT21 , INT22 , INT23 ,
  INT24 , INT25 , INT26 , INT27 ,
  INT28 , INT29 , INT30 , INT31 ,
  INT32 , INT33 , INT34 , INT35 ,
  INT36 , INT37 , INT38 , INT39 ,
  INT40 , INT41 , INT42 , INT43 ,
  INT44 , INT45 , INT46 , INT47 ,
  INT48 , INT49 , INT50 , INT51 ,
  INT52 , INT53 , INT54 , INT55 ,
  INT56 , INT57 , INT58 , INT59 ,
  INT60 , INT61 , INT62 , INT63 ,
  INT64 , UINT1 , UINT2 , UINT3 ,
  UINT4 , UINT5 , UINT6 , UINT7 ,
  UINT8 , UINT9 , UINT10 , UINT11 ,
  UINT12 , UINT13 , UINT14 , UINT15 ,
  UINT16 , UINT17 , UINT18 , UINT19 ,
  UINT20 , UINT21 , UINT22 , UINT23 ,
  UINT24 , UINT25 , UINT26 , UINT27 ,
  UINT28 , UINT29 , UINT30 , UINT31 ,
  UINT32 , UINT33 , UINT34 , UINT35 ,
  UINT36 , UINT37 , UINT38 , UINT39 ,
  UINT40 , UINT41 , UINT42 , UINT43 ,
  UINT44 , UINT45 , UINT46 , UINT47 ,
  UINT48 , UINT49 , UINT50 , UINT51 ,
  UINT52 , UINT53 , UINT54 , UINT55 ,
  UINT56 , UINT57 , UINT58 , UINT59 ,
  UINT60 , UINT61 , UINT62 , UINT63 ,
  UINT64 , VARINT16 , VARINT32 , VARINT64 ,
  VARINT , VARUINT16 , VARUINT32 , VARUINT64 ,
  VARUINT , VARSIZE , DYNAMIC_SIGNED_BITFIELD , DYNAMIC_UNSIGNED_BITFIELD ,
  FLOAT16 , FLOAT32 , FLOAT64 , BYTES ,
  STRING , EXTERN , ENUM , BITMASK ,
  STRUCT , CHOICE , UNION , SQL_TABLE ,
  SQL_DATABASE , SERVICE , PUBSUB
}
 
enum class  JsonToken : int8_t {
  UNKNOWN = -1 , BEGIN_OF_FILE , END_OF_FILE , BEGIN_OBJECT ,
  END_OBJECT , BEGIN_ARRAY , END_ARRAY , KEY_SEPARATOR ,
  ITEM_SEPARATOR , VALUE
}
 

Functions

template<typename T , typename ARRAY_TRAITS >
uint32_t calcHashCode (uint32_t seedValue, const ArrayView< T, ARRAY_TRAITS > &array)
 
template<typename ALLOC >
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, const BasicBitBuffer< ALLOC > &bitBuffer)
 
template<typename ALLOC >
uint32_t calcHashCode (uint32_t seedValue, const BasicBitBuffer< ALLOC > &value)
 
int64_t getBitFieldLowerBound (size_t length, bool isSigned)
 
uint64_t getBitFieldUpperBound (size_t length, bool isSigned)
 
template<typename T , typename std::enable_if< is_bitmask< T >::value, int >::type = 0>
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, T value)
 
constexpr BitSize alignTo (BitSize alignmentValue, BitSize bitPosition)
 
bool operator== (const BytesView &lhs, const BytesView &rhs)
 
bool operator!= (const BytesView &lhs, const BytesView &rhs)
 
bool operator< (const BytesView &lhs, const BytesView &rhs)
 
bool operator> (const BytesView &lhs, const BytesView &rhs)
 
bool operator<= (const BytesView &lhs, const BytesView &rhs)
 
bool operator>= (const BytesView &lhs, const BytesView &rhs)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, const char *message)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, bool value)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, float value)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, double value)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, std::string_view value)
 
template<typename ALLOC >
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, const std::basic_string< char, std::char_traits< char >, ALLOC > &value)
 
template<typename T , typename ALLOC >
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, const std::vector< T, ALLOC > &value)
 
template<typename CPP_RUNTIME_EXCEPTION , typename T >
detail::CppRuntimeExceptionRValueInsertion< CPP_RUNTIME_EXCEPTION, T > operator<< (CPP_RUNTIME_EXCEPTION &&exception, const T &value)
 
template<typename T , typename... ARGS>
 DataView (T, ARGS &&...) -> DataView< T >
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void toJsonStream (const T &object, std::ostream &stream, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void toJsonStream (const T &object, std::ostream &stream, uint8_t indent, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void toJsonStream (const T &object, std::ostream &stream, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void toJsonStream (const T &object, std::ostream &stream, uint8_t indent, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
BasicString< RebindAlloc< ALLOC, char > > toJsonString (const T &object, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
BasicString< RebindAlloc< ALLOC, char > > toJsonString (const T &object, uint8_t indent, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
BasicString< RebindAlloc< ALLOC, char > > toJsonString (const T &object, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
BasicString< RebindAlloc< ALLOC, char > > toJsonString (const T &object, uint8_t indent, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void toJsonFile (const T &object, std::string_view fileName, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void toJsonFile (const T &object, std::string_view fileName, uint8_t indent, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void toJsonFile (const T &object, std::string_view fileName, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void toJsonFile (const T &object, const BasicString< RebindAlloc< ALLOC, char >> &fileName, uint8_t indent, WALK_FILTER &&walkFilter, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonStream (const IBasicTypeInfo< ALLOC > &typeInfo, std::istream &is, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type>
fromJsonStream (std::istream &is, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonString (const IBasicTypeInfo< ALLOC > &typeInfo, const BasicString< RebindAlloc< ALLOC, char >> &json, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type>
fromJsonString (const BasicString< RebindAlloc< ALLOC, char >> &json, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonFile (const IBasicTypeInfo< ALLOC > &typeInfo, std::string_view fileName, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type>
fromJsonFile (std::string_view fileName, const ALLOC &allocator=ALLOC())
 
template<typename T >
size_t enumToOrdinal (T value)
 
template<typename T >
valueToEnum (typename EnumTraits< T >::ZserioType rawValue)
 
template<typename T >
constexpr EnumTraits< T >::ZserioType enumToValue (T value)
 
template<typename T >
stringToEnum (std::string_view itemName)
 
template<typename T >
std::string_view enumToString (T value)
 
template<typename T >
bool operator== (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
bool operator!= (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
bool operator< (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
bool operator> (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
bool operator<= (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
bool operator>= (const Extended< T > &lhs, const Extended< T > &rhs)
 
template<typename T >
uint32_t calcHashCode (uint32_t seed, const Extended< T > &extendedValue)
 
void writeBufferToFile (const uint8_t *buffer, size_t bitSize, BitsTag, std::string_view fileName)
 
BitBuffer readBufferFromFile (std::string_view fileName)
 
void writeBufferToFile (const uint8_t *buffer, size_t byteSize, std::string_view fileName)
 
template<typename ALLOC >
void writeBufferToFile (const BasicBitBuffer< ALLOC > &bitBuffer, std::string_view fileName)
 
float convertUInt16ToFloat (uint16_t float16Value)
 
uint16_t convertFloatToUInt16 (float float32)
 
float convertUInt32ToFloat (uint32_t float32Value)
 
uint32_t convertFloatToUInt32 (float float32)
 
double convertUInt64ToDouble (uint64_t float64Value)
 
uint64_t convertDoubleToUInt64 (double float64)
 
template<typename T >
const T & genericAccessor (const T &value)
 
template<typename ALLOC , typename T >
const auto & genericAccessor (const BasicOptional< ALLOC, T > &optionalValue)
 
template<typename T >
const auto & genericAccessor (const Extended< T > &extendedValue)
 
template<typename T >
T & genericAccessor (T &value)
 
template<typename ALLOC , typename T >
auto & genericAccessor (BasicOptional< ALLOC, T > &optionalValue)
 
template<typename T >
auto & genericAccessor (Extended< T > &extendedValue)
 
uint32_t calcHashCodeFirstTerm (uint32_t seedValue)
 
template<typename T >
std::enable_if< std::is_integral< T >::value &&(sizeof(T)<=4), uint32_t >::type calcHashCode (uint32_t seedValue, T value)
 
template<typename T >
std::enable_if< std::is_integral< T >::value &&(sizeof(T) > 4), uint32_t >::type calcHashCode (uint32_t seedValue, T value)
 
uint32_t calcHashCode (uint32_t seedValue, float value)
 
uint32_t calcHashCode (uint32_t seedValue, double value)
 
uint32_t calcHashCode (uint32_t seedValue, Bool value)
 
template<BitSize BIT_SIZE, bool IS_SIGNED>
uint32_t calcHashCode (uint32_t seedValue, detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED > value)
 
template<typename VALUE_TYPE >
uint32_t calcHashCode (uint32_t seedValue, detail::DynIntWrapper< VALUE_TYPE > value)
 
template<typename VALUE_TYPE , detail::VarIntType VAR_TYPE>
uint32_t calcHashCode (uint32_t seedValue, detail::VarIntWrapper< VALUE_TYPE, VAR_TYPE > value)
 
template<typename VALUE_TYPE , detail::FloatType FLOAT_TYPE>
uint32_t calcHashCode (uint32_t seedValue, detail::FloatWrapper< VALUE_TYPE, FLOAT_TYPE > value)
 
template<typename ALLOC >
uint32_t calcHashCode (uint32_t seedValue, const BasicString< ALLOC > &stringValue)
 
uint32_t calcHashCode (uint32_t seedValue, std::string_view stringValue)
 
template<typename T >
std::enable_if_t< std::is_enum_v< T >||is_bitmask_v< T >, uint32_t > calcHashCode (uint32_t seedValue, T value)
 
template<typename OBJECT >
std::enable_if_t<!std::is_enum_v< OBJECT > &&!is_bitmask_v< OBJECT > &&!std::is_integral_v< OBJECT >, uint32_t > calcHashCode (uint32_t seedValue, const OBJECT &object)
 
uint32_t calcHashCode (uint32_t seedValue, const BytesView &bytes)
 
template<typename ARRAY_ELEMENT , typename ALLOC >
uint32_t calcHashCode (uint32_t seedValue, const Vector< ARRAY_ELEMENT, ALLOC > &array)
 
uint32_t calcHashCode (uint32_t seedValue, std::monostate)
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (Bool value, const ALLOC &allocator=ALLOC())
 
template<BitSize BIT_SIZE, bool IS_SIGNED, typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED > value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (const View< detail::DynIntWrapper< T >> &value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (VarInt16 value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (Float16 value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (BytesView value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (std::string_view value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (BasicBitBufferView< ALLOC > value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename TRAITS , typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > introspectableArray (ArrayView< T, TRAITS > value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = detail::type_info_default_alloc_t<T>>
const IBasicTypeInfo< ALLOC > & typeInfo ()
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, JsonToken token)
 
template<typename ALLOC , typename T >
uint32_t calcHashCode (uint32_t seed, const BasicOptional< ALLOC, T > &opt)
 
template<typename T >
constexpr auto make_optional (T &&value)
 
template<typename T , typename... ARGS>
constexpr Optional< T > make_optional (ARGS &&... args)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator== (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator== (const BasicOptional< A, T > &opt, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator== (std::nullopt_t, const BasicOptional< A, T > &opt)
 
template<typename A , typename T , typename U >
constexpr bool operator== (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator== (const U &value, const BasicOptional< A, T > &opt)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator!= (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator!= (const BasicOptional< A, T > &opt, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator!= (std::nullopt_t, const BasicOptional< A, T > &opt)
 
template<typename A , typename T , typename U >
constexpr bool operator!= (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator!= (const U &value, const BasicOptional< A, T > &opt)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator< (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator< (const BasicOptional< A, T > &, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator< (std::nullopt_t, const BasicOptional< A, T > &opt)
 
template<typename A , typename T , typename U >
constexpr bool operator< (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator< (const U &value, const BasicOptional< A, T > &opt)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator> (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator> (const BasicOptional< A, T > &opt, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator> (std::nullopt_t, const BasicOptional< A, T > &)
 
template<typename A , typename T , typename U >
constexpr bool operator> (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator> (const U &value, const BasicOptional< A, T > &opt)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator<= (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator<= (const BasicOptional< A, T > &opt, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator<= (std::nullopt_t, const BasicOptional< A, T > &opt)
 
template<typename A , typename T , typename U >
constexpr bool operator<= (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator<= (const U &value, const BasicOptional< A, T > &opt)
 
template<typename A1 , typename T , typename A2 , typename U >
constexpr bool operator>= (const BasicOptional< A1, T > &first, const BasicOptional< A2, U > &second)
 
template<typename A , typename T >
constexpr bool operator>= (const BasicOptional< A, T > &opt, std::nullopt_t)
 
template<typename A , typename T >
constexpr bool operator>= (std::nullopt_t, const BasicOptional< A, T > &opt)
 
template<typename A , typename T , typename U >
constexpr bool operator>= (const BasicOptional< A, T > &opt, const U &value)
 
template<typename A , typename T , typename U >
constexpr bool operator>= (const U &value, const BasicOptional< A, T > &opt)
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (Bool value, const ALLOC &allocator=ALLOC())
 
template<BitSize BIT_SIZE, bool IS_SIGNED, typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED > value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (detail::DynIntWrapper< T > value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (VarInt16 value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (Float16 value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (const BasicBytes< ALLOC > &value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (BytesView value, const ALLOC &allocator=ALLOC())
 
template<typename STRING_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (const BasicString< STRING_ALLOC > &value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (std::string_view value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectable (BasicBitBuffer< ALLOC > &value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataConstPtr< ALLOC > reflectable (const BasicBitBuffer< ALLOC > &value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename VECTOR_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataConstPtr< ALLOC > reflectableArray (const std::vector< T, VECTOR_ALLOC > &array, const ALLOC &allocator=ALLOC())
 
template<typename T , typename VECTOR_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > reflectableArray (std::vector< T, VECTOR_ALLOC > &array, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t< is_allocator_v< ALLOC >, int > = 0>
BasicBitBuffer< ALLOC > serialize (const T &data, const ALLOC &allocator, ARGS &&... arguments)
 
template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t< is_allocator_v< ALLOC >, int > = 0>
Vector< uint8_t, ALLOC > serializeToBytes (const T &data, const ALLOC &allocator, ARGS &&... arguments)
 
template<typename T , typename... ARGS, typename std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
BasicBitBuffer< typename T::allocator_type > serialize (const T &data, ARGS &&... arguments)
 
template<typename T , typename... ARGS, typename std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
Vector< uint8_t, typename T::allocator_type > serializeToBytes (const T &data, ARGS &&... arguments)
 
template<typename T , typename ALLOC , typename... ARGS>
View< T > deserialize (const BasicBitBuffer< ALLOC > &buffer, T &data, ARGS &&... arguments)
 
template<typename T , typename... ARGS>
View< T > deserializeFromBytes (Span< const uint8_t > buffer, T &data, ARGS &&... arguments)
 
template<typename T , typename ALLOC >
BasicBitBuffer< ALLOC > serialize (const View< T > &view, const ALLOC &allocator)
 
template<typename T , typename ALLOC >
Vector< uint8_t, ALLOC > serializeToBytes (const View< T > &view, const ALLOC &allocator)
 
template<typename T >
BasicBitBuffer< typename T::allocator_type > serialize (const View< T > &view)
 
template<typename T >
Vector< uint8_t, typename T::allocator_type > serializeToBytes (const View< T > &view)
 
template<typename T , typename ALLOC >
BasicBitBuffer< ALLOC > serialize (const DataView< T > &dataView, const ALLOC &allocator)
 
template<typename T , typename ALLOC >
Vector< uint8_t, ALLOC > serializeToBytes (const DataView< T > &dataView, const ALLOC &allocator)
 
template<typename T >
BasicBitBuffer< typename T::allocator_type > serialize (const DataView< T > &dataView)
 
template<typename T >
Vector< uint8_t, typename T::allocator_type > serializeToBytes (const DataView< T > &dataView)
 
template<typename T , typename ALLOC , typename... ARGS>
DataView< T > deserialize (const BasicBitBuffer< ALLOC > &buffer, const typename T::allocator_type &allocator, ARGS &&... arguments)
 
template<typename T , typename... ARGS>
DataView< T > deserializeFromBytes (Span< const uint8_t > buffer, const typename T::allocator_type &allocator, ARGS &&... arguments)
 
template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
DataView< T > deserialize (const BasicBitBuffer< ALLOC > &buffer, ARGS &&... arguments)
 
template<typename T , typename... ARGS, std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
DataView< T > deserializeFromBytes (Span< const uint8_t > buffer, ARGS &&... arguments)
 
template<typename T >
void serializeToFile (const View< T > &view, std::string_view fileName)
 
template<typename T >
void serializeToFile (const DataView< T > &dataView, std::string_view fileName)
 
template<typename T , typename... ARGS>
void serializeToFile (const T &data, std::string_view fileName, ARGS &&... arguments)
 
template<typename T , typename... ARGS>
View< T > deserializeFromFile (std::string_view fileName, T &data, ARGS &&... arguments)
 
template<typename T , typename... ARGS>
DataView< T > deserializeFromFile (std::string_view fileName, ARGS &&... arguments)
 
uint32_t convertSizeToUInt32 (size_t value)
 
size_t convertUInt64ToSize (uint64_t value)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, SqliteErrorCode code)
 
template<typename T , std::enable_if_t< std::is_unsigned_v< T >, int > = 0>
const char * convertIntToString (std::array< char, 24 > &buffer, T value)
 
void convertFloatToString (std::array< char, 24 > &integerPartBuffer, std::array< char, 24 > &floatingPartBuffer, float value, const char *&integerPartString, const char *&floatingPartString)
 
const char * convertBoolToString (bool value)
 
template<typename ALLOC , typename T , std::enable_if_t< std::is_integral_v< T >, int > = 0>
BasicString< RebindAlloc< ALLOC, char > > toString (T value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC >
BasicString< RebindAlloc< ALLOC, char > > toString (bool value, const ALLOC &allocator=ALLOC())
 
template<typename ALLOC >
BasicString< RebindAlloc< ALLOC, char > > toString (std::string_view value, const ALLOC &allocator=ALLOC())
 
template<typename T >
BasicString< std::allocator< char > > toString (T value)
 
template<typename T , typename ALLOC , typename... ARGS>
constexpr T constructWithAllocator (const ALLOC &allocator, ARGS &&... args)
 
template<typename T , typename ALLOC , typename U , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T constructWithAllocator (const ALLOC &, U value)
 
template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T fromCheckedValue (typename T::ValueType value) noexcept(!detail::needs_range_check_v< T >)
 
template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T fromCheckedValue (typename T::ValueType value, BitSize numBits)
 
template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T::ValueType toCheckedValue (T wrapper) noexcept(!detail::needs_range_check_v< T >)
 
template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T::ValueType toCheckedValue (T wrapper, BitSize numBits)
 
template<typename VALUE_TYPE >
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, detail::NumericTypeWrapper< VALUE_TYPE > value)
 
template<typename T , typename ALLOC , class... Args>
UniquePtr< T, RebindAlloc< ALLOC, T > > allocate_unique (const ALLOC &allocator, Args &&... args)
 
template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) get (BasicVariant< ALLOC, INDEX, T... > &var)
 
template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) get (const BasicVariant< ALLOC, INDEX, T... > &var)
 
template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) get_if (BasicVariant< ALLOC, INDEX, T... > *var)
 
template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) get_if (const BasicVariant< ALLOC, INDEX, T... > *var)
 
template<typename F , typename ALLOC , typename INDEX , typename... T>
decltype(auto) visit (F &&fun, BasicVariant< ALLOC, INDEX, T... > &var)
 
template<typename F , typename ALLOC , typename INDEX , typename... T>
decltype(auto) visit (F &&fun, const BasicVariant< ALLOC, INDEX, T... > &var)
 
template<typename ALLOC , typename INDEX , typename... T>
uint32_t calcHashCode (uint32_t seed, const BasicVariant< ALLOC, INDEX, T... > &var)
 
template<typename T , typename... ARGS>
 View (T, ARGS &&...) -> View< T >
 
template<typename VALUE_TYPE >
bool operator== (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
template<typename VALUE_TYPE >
bool operator!= (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
template<typename VALUE_TYPE >
bool operator< (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
template<typename VALUE_TYPE >
bool operator> (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
template<typename VALUE_TYPE >
bool operator<= (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
template<typename VALUE_TYPE >
bool operator>= (const View< detail::DynIntWrapper< VALUE_TYPE >> &lhs, const View< detail::DynIntWrapper< VALUE_TYPE >> &rhs)
 
CppRuntimeExceptionoperator<< (CppRuntimeException &exception, detail::CreatorState state)
 
template<typename ALLOC >
bool operator== (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename ALLOC >
bool operator!= (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename ALLOC >
bool operator< (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename ALLOC >
bool operator> (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename ALLOC >
bool operator<= (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename ALLOC >
bool operator>= (const BasicBitBufferView< ALLOC > &lhs, const BasicBitBufferView< ALLOC > &rhs)
 
template<typename T , typename ALLOC = typename T::allocator_type>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (const View< T > &view, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = std::allocator<uint8_t>, std::enable_if_t< std::is_enum_v< T >||is_bitmask_v< T >, int > = 0>
IBasicIntrospectableViewConstPtr< ALLOC > introspectable (T value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, std::enable_if_t< is_complete_v< View< T >> &&has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataConstPtr< ALLOC > reflectable (const T &value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = typename T::allocator_type, std::enable_if_t< is_complete_v< View< T >> &&has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataPtr< ALLOC > reflectable (T &value, const ALLOC &allocator=ALLOC())
 
template<typename T , typename ALLOC = std::allocator<uint8_t>, std::enable_if_t<(std::is_enum_v< T >||is_bitmask_v< T >) &&!has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataPtr< ALLOC > reflectable (T value, const ALLOC &allocator=ALLOC())
 

Variables

constexpr std::size_t dynamic_extent = std::numeric_limits<std::size_t>::max()
 
template<typename T , typename V = void>
constexpr bool is_numeric_wrapper_v = is_numeric_wrapper<T, V>::value
 
template<typename T , typename V = void>
constexpr bool is_dyn_int_wrapper_v = is_dyn_int_wrapper<T, V>::value
 
template<auto I>
constexpr in_place_index_t< I > in_place_index {}
 
template<typename T >
constexpr bool is_allocator_v = is_allocator<T>::value
 
template<typename... ARGS>
constexpr bool is_first_allocator_v = is_first_allocator<ARGS...>::value
 
template<typename T , typename V = void>
constexpr bool has_allocator_v = has_allocator<T, V>::value
 
template<typename T , typename V = void>
constexpr bool is_bitmask_v = is_bitmask<T, V>::value
 
template<typename T >
constexpr bool is_span_v = is_span<T>::value
 
template<typename T >
constexpr bool is_complete_v = is_complete<T>::value
 

Typedef Documentation

◆ AndWalkFilter

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 449 of file Walker.h.

◆ Any

using zserio::Any = typedef BasicAny<>

Typedef provided for convenience - using std::allocator.

Definition at line 632 of file Any.h.

◆ ArrayLengthWalkFilter

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 448 of file Walker.h.

◆ BasicBitBufferView

template<typename ALLOC >
using zserio::BasicBitBufferView = typedef std::reference_wrapper<const BasicBitBuffer<ALLOC> >

BitBufferView which is just a reference_wrapper for simplicity.

Definition at line 492 of file BitBuffer.h.

◆ BasicBytes

template<typename ALLOC = std::allocator<uint8_t>>
using zserio::BasicBytes = typedef std::vector<uint8_t, ALLOC>

Typedef for Zserio Bytes type - vector with uint8_t value.

Definition at line 20 of file Bytes.h.

◆ BasicString

template<typename ALLOC >
using zserio::BasicString = typedef std::basic_string<char, std::char_traits<char>, ALLOC>

Typedef to std::basic_string provided for convenience - using char.

Definition at line 17 of file String.h.

◆ BitBuffer

using zserio::BitBuffer = typedef BasicBitBuffer<>

Typedef to BitBuffer provided for convenience - using std::allocator<uint8_t>.

Definition at line 488 of file BitBuffer.h.

◆ BitBufferView

using zserio::BitBufferView = typedef std::reference_wrapper<const BitBuffer>

Typedef to BitBufferView provided for convenience - using std::allocator<uint8_t>.

Definition at line 495 of file BitBuffer.h.

◆ BitSize

using zserio::BitSize = typedef unsigned int

Typedef for bit size type used in Zserio.

Definition at line 8 of file BitSize.h.

◆ Bool

using zserio::Bool = typedef detail::BoolWrapper

Typedef for a zserio type.

Definition at line 732 of file Types.h.

◆ Bytes

using zserio::Bytes = typedef BasicBytes<>

Typedef for Zserio Bytes type provided for convenience - using std::allocator<uint8_t>.

Definition at line 25 of file Bytes.h.

◆ BytesView

using zserio::BytesView = typedef Span<const uint8_t>

Typedef for View on Zserio Byte s type.

Definition at line 30 of file Bytes.h.

◆ CaseInfo

using zserio::CaseInfo = typedef BasicCaseInfo<>

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 679 of file ITypeInfo.h.

◆ ColumnInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 680 of file ITypeInfo.h.

◆ DefaultWalkFilter

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 445 of file Walker.h.

◆ DefaultWalkObserver

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 444 of file Walker.h.

◆ DepthWalkFilter

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 446 of file Walker.h.

◆ DynInt16

using zserio::DynInt16 = typedef detail::DynIntWrapper<int16_t>

Typedef for a zserio type.

Definition at line 871 of file Types.h.

◆ DynInt32

using zserio::DynInt32 = typedef detail::DynIntWrapper<int32_t>

Typedef for a zserio type.

Definition at line 872 of file Types.h.

◆ DynInt64

using zserio::DynInt64 = typedef detail::DynIntWrapper<int64_t>

Typedef for a zserio type.

Definition at line 873 of file Types.h.

◆ DynInt8

using zserio::DynInt8 = typedef detail::DynIntWrapper<int8_t>

Typedef for a zserio type.

Definition at line 870 of file Types.h.

◆ DynUInt16

using zserio::DynUInt16 = typedef detail::DynIntWrapper<uint16_t>

Typedef for a zserio type.

Definition at line 876 of file Types.h.

◆ DynUInt32

using zserio::DynUInt32 = typedef detail::DynIntWrapper<uint32_t>

Typedef for a zserio type.

Definition at line 877 of file Types.h.

◆ DynUInt64

using zserio::DynUInt64 = typedef detail::DynIntWrapper<uint64_t>

Typedef for a zserio type.

Definition at line 878 of file Types.h.

◆ DynUInt8

using zserio::DynUInt8 = typedef detail::DynIntWrapper<uint8_t>

Typedef for a zserio type.

Definition at line 875 of file Types.h.

◆ FieldInfo

using zserio::FieldInfo = typedef BasicFieldInfo<>

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 676 of file ITypeInfo.h.

◆ Float16

using zserio::Float16 = typedef detail::FloatWrapper<float, detail::FloatType::FLOAT16>

Typedef for a zserio type.

Definition at line 892 of file Types.h.

◆ Float32

using zserio::Float32 = typedef detail::FloatWrapper<float, detail::FloatType::FLOAT32>

Typedef for a zserio type.

Definition at line 893 of file Types.h.

◆ Float64

using zserio::Float64 = typedef detail::FloatWrapper<double, detail::FloatType::FLOAT64>

Typedef for a zserio type.

Definition at line 894 of file Types.h.

◆ FunctionInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 678 of file ITypeInfo.h.

◆ generic_accessor_t

template<typename T >
using zserio::generic_accessor_t = typedef typename detail::generic_accessor<T>::type

Definition at line 38 of file GenericAccessor.h.

◆ IBasicIntrospectableViewConstPtr

template<typename ALLOC = std::allocator<uint8_t>>
using zserio::IBasicIntrospectableViewConstPtr = typedef typename IBasicIntrospectableView<ALLOC>::ConstPtr

Typedef to introspectable smart pointer needed for convenience in generated code.

Definition at line 77 of file IIntrospectableView.h.

◆ IBasicReflectableDataConstPtr

template<typename ALLOC = std::allocator<uint8_t>>
using zserio::IBasicReflectableDataConstPtr = typedef typename IBasicReflectableData<ALLOC>::ConstPtr

Typedef to reflectable smart pointer needed for convenience in generated code.

Definition at line 185 of file IReflectableData.h.

◆ IBasicReflectableDataPtr

template<typename ALLOC = std::allocator<uint8_t>>
using zserio::IBasicReflectableDataPtr = typedef typename IBasicReflectableData<ALLOC>::Ptr

Typedef to reflectable smart pointer needed for convenience in generated code.

Definition at line 182 of file IReflectableData.h.

◆ IBasicServiceDataPtr

template<typename ALLOC = std::allocator<uint8_t>>
using zserio::IBasicServiceDataPtr = typedef std::shared_ptr<IBasicServiceData<ALLOC> >

Typedef to service data smart pointer needed for convenience in generated code.

Definition at line 45 of file IService.h.

◆ IIntrospectableView

Typedef to introspectable interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 81 of file IIntrospectableView.h.

◆ IIntrospectableViewConstPtr

Typedef to introspectable interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 82 of file IIntrospectableView.h.

◆ Int

template<size_t BIT_SIZE>
using zserio::Int = typedef detail::FixedIntWrapper<BIT_SIZE, true>

Typedef for a zserio type.

Definition at line 865 of file Types.h.

◆ Int1

using zserio::Int1 = typedef detail::FixedIntWrapper<1, true>

Typedef for a zserio type.

Definition at line 734 of file Types.h.

◆ Int10

using zserio::Int10 = typedef detail::FixedIntWrapper<10, true>

Typedef for a zserio type.

Definition at line 743 of file Types.h.

◆ Int11

using zserio::Int11 = typedef detail::FixedIntWrapper<11, true>

Typedef for a zserio type.

Definition at line 744 of file Types.h.

◆ Int12

using zserio::Int12 = typedef detail::FixedIntWrapper<12, true>

Typedef for a zserio type.

Definition at line 745 of file Types.h.

◆ Int13

using zserio::Int13 = typedef detail::FixedIntWrapper<13, true>

Typedef for a zserio type.

Definition at line 746 of file Types.h.

◆ Int14

using zserio::Int14 = typedef detail::FixedIntWrapper<14, true>

Typedef for a zserio type.

Definition at line 747 of file Types.h.

◆ Int15

using zserio::Int15 = typedef detail::FixedIntWrapper<15, true>

Typedef for a zserio type.

Definition at line 748 of file Types.h.

◆ Int16

using zserio::Int16 = typedef detail::FixedIntWrapper<16, true>

Typedef for a zserio type.

Definition at line 749 of file Types.h.

◆ Int17

using zserio::Int17 = typedef detail::FixedIntWrapper<17, true>

Typedef for a zserio type.

Definition at line 750 of file Types.h.

◆ Int18

using zserio::Int18 = typedef detail::FixedIntWrapper<18, true>

Typedef for a zserio type.

Definition at line 751 of file Types.h.

◆ Int19

using zserio::Int19 = typedef detail::FixedIntWrapper<19, true>

Typedef for a zserio type.

Definition at line 752 of file Types.h.

◆ Int2

using zserio::Int2 = typedef detail::FixedIntWrapper<2, true>

Typedef for a zserio type.

Definition at line 735 of file Types.h.

◆ Int20

using zserio::Int20 = typedef detail::FixedIntWrapper<20, true>

Typedef for a zserio type.

Definition at line 753 of file Types.h.

◆ Int21

using zserio::Int21 = typedef detail::FixedIntWrapper<21, true>

Typedef for a zserio type.

Definition at line 754 of file Types.h.

◆ Int22

using zserio::Int22 = typedef detail::FixedIntWrapper<22, true>

Typedef for a zserio type.

Definition at line 755 of file Types.h.

◆ Int23

using zserio::Int23 = typedef detail::FixedIntWrapper<23, true>

Typedef for a zserio type.

Definition at line 756 of file Types.h.

◆ Int24

using zserio::Int24 = typedef detail::FixedIntWrapper<24, true>

Typedef for a zserio type.

Definition at line 757 of file Types.h.

◆ Int25

using zserio::Int25 = typedef detail::FixedIntWrapper<25, true>

Typedef for a zserio type.

Definition at line 758 of file Types.h.

◆ Int26

using zserio::Int26 = typedef detail::FixedIntWrapper<26, true>

Typedef for a zserio type.

Definition at line 759 of file Types.h.

◆ Int27

using zserio::Int27 = typedef detail::FixedIntWrapper<27, true>

Typedef for a zserio type.

Definition at line 760 of file Types.h.

◆ Int28

using zserio::Int28 = typedef detail::FixedIntWrapper<28, true>

Typedef for a zserio type.

Definition at line 761 of file Types.h.

◆ Int29

using zserio::Int29 = typedef detail::FixedIntWrapper<29, true>

Typedef for a zserio type.

Definition at line 762 of file Types.h.

◆ Int3

using zserio::Int3 = typedef detail::FixedIntWrapper<3, true>

Typedef for a zserio type.

Definition at line 736 of file Types.h.

◆ Int30

using zserio::Int30 = typedef detail::FixedIntWrapper<30, true>

Typedef for a zserio type.

Definition at line 763 of file Types.h.

◆ Int31

using zserio::Int31 = typedef detail::FixedIntWrapper<31, true>

Typedef for a zserio type.

Definition at line 764 of file Types.h.

◆ Int32

using zserio::Int32 = typedef detail::FixedIntWrapper<32, true>

Typedef for a zserio type.

Definition at line 765 of file Types.h.

◆ Int33

using zserio::Int33 = typedef detail::FixedIntWrapper<33, true>

Typedef for a zserio type.

Definition at line 766 of file Types.h.

◆ Int34

using zserio::Int34 = typedef detail::FixedIntWrapper<34, true>

Typedef for a zserio type.

Definition at line 767 of file Types.h.

◆ Int35

using zserio::Int35 = typedef detail::FixedIntWrapper<35, true>

Typedef for a zserio type.

Definition at line 768 of file Types.h.

◆ Int36

using zserio::Int36 = typedef detail::FixedIntWrapper<36, true>

Typedef for a zserio type.

Definition at line 769 of file Types.h.

◆ Int37

using zserio::Int37 = typedef detail::FixedIntWrapper<37, true>

Typedef for a zserio type.

Definition at line 770 of file Types.h.

◆ Int38

using zserio::Int38 = typedef detail::FixedIntWrapper<38, true>

Typedef for a zserio type.

Definition at line 771 of file Types.h.

◆ Int39

using zserio::Int39 = typedef detail::FixedIntWrapper<39, true>

Typedef for a zserio type.

Definition at line 772 of file Types.h.

◆ Int4

using zserio::Int4 = typedef detail::FixedIntWrapper<4, true>

Typedef for a zserio type.

Definition at line 737 of file Types.h.

◆ Int40

using zserio::Int40 = typedef detail::FixedIntWrapper<40, true>

Typedef for a zserio type.

Definition at line 773 of file Types.h.

◆ Int41

using zserio::Int41 = typedef detail::FixedIntWrapper<41, true>

Typedef for a zserio type.

Definition at line 774 of file Types.h.

◆ Int42

using zserio::Int42 = typedef detail::FixedIntWrapper<42, true>

Typedef for a zserio type.

Definition at line 775 of file Types.h.

◆ Int43

using zserio::Int43 = typedef detail::FixedIntWrapper<43, true>

Typedef for a zserio type.

Definition at line 776 of file Types.h.

◆ Int44

using zserio::Int44 = typedef detail::FixedIntWrapper<44, true>

Typedef for a zserio type.

Definition at line 777 of file Types.h.

◆ Int45

using zserio::Int45 = typedef detail::FixedIntWrapper<45, true>

Typedef for a zserio type.

Definition at line 778 of file Types.h.

◆ Int46

using zserio::Int46 = typedef detail::FixedIntWrapper<46, true>

Typedef for a zserio type.

Definition at line 779 of file Types.h.

◆ Int47

using zserio::Int47 = typedef detail::FixedIntWrapper<47, true>

Typedef for a zserio type.

Definition at line 780 of file Types.h.

◆ Int48

using zserio::Int48 = typedef detail::FixedIntWrapper<48, true>

Typedef for a zserio type.

Definition at line 781 of file Types.h.

◆ Int49

using zserio::Int49 = typedef detail::FixedIntWrapper<49, true>

Typedef for a zserio type.

Definition at line 782 of file Types.h.

◆ Int5

using zserio::Int5 = typedef detail::FixedIntWrapper<5, true>

Typedef for a zserio type.

Definition at line 738 of file Types.h.

◆ Int50

using zserio::Int50 = typedef detail::FixedIntWrapper<50, true>

Typedef for a zserio type.

Definition at line 783 of file Types.h.

◆ Int51

using zserio::Int51 = typedef detail::FixedIntWrapper<51, true>

Typedef for a zserio type.

Definition at line 784 of file Types.h.

◆ Int52

using zserio::Int52 = typedef detail::FixedIntWrapper<52, true>

Typedef for a zserio type.

Definition at line 785 of file Types.h.

◆ Int53

using zserio::Int53 = typedef detail::FixedIntWrapper<53, true>

Typedef for a zserio type.

Definition at line 786 of file Types.h.

◆ Int54

using zserio::Int54 = typedef detail::FixedIntWrapper<54, true>

Typedef for a zserio type.

Definition at line 787 of file Types.h.

◆ Int55

using zserio::Int55 = typedef detail::FixedIntWrapper<55, true>

Typedef for a zserio type.

Definition at line 788 of file Types.h.

◆ Int56

using zserio::Int56 = typedef detail::FixedIntWrapper<56, true>

Typedef for a zserio type.

Definition at line 789 of file Types.h.

◆ Int57

using zserio::Int57 = typedef detail::FixedIntWrapper<57, true>

Typedef for a zserio type.

Definition at line 790 of file Types.h.

◆ Int58

using zserio::Int58 = typedef detail::FixedIntWrapper<58, true>

Typedef for a zserio type.

Definition at line 791 of file Types.h.

◆ Int59

using zserio::Int59 = typedef detail::FixedIntWrapper<59, true>

Typedef for a zserio type.

Definition at line 792 of file Types.h.

◆ Int6

using zserio::Int6 = typedef detail::FixedIntWrapper<6, true>

Typedef for a zserio type.

Definition at line 739 of file Types.h.

◆ Int60

using zserio::Int60 = typedef detail::FixedIntWrapper<60, true>

Typedef for a zserio type.

Definition at line 793 of file Types.h.

◆ Int61

using zserio::Int61 = typedef detail::FixedIntWrapper<61, true>

Typedef for a zserio type.

Definition at line 794 of file Types.h.

◆ Int62

using zserio::Int62 = typedef detail::FixedIntWrapper<62, true>

Typedef for a zserio type.

Definition at line 795 of file Types.h.

◆ Int63

using zserio::Int63 = typedef detail::FixedIntWrapper<63, true>

Typedef for a zserio type.

Definition at line 796 of file Types.h.

◆ Int64

using zserio::Int64 = typedef detail::FixedIntWrapper<64, true>

Typedef for a zserio type.

Definition at line 797 of file Types.h.

◆ Int7

using zserio::Int7 = typedef detail::FixedIntWrapper<7, true>

Typedef for a zserio type.

Definition at line 740 of file Types.h.

◆ Int8

using zserio::Int8 = typedef detail::FixedIntWrapper<8, true>

Typedef for a zserio type.

Definition at line 741 of file Types.h.

◆ Int9

using zserio::Int9 = typedef detail::FixedIntWrapper<9, true>

Typedef for a zserio type.

Definition at line 742 of file Types.h.

◆ IntrospectableServiceData

template<typename ZSERIO_OBJECT >
using zserio::IntrospectableServiceData = typedef BasicIntrospectableServiceData<ZSERIO_OBJECT>

Typedef to service data implementation provided for convenience - using default std::allocator<uint8_t>.

Definition at line 257 of file IService.h.

◆ IReflectableData

Typedef to reflectable interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 190 of file IReflectableData.h.

◆ IReflectableDataConstPtr

Typedef to reflectable interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 192 of file IReflectableData.h.

◆ IReflectableDataPtr

Typedef to reflectable interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 191 of file IReflectableData.h.

◆ IService

using zserio::IService = typedef IBasicService<>

Typedef to service interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 250 of file IService.h.

◆ IServiceClient

Typedef to service interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 251 of file IService.h.

◆ IServiceData

Typedef to service interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 248 of file IService.h.

◆ IServiceDataPtr

Typedef to service interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 249 of file IService.h.

◆ ITypeInfo

using zserio::ITypeInfo = typedef IBasicTypeInfo<>

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 675 of file ITypeInfo.h.

◆ IWalkFilter

Typedefs to walk filter interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 104 of file IWalkFilter.h.

◆ IWalkObserver

Typedefs to walk observer interface provided for convenience - using default std::allocator<uint8_t>.

Definition at line 92 of file IWalkObserver.h.

◆ JsonParser

Typedef to Json Parser provided for convenience - using default std::allocator<uint8_t>.

Definition at line 359 of file JsonParser.h.

◆ JsonReader

Typedef to Json Reader provided for convenience - using default std::allocator<uint8_t>.

Definition at line 244 of file JsonReader.h.

◆ JsonWriter

Typedef to JsonWriter provided for convenience - using default std::allocator<uint8_t>.

Definition at line 189 of file JsonWriter.h.

◆ MessageInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 683 of file ITypeInfo.h.

◆ MethodInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 684 of file ITypeInfo.h.

◆ ObjectServiceData

Typedef to service data implementation provided for convenience - using default std::allocator<uint8_t>.

Definition at line 258 of file IService.h.

◆ offset_field_reference_t

template<typename T , typename V = void>
using zserio::offset_field_reference_t = typedef typename offset_field_reference<T, V>::type

Definition at line 256 of file Traits.h.

◆ Optional

template<typename T >
using zserio::Optional = typedef BasicOptional<std::allocator<uint8_t>, T>

Definition at line 713 of file Optional.h.

◆ ParameterInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 677 of file ITypeInfo.h.

◆ RawServiceDataHolder

Typedef to service data implementation provided for convenience - using default std::allocator<uint8_t>.

Definition at line 259 of file IService.h.

◆ RawServiceDataView

Typedef to service data implementation provided for convenience - using default std::allocator<uint8_t>.

Definition at line 260 of file IService.h.

◆ RebindAlloc

template<typename ALLOC , typename T >
using zserio::RebindAlloc = typedef typename std::allocator_traits<ALLOC>::template rebind_alloc<T>

Definition at line 10 of file RebindAlloc.h.

◆ RegexWalkFilter

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 447 of file Walker.h.

◆ String

using zserio::String = typedef BasicString<std::allocator<char> >

Typedef to std::string provided for convenience - using std::allocator<uint8_t>.

Definition at line 22 of file String.h.

◆ TableInfo

using zserio::TableInfo = typedef BasicTableInfo<>

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 681 of file ITypeInfo.h.

◆ TemplateArgumentInfo

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 682 of file ITypeInfo.h.

◆ UInt

template<size_t BIT_SIZE>
using zserio::UInt = typedef detail::FixedIntWrapper<BIT_SIZE, false>

Typedef for a zserio type.

Definition at line 868 of file Types.h.

◆ UInt1

using zserio::UInt1 = typedef detail::FixedIntWrapper<1, false>

Typedef for a zserio type.

Definition at line 799 of file Types.h.

◆ UInt10

using zserio::UInt10 = typedef detail::FixedIntWrapper<10, false>

Typedef for a zserio type.

Definition at line 808 of file Types.h.

◆ UInt11

using zserio::UInt11 = typedef detail::FixedIntWrapper<11, false>

Typedef for a zserio type.

Definition at line 809 of file Types.h.

◆ UInt12

using zserio::UInt12 = typedef detail::FixedIntWrapper<12, false>

Typedef for a zserio type.

Definition at line 810 of file Types.h.

◆ UInt13

using zserio::UInt13 = typedef detail::FixedIntWrapper<13, false>

Typedef for a zserio type.

Definition at line 811 of file Types.h.

◆ UInt14

using zserio::UInt14 = typedef detail::FixedIntWrapper<14, false>

Typedef for a zserio type.

Definition at line 812 of file Types.h.

◆ UInt15

using zserio::UInt15 = typedef detail::FixedIntWrapper<15, false>

Typedef for a zserio type.

Definition at line 813 of file Types.h.

◆ UInt16

using zserio::UInt16 = typedef detail::FixedIntWrapper<16, false>

Typedef for a zserio type.

Definition at line 814 of file Types.h.

◆ UInt17

using zserio::UInt17 = typedef detail::FixedIntWrapper<17, false>

Typedef for a zserio type.

Definition at line 815 of file Types.h.

◆ UInt18

using zserio::UInt18 = typedef detail::FixedIntWrapper<18, false>

Typedef for a zserio type.

Definition at line 816 of file Types.h.

◆ UInt19

using zserio::UInt19 = typedef detail::FixedIntWrapper<19, false>

Typedef for a zserio type.

Definition at line 817 of file Types.h.

◆ UInt2

using zserio::UInt2 = typedef detail::FixedIntWrapper<2, false>

Typedef for a zserio type.

Definition at line 800 of file Types.h.

◆ UInt20

using zserio::UInt20 = typedef detail::FixedIntWrapper<20, false>

Typedef for a zserio type.

Definition at line 818 of file Types.h.

◆ UInt21

using zserio::UInt21 = typedef detail::FixedIntWrapper<21, false>

Typedef for a zserio type.

Definition at line 819 of file Types.h.

◆ UInt22

using zserio::UInt22 = typedef detail::FixedIntWrapper<22, false>

Typedef for a zserio type.

Definition at line 820 of file Types.h.

◆ UInt23

using zserio::UInt23 = typedef detail::FixedIntWrapper<23, false>

Typedef for a zserio type.

Definition at line 821 of file Types.h.

◆ UInt24

using zserio::UInt24 = typedef detail::FixedIntWrapper<24, false>

Typedef for a zserio type.

Definition at line 822 of file Types.h.

◆ UInt25

using zserio::UInt25 = typedef detail::FixedIntWrapper<25, false>

Typedef for a zserio type.

Definition at line 823 of file Types.h.

◆ UInt26

using zserio::UInt26 = typedef detail::FixedIntWrapper<26, false>

Typedef for a zserio type.

Definition at line 824 of file Types.h.

◆ UInt27

using zserio::UInt27 = typedef detail::FixedIntWrapper<27, false>

Typedef for a zserio type.

Definition at line 825 of file Types.h.

◆ UInt28

using zserio::UInt28 = typedef detail::FixedIntWrapper<28, false>

Typedef for a zserio type.

Definition at line 826 of file Types.h.

◆ UInt29

using zserio::UInt29 = typedef detail::FixedIntWrapper<29, false>

Typedef for a zserio type.

Definition at line 827 of file Types.h.

◆ UInt3

using zserio::UInt3 = typedef detail::FixedIntWrapper<3, false>

Typedef for a zserio type.

Definition at line 801 of file Types.h.

◆ UInt30

using zserio::UInt30 = typedef detail::FixedIntWrapper<30, false>

Typedef for a zserio type.

Definition at line 828 of file Types.h.

◆ UInt31

using zserio::UInt31 = typedef detail::FixedIntWrapper<31, false>

Typedef for a zserio type.

Definition at line 829 of file Types.h.

◆ UInt32

using zserio::UInt32 = typedef detail::FixedIntWrapper<32, false>

Typedef for a zserio type.

Definition at line 830 of file Types.h.

◆ UInt33

using zserio::UInt33 = typedef detail::FixedIntWrapper<33, false>

Typedef for a zserio type.

Definition at line 831 of file Types.h.

◆ UInt34

using zserio::UInt34 = typedef detail::FixedIntWrapper<34, false>

Typedef for a zserio type.

Definition at line 832 of file Types.h.

◆ UInt35

using zserio::UInt35 = typedef detail::FixedIntWrapper<35, false>

Typedef for a zserio type.

Definition at line 833 of file Types.h.

◆ UInt36

using zserio::UInt36 = typedef detail::FixedIntWrapper<36, false>

Typedef for a zserio type.

Definition at line 834 of file Types.h.

◆ UInt37

using zserio::UInt37 = typedef detail::FixedIntWrapper<37, false>

Typedef for a zserio type.

Definition at line 835 of file Types.h.

◆ UInt38

using zserio::UInt38 = typedef detail::FixedIntWrapper<38, false>

Typedef for a zserio type.

Definition at line 836 of file Types.h.

◆ UInt39

using zserio::UInt39 = typedef detail::FixedIntWrapper<39, false>

Typedef for a zserio type.

Definition at line 837 of file Types.h.

◆ UInt4

using zserio::UInt4 = typedef detail::FixedIntWrapper<4, false>

Typedef for a zserio type.

Definition at line 802 of file Types.h.

◆ UInt40

using zserio::UInt40 = typedef detail::FixedIntWrapper<40, false>

Typedef for a zserio type.

Definition at line 838 of file Types.h.

◆ UInt41

using zserio::UInt41 = typedef detail::FixedIntWrapper<41, false>

Typedef for a zserio type.

Definition at line 839 of file Types.h.

◆ UInt42

using zserio::UInt42 = typedef detail::FixedIntWrapper<42, false>

Typedef for a zserio type.

Definition at line 840 of file Types.h.

◆ UInt43

using zserio::UInt43 = typedef detail::FixedIntWrapper<43, false>

Typedef for a zserio type.

Definition at line 841 of file Types.h.

◆ UInt44

using zserio::UInt44 = typedef detail::FixedIntWrapper<44, false>

Typedef for a zserio type.

Definition at line 842 of file Types.h.

◆ UInt45

using zserio::UInt45 = typedef detail::FixedIntWrapper<45, false>

Typedef for a zserio type.

Definition at line 843 of file Types.h.

◆ UInt46

using zserio::UInt46 = typedef detail::FixedIntWrapper<46, false>

Typedef for a zserio type.

Definition at line 844 of file Types.h.

◆ UInt47

using zserio::UInt47 = typedef detail::FixedIntWrapper<47, false>

Typedef for a zserio type.

Definition at line 845 of file Types.h.

◆ UInt48

using zserio::UInt48 = typedef detail::FixedIntWrapper<48, false>

Typedef for a zserio type.

Definition at line 846 of file Types.h.

◆ UInt49

using zserio::UInt49 = typedef detail::FixedIntWrapper<49, false>

Typedef for a zserio type.

Definition at line 847 of file Types.h.

◆ UInt5

using zserio::UInt5 = typedef detail::FixedIntWrapper<5, false>

Typedef for a zserio type.

Definition at line 803 of file Types.h.

◆ UInt50

using zserio::UInt50 = typedef detail::FixedIntWrapper<50, false>

Typedef for a zserio type.

Definition at line 848 of file Types.h.

◆ UInt51

using zserio::UInt51 = typedef detail::FixedIntWrapper<51, false>

Typedef for a zserio type.

Definition at line 849 of file Types.h.

◆ UInt52

using zserio::UInt52 = typedef detail::FixedIntWrapper<52, false>

Typedef for a zserio type.

Definition at line 850 of file Types.h.

◆ UInt53

using zserio::UInt53 = typedef detail::FixedIntWrapper<53, false>

Typedef for a zserio type.

Definition at line 851 of file Types.h.

◆ UInt54

using zserio::UInt54 = typedef detail::FixedIntWrapper<54, false>

Typedef for a zserio type.

Definition at line 852 of file Types.h.

◆ UInt55

using zserio::UInt55 = typedef detail::FixedIntWrapper<55, false>

Typedef for a zserio type.

Definition at line 853 of file Types.h.

◆ UInt56

using zserio::UInt56 = typedef detail::FixedIntWrapper<56, false>

Typedef for a zserio type.

Definition at line 854 of file Types.h.

◆ UInt57

using zserio::UInt57 = typedef detail::FixedIntWrapper<57, false>

Typedef for a zserio type.

Definition at line 855 of file Types.h.

◆ UInt58

using zserio::UInt58 = typedef detail::FixedIntWrapper<58, false>

Typedef for a zserio type.

Definition at line 856 of file Types.h.

◆ UInt59

using zserio::UInt59 = typedef detail::FixedIntWrapper<59, false>

Typedef for a zserio type.

Definition at line 857 of file Types.h.

◆ UInt6

using zserio::UInt6 = typedef detail::FixedIntWrapper<6, false>

Typedef for a zserio type.

Definition at line 804 of file Types.h.

◆ UInt60

using zserio::UInt60 = typedef detail::FixedIntWrapper<60, false>

Typedef for a zserio type.

Definition at line 858 of file Types.h.

◆ UInt61

using zserio::UInt61 = typedef detail::FixedIntWrapper<61, false>

Typedef for a zserio type.

Definition at line 859 of file Types.h.

◆ UInt62

using zserio::UInt62 = typedef detail::FixedIntWrapper<62, false>

Typedef for a zserio type.

Definition at line 860 of file Types.h.

◆ UInt63

using zserio::UInt63 = typedef detail::FixedIntWrapper<63, false>

Typedef for a zserio type.

Definition at line 861 of file Types.h.

◆ UInt64

using zserio::UInt64 = typedef detail::FixedIntWrapper<64, false>

Typedef for a zserio type.

Definition at line 862 of file Types.h.

◆ UInt7

using zserio::UInt7 = typedef detail::FixedIntWrapper<7, false>

Typedef for a zserio type.

Definition at line 805 of file Types.h.

◆ UInt8

using zserio::UInt8 = typedef detail::FixedIntWrapper<8, false>

Typedef for a zserio type.

Definition at line 806 of file Types.h.

◆ UInt9

using zserio::UInt9 = typedef detail::FixedIntWrapper<9, false>

Typedef for a zserio type.

Definition at line 807 of file Types.h.

◆ UniquePtr

template<typename T , typename ALLOC = std::allocator<T>>
using zserio::UniquePtr = typedef std::unique_ptr<T, detail::UniquePtrDeleter<ALLOC> >

Typedef to std::unique_ptr provided for convenience - using std::allocator.

Uses custom deleter to ensure proper deallocation.

Definition at line 76 of file UniquePtr.h.

◆ Variant

template<typename INDEX , typename... T>
using zserio::Variant = typedef BasicVariant<std::allocator<uint8_t>, INDEX, T...>

Definition at line 802 of file Variant.h.

◆ VarInt

using zserio::VarInt = typedef detail::VarIntWrapper<int64_t, detail::VarIntType::VAR>

Typedef for a zserio type.

Definition at line 883 of file Types.h.

◆ VarInt16

using zserio::VarInt16 = typedef detail::VarIntWrapper<int16_t, detail::VarIntType::VAR16>

Typedef for a zserio type.

Definition at line 880 of file Types.h.

◆ VarInt32

using zserio::VarInt32 = typedef detail::VarIntWrapper<int32_t, detail::VarIntType::VAR32>

Typedef for a zserio type.

Definition at line 881 of file Types.h.

◆ VarInt64

using zserio::VarInt64 = typedef detail::VarIntWrapper<int64_t, detail::VarIntType::VAR64>

Typedef for a zserio type.

Definition at line 882 of file Types.h.

◆ VarSize

using zserio::VarSize = typedef detail::VarIntWrapper<uint32_t, detail::VarIntType::VARSIZE>

Typedef for a zserio type.

Definition at line 890 of file Types.h.

◆ VarUInt

using zserio::VarUInt = typedef detail::VarIntWrapper<uint64_t, detail::VarIntType::VAR>

Typedef for a zserio type.

Definition at line 888 of file Types.h.

◆ VarUInt16

using zserio::VarUInt16 = typedef detail::VarIntWrapper<uint16_t, detail::VarIntType::VAR16>

Typedef for a zserio type.

Definition at line 885 of file Types.h.

◆ VarUInt32

using zserio::VarUInt32 = typedef detail::VarIntWrapper<uint32_t, detail::VarIntType::VAR32>

Typedef for a zserio type.

Definition at line 886 of file Types.h.

◆ VarUInt64

using zserio::VarUInt64 = typedef detail::VarIntWrapper<uint64_t, detail::VarIntType::VAR64>

Typedef for a zserio type.

Definition at line 887 of file Types.h.

◆ Vector

template<typename T , typename ALLOC = std::allocator<T>>
using zserio::Vector = typedef std::vector<T, ALLOC>

Typedef to std::vector provided for convenience - using std::allocator.

Definition at line 13 of file Vector.h.

◆ view_type_t

template<typename T , typename V = void>
using zserio::view_type_t = typedef typename view_type<T, V>::type

Definition at line 235 of file Traits.h.

◆ Walker

using zserio::Walker = typedef BasicWalker<>

Typedefs to walker related classes provided for convenience - using default std::allocator<uint8_t>.

Definition at line 443 of file Walker.h.

◆ ZserioTreeCreator

using zserio::ZserioTreeCreator = typedef BasicZserioTreeCreator<std::allocator<uint8_t> >

Typedef provided for convenience - using default std::allocator<uint8_t>.

Definition at line 565 of file ZserioTreeCreator.h.

Enumeration Type Documentation

◆ CppType

enum zserio::CppType
strong

Enumeration which specifies C++ type used in type information.

Enumerator
BOOL 

C++ bool type

INT8 

C++ int8_t type

INT16 

C++ int16_t type

INT32 

C++ int32_t type

INT64 

C++ int64_t type

UINT8 

C++ uint8_t type

UINT16 

C++ uint16_t type

UINT32 

C++ uint32_t type

UINT64 

C++ uint64_t type

FLOAT 

C++ float type

DOUBLE 

C++ double type

BYTES 

C++ bytes type (mapped as std::vector<uint8_t>)

STRING 

C++ string type

BIT_BUFFER 

C++ zserio::BitBuffer type

ENUM 

C++ enumeration generated from zserio enumeration type

BITMASK 

C++ object generated from zserio bitmask type

STRUCT 

C++ object generated from zserio structure type

CHOICE 

C++ object generated from zserio choice type

UNION 

C++ object generated from zserio union type

SQL_TABLE 

C++ object generated from zserio SQL table type

SQL_DATABASE 

C++ object generated from zserio SQL database type

SERVICE 

C++ object generated from zserio service type

PUBSUB 

C++ object generated from zserio pubsub type

Definition at line 14 of file ITypeInfo.h.

◆ JsonToken

enum zserio::JsonToken : int8_t
strong

Tokens used by Json Tokenizer.

Enumerator
UNKNOWN 
BEGIN_OF_FILE 
END_OF_FILE 
BEGIN_OBJECT 
END_OBJECT 
BEGIN_ARRAY 
END_ARRAY 
KEY_SEPARATOR 
ITEM_SEPARATOR 
VALUE 

Definition at line 20 of file JsonTokenizer.h.

◆ SchemaType

enum zserio::SchemaType
strong

Enumeration which specifies zserio type used in type information.

Enumerator
BOOL 

zserio bool type

INT1 

zserio int1 type

INT2 

zserio int2 type

INT3 

zserio int3 type

INT4 

zserio int4 type

INT5 

zserio int5 type

INT6 

zserio int6 type

INT7 

zserio int7 type

INT8 

zserio int8 type

INT9 

zserio int9 type

INT10 

zserio int10 type

INT11 

zserio int11 type

INT12 

zserio int12 type

INT13 

zserio int13 type

INT14 

zserio int14 type

INT15 

zserio int15 type

INT16 

zserio int16 type

INT17 

zserio int17 type

INT18 

zserio int18 type

INT19 

zserio int19 type

INT20 

zserio int20 type

INT21 

zserio int21 type

INT22 

zserio int22 type

INT23 

zserio int23 type

INT24 

zserio int24 type

INT25 

zserio int25 type

INT26 

zserio int26 type

INT27 

zserio int27 type

INT28 

zserio int28 type

INT29 

zserio int29 type

INT30 

zserio int30 type

INT31 

zserio int31 type

INT32 

zserio int32 type

INT33 

zserio int33 type

INT34 

zserio int34 type

INT35 

zserio int35 type

INT36 

zserio int36 type

INT37 

zserio int37 type

INT38 

zserio int38 type

INT39 

zserio int39 type

INT40 

zserio int40 type

INT41 

zserio int41 type

INT42 

zserio int42 type

INT43 

zserio int43 type

INT44 

zserio int44 type

INT45 

zserio int45 type

INT46 

zserio int46 type

INT47 

zserio int47 type

INT48 

zserio int48 type

INT49 

zserio int49 type

INT50 

zserio int50 type

INT51 

zserio int51 type

INT52 

zserio int52 type

INT53 

zserio int53 type

INT54 

zserio int54 type

INT55 

zserio int55 type

INT56 

zserio int56 type

INT57 

zserio int57 type

INT58 

zserio int58 type

INT59 

zserio int59 type

INT60 

zserio int60 type

INT61 

zserio int61 type

INT62 

zserio int62 type

INT63 

zserio int63 type

INT64 

zserio int64 type

UINT1 

zserio uint1 type

UINT2 

zserio uint2 type

UINT3 

zserio uint3 type

UINT4 

zserio uint4 type

UINT5 

zserio uint5 type

UINT6 

zserio uint6 type

UINT7 

zserio uint7 type

UINT8 

zserio uint8 type

UINT9 

zserio uint9 type

UINT10 

zserio uint10 type

UINT11 

zserio uint11 type

UINT12 

zserio uint12 type

UINT13 

zserio uint13 type

UINT14 

zserio uint14 type

UINT15 

zserio uint15 type

UINT16 

zserio uint16 type

UINT17 

zserio uint17 type

UINT18 

zserio uint18 type

UINT19 

zserio uint19 type

UINT20 

zserio uint20 type

UINT21 

zserio uint21 type

UINT22 

zserio uint22 type

UINT23 

zserio uint23 type

UINT24 

zserio uint24 type

UINT25 

zserio uint25 type

UINT26 

zserio uint26 type

UINT27 

zserio uint27 type

UINT28 

zserio uint28 type

UINT29 

zserio uint29 type

UINT30 

zserio uint30 type

UINT31 

zserio uint31 type

UINT32 

zserio uint32 type

UINT33 

zserio uint33 type

UINT34 

zserio uint34 type

UINT35 

zserio uint35 type

UINT36 

zserio uint36 type

UINT37 

zserio uint37 type

UINT38 

zserio uint38 type

UINT39 

zserio uint39 type

UINT40 

zserio uint40 type

UINT41 

zserio uint41 type

UINT42 

zserio uint42 type

UINT43 

zserio uint43 type

UINT44 

zserio uint44 type

UINT45 

zserio uint45 type

UINT46 

zserio uint46 type

UINT47 

zserio uint47 type

UINT48 

zserio uint48 type

UINT49 

zserio uint49 type

UINT50 

zserio uint50 type

UINT51 

zserio uint51 type

UINT52 

zserio uint52 type

UINT53 

zserio uint53 type

UINT54 

zserio uint54 type

UINT55 

zserio uint55 type

UINT56 

zserio uint56 type

UINT57 

zserio uint57 type

UINT58 

zserio uint58 type

UINT59 

zserio uint59 type

UINT60 

zserio uint60 type

UINT61 

zserio uint61 type

UINT62 

zserio uint62 type

UINT63 

zserio uint63 type

UINT64 

zserio uint64 type

VARINT16 

zserio varint16 type

VARINT32 

zserio varint32 type

VARINT64 

zserio varint64 type

VARINT 

zserio varint type

VARUINT16 

zserio varuint16 type

VARUINT32 

zserio varuint32 type

VARUINT64 

zserio varuint64 type

VARUINT 

zserio varuint type

VARSIZE 

zserio varsize type

DYNAMIC_SIGNED_BITFIELD 

zserio dynamic signed bitfield type

DYNAMIC_UNSIGNED_BITFIELD 

zserio dynamic unsigned bitfield type

FLOAT16 

zserio float16 type

FLOAT32 

zserio float32 type

FLOAT64 

zserio float64 type

BYTES 

zserio bytes type

STRING 

zserio string type

EXTERN 

zserio extern type

ENUM 

zserio enumeration type

BITMASK 

zserio bitmask type

STRUCT 

zserio structure type

CHOICE 

zserio choice type

UNION 

zserio union type

SQL_TABLE 

zserio SQL table type

SQL_DATABASE 

zserio SQL database type

SERVICE 

zserio service type

PUBSUB 

zserio pubsub type

Definition at line 44 of file ITypeInfo.h.

Function Documentation

◆ alignTo()

constexpr BitSize zserio::alignTo ( BitSize  alignmentValue,
BitSize  bitPosition 
)
inlineconstexpr

Aligns the bit size to the given alignment value.

Parameters
alignmentValueValue to align.
bitPositionCurrent bit position where to apply alignment.
Returns
Aligned bit position.

Definition at line 19 of file BitPositionUtil.h.

◆ allocate_unique()

template<typename T , typename ALLOC , class... Args>
UniquePtr<T, RebindAlloc<ALLOC, T> > zserio::allocate_unique ( const ALLOC &  allocator,
Args &&...  args 
)

Allocates memory for an object of type T using given allocator and constructs it passing args to its constructor.

Parameters
allocatorAllocator to use.
argsList of elements passed to T's constructor.
Returns
Object of type UniquePtr<T, ALLOC> that owns and stores a pointer to the constructed object.

Definition at line 88 of file UniquePtr.h.

◆ calcHashCode() [1/21]

template<typename ALLOC , typename T >
uint32_t zserio::calcHashCode ( uint32_t  seed,
const BasicOptional< ALLOC, T > &  opt 
)

Calculates Optional hash code from given seed.

Parameters
seedInitial hash value.
optOptional to calculate the hash from.
Returns
Calculated hash code.

Definition at line 724 of file Optional.h.

◆ calcHashCode() [2/21]

template<typename ALLOC , typename INDEX , typename... T>
uint32_t zserio::calcHashCode ( uint32_t  seed,
const BasicVariant< ALLOC, INDEX, T... > &  var 
)

Calculates variant hash code from given seed.

Parameters
seedInitial hash value.
varVariant to calculate the hash from.

Definition at line 891 of file Variant.h.

◆ calcHashCode() [3/21]

template<typename T >
uint32_t zserio::calcHashCode ( uint32_t  seed,
const Extended< T > &  extendedValue 
)

Calculates Optional hash code from given seed.

Parameters
seedInitial hash value.
varOptional to calculate the hash from.
Returns
Calculated hash code.

Definition at line 226 of file Extended.h.

◆ calcHashCode() [4/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
Bool  value 
)
inline

Calculates hash code of the given bool wrapper value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 102 of file HashCodeUtil.h.

◆ calcHashCode() [5/21]

template<typename T , typename ARRAY_TRAITS >
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
const ArrayView< T, ARRAY_TRAITS > &  array 
)

Definition at line 860 of file ArrayView.h.

◆ calcHashCode() [6/21]

template<typename ALLOC >
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
const BasicBitBuffer< ALLOC > &  value 
)

Calculates hash code of the given BitBuffer value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 567 of file BitBuffer.h.

◆ calcHashCode() [7/21]

template<typename ALLOC >
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
const BasicString< ALLOC > &  stringValue 
)
inline

Calculates hash code of the given string value using the given seed value.

Parameters
seedValueSeed value (current hash code).
stringValueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 175 of file HashCodeUtil.h.

◆ calcHashCode() [8/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
const BytesView bytes 
)
inline

Calculates hash code of the given BytesView type using the given seed value.

Parameters
seedValueSeed value (current hash code).
arrayArray for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 245 of file HashCodeUtil.h.

◆ calcHashCode() [9/21]

template<typename OBJECT >
std::enable_if_t<!std::is_enum_v<OBJECT> && !is_bitmask_v<OBJECT> && !std::is_integral_v<OBJECT>, uint32_t> zserio::calcHashCode ( uint32_t  seedValue,
const OBJECT &  object 
)
inline

Calculates hash code of the given Zserio object (structure, choice, ...) using the given seed value.

Parameters
seedValueSeed value (current hash code).
objectObject for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 231 of file HashCodeUtil.h.

◆ calcHashCode() [10/21]

template<typename ARRAY_ELEMENT , typename ALLOC >
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
const Vector< ARRAY_ELEMENT, ALLOC > &  array 
)
inline

Calculates hash code of the given Zserio array using the given seed value.

Parameters
seedValueSeed value (current hash code).
arrayArray for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 265 of file HashCodeUtil.h.

◆ calcHashCode() [11/21]

template<typename VALUE_TYPE >
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
detail::DynIntWrapper< VALUE_TYPE >  value 
)
inline

Calculates hash code of the given dynamic int wrapper value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 131 of file HashCodeUtil.h.

◆ calcHashCode() [12/21]

template<BitSize BIT_SIZE, bool IS_SIGNED>
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED >  value 
)
inline

Calculates hash code of the given int wrapper value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 116 of file HashCodeUtil.h.

◆ calcHashCode() [13/21]

template<typename VALUE_TYPE , detail::FloatType FLOAT_TYPE>
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
detail::FloatWrapper< VALUE_TYPE, FLOAT_TYPE >  value 
)
inline

Calculates hash code of the given floating-point wrapper value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 159 of file HashCodeUtil.h.

◆ calcHashCode() [14/21]

template<typename VALUE_TYPE , detail::VarIntType VAR_TYPE>
uint32_t zserio::calcHashCode ( uint32_t  seedValue,
detail::VarIntWrapper< VALUE_TYPE, VAR_TYPE >  value 
)
inline

Calculates hash code of the given variable int wrapper value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 145 of file HashCodeUtil.h.

◆ calcHashCode() [15/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
double  value 
)
inline

Calculates hash code of the given double value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 89 of file HashCodeUtil.h.

◆ calcHashCode() [16/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
float  value 
)
inline

Calculates hash code of the given float value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 76 of file HashCodeUtil.h.

◆ calcHashCode() [17/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
std::monostate   
)
inline

Calculates the hash code of std::monostate which is often used in variants so the hash code is not implementation defined.

Parameters
seedValueSeed value (current hash code)
Returns
Calculated hash code.

Definition at line 284 of file HashCodeUtil.h.

◆ calcHashCode() [18/21]

uint32_t zserio::calcHashCode ( uint32_t  seedValue,
std::string_view  stringValue 
)
inline

Calculates hash code of the given string value using the given seed value.

Parameters
seedValueSeed value (current hash code).
stringValueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 194 of file HashCodeUtil.h.

◆ calcHashCode() [19/21]

template<typename T >
std::enable_if<std::is_integral<T>::value && (sizeof(T) <= 4), uint32_t>::type zserio::calcHashCode ( uint32_t  seedValue,
value 
)
inline

Calculates hash code of the given integral value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 46 of file HashCodeUtil.h.

◆ calcHashCode() [20/21]

template<typename T >
std::enable_if<std::is_integral<T>::value && (sizeof(T) > 4), uint32_t>::type zserio::calcHashCode ( uint32_t  seedValue,
value 
)
inline

Calculates hash code of the given integral value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueValue for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 61 of file HashCodeUtil.h.

◆ calcHashCode() [21/21]

template<typename T >
std::enable_if_t<std::is_enum_v<T> || is_bitmask_v<T>, uint32_t> zserio::calcHashCode ( uint32_t  seedValue,
value 
)
inline

Calculates hash code of the given enum item or bitmask value using the given seed value.

Parameters
seedValueSeed value (current hash code).
valueEnum item or bitmask value for which to calculate the hash code.
Returns
Calculated hash code.

Definition at line 214 of file HashCodeUtil.h.

◆ calcHashCodeFirstTerm()

uint32_t zserio::calcHashCodeFirstTerm ( uint32_t  seedValue)
inline

Gets initial hash code calculated from the given seed value.

Parameters
seedValueSeed value (current hash code).
Returns
Hash code.

Definition at line 32 of file HashCodeUtil.h.

◆ constructWithAllocator() [1/2]

template<typename T , typename ALLOC , typename U , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T zserio::constructWithAllocator ( const ALLOC &  ,
value 
)
constexpr

Overload needed to suppress conversion warnings when constructing numeric types.

Parameters
allocatorAllocator which is always ignored in this overload.
valueValue of type U convertible to the ValueType of numeric wrapper T.

Definition at line 286 of file Traits.h.

◆ constructWithAllocator() [2/2]

template<typename T , typename ALLOC , typename... ARGS>
constexpr T zserio::constructWithAllocator ( const ALLOC &  allocator,
ARGS &&...  args 
)
constexpr

Helper function to construct object of generic type T with allocator argument if supported. When the type T is not constructible with allocator, the allocator argument is ignored.

Parameters
allocatorAllocator to use if constructor with an allocator exists.
argsOther arguments to constructor.

Definition at line 267 of file Traits.h.

◆ convertBoolToString()

const char* zserio::convertBoolToString ( bool  value)
inline

Converts bool value to boolalpha C-string ("true" or "false").

Parameters
valueValue to convert.
Returns
C-string representation of the given bool value.

Definition at line 151 of file StringConvertUtil.h.

◆ convertDoubleToUInt64()

uint64_t zserio::convertDoubleToUInt64 ( double  float64)

Converts 64-bit float (double) to 64-bit float (double) stored in uint64_t value.

Parameters
float64Double precision float to convert.
Returns
Converted double precision float value stored in uint64_t.

Definition at line 193 of file FloatUtil.cpp.

◆ convertFloatToString()

void zserio::convertFloatToString ( std::array< char, 24 > &  integerPartBuffer,
std::array< char, 24 > &  floatingPartBuffer,
float  value,
const char *&  integerPartString,
const char *&  floatingPartString 
)
inline

Converts float to string and writes the result to the given buffer.

Note that only five three digits after point are used and that the buffers are filled from behind.

Parameters
integerPartBufferBuffer to fill with the string representation of the integer part.
floatingPartBufferBuffer to fill with the string representation of the floating part.
valueValue to convert.
floatingPartStringReference where to fill pointer to the beginning of the floating part in string.
integerPartStringReference where to fill pointer to the beginning of the integer part in string.

Definition at line 119 of file StringConvertUtil.h.

◆ convertFloatToUInt16()

uint16_t zserio::convertFloatToUInt16 ( float  float32)

Converts 32-bit float to 16-bit float stored in uint16_t value.

Parameters
float32Single precision float to convert.
Returns
Converted half precision float value stored in uint16_t.

Definition at line 83 of file FloatUtil.cpp.

◆ convertFloatToUInt32()

uint32_t zserio::convertFloatToUInt32 ( float  float32)

Converts 32-bit float to 32-bit float stored in uint32_t value.

Parameters
float32Single precision float to convert.
Returns
Converted single precision float value stored in uint32_t.

Definition at line 177 of file FloatUtil.cpp.

◆ convertIntToString()

template<typename T , std::enable_if_t< std::is_unsigned_v< T >, int > = 0>
const char * zserio::convertIntToString ( std::array< char, 24 > &  buffer,
value 
)

Converts unsigned integral value to string and writes the result to the given buffer.

Note that the buffer is filled from behind.

Parameters
bufferBuffer to fill with the string representation of the given value.
valueValue to convert.
Returns
Pointer to the beginning of the resulting string.

Converts signed integral value to string and writes the result to the given buffer.

Note that the buffer is filled from behind.

Parameters
bufferBuffer to fill with the string representation of the given value.
valueValue to convert.
Returns
Pointer to the beginning of the resulting string.

Definition at line 79 of file StringConvertUtil.h.

◆ convertSizeToUInt32()

uint32_t zserio::convertSizeToUInt32 ( size_t  value)

Converts size (array size, string size or bit buffer size) of type size_t to uint32_t value.

Parameters
valueSize of type size_t to convert.
Returns
uint32_t value converted from size.
Exceptions
CppRuntimeExceptionwhen input value is not convertible to uint32_t value.

Definition at line 11 of file SizeConvertUtil.cpp.

◆ convertUInt16ToFloat()

float zserio::convertUInt16ToFloat ( uint16_t  float16Value)

Converts 16-bit float stored in uint16_t value to 32-bit float.

Parameters
float16ValueHalf precision float value stored in uint16_t to convert.
Returns
Converted single precision float.

Definition at line 32 of file FloatUtil.cpp.

◆ convertUInt32ToFloat()

float zserio::convertUInt32ToFloat ( uint32_t  float32Value)

Converts 32-bit float stored in uint32_t value to 32-bit float.

Parameters
float32ValueSingle precision float value stored in uint32_t to convert.
Returns
Converted single precision float.

Definition at line 169 of file FloatUtil.cpp.

◆ convertUInt64ToDouble()

double zserio::convertUInt64ToDouble ( uint64_t  float64Value)

Converts 64-bit float (double) stored in uint64_t value to 64-bit float (double).

Parameters
float64ValueDouble precision float value stored in uint64_t to convert.
Returns
Converted double precision float.

Definition at line 185 of file FloatUtil.cpp.

◆ convertUInt64ToSize()

size_t zserio::convertUInt64ToSize ( uint64_t  value)

Converts uint64_t value to size (array size, string size of bit buffer size).

Parameters
valueuint64_t value to convert.
Returns
size_t value converted from uint64_t value.
Exceptions
CppRuntimeExceptionwhen input value is not convertible to size_t value.

Definition at line 24 of file SizeConvertUtil.cpp.

◆ DataView()

template<typename T , typename... ARGS>
zserio::DataView ( ,
ARGS &&  ... 
) -> DataView< T >

◆ deserialize() [1/3]

template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
DataView<T> zserio::deserialize ( const BasicBitBuffer< ALLOC > &  buffer,
ARGS &&...  arguments 
)

Deserializes bit buffer to DataView.

The memory for deserialization is allocated using new allocator of the type defined by the Zserio object.

Example:

const zserio::BitBuffer bitBuffer = zserio::serialize(objectData);
zserio::DataView<SomeZserioObject> objectView = zserio::deserialize(bitBuffer, allocator);
BasicBitBuffer< ALLOC > serialize(const T &data, const ALLOC &allocator, ARGS &&... arguments)
Definition: SerializeUtil.h:53
View< T > deserialize(const BasicBitBuffer< ALLOC > &buffer, T &data, ARGS &&... arguments)
Parameters
bitBufferBit buffer to use.
argumentsAll parameters in case of Zserio parameterized type.
Returns
DataView of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 551 of file SerializeUtil.h.

◆ deserialize() [2/3]

template<typename T , typename ALLOC , typename... ARGS>
DataView<T> zserio::deserialize ( const BasicBitBuffer< ALLOC > &  buffer,
const typename T::allocator_type &  allocator,
ARGS &&...  arguments 
)

Deserializes bit buffer to DataView using given allocator.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
const auto bitBuffer = zserio::serialize(objectData, allocator);
zserio::DataView<SomeZserioObject> objectView = zserio::deserialize(bitBuffer, allocator);
Parameters
bitBufferBit buffer to use.
allocatorAllocator to use to allocate data for DataView.
argumentsAll parameters in case of Zserio parameterized type.
Returns
DataView of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 489 of file SerializeUtil.h.

◆ deserialize() [3/3]

template<typename T , typename ALLOC , typename... ARGS>
View<T> zserio::deserialize ( const BasicBitBuffer< ALLOC > &  buffer,
T &  data,
ARGS &&...  arguments 
)

Deserializes bit buffer to instance of generated object.

Example:

SomeZserioObject objectData;
const zserio::BitBuffer bitBuffer = zserio::serialize(objectData);
zserio::View<SomeZserioObject> objectView = zserio::deserialize(bitBuffer, objectData);
Parameters
bufferBit buffer to use.
dataData of Zserio object to fill.
argumentsAll parameters in case of Zserio parameterized type.
Returns
View of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 175 of file SerializeUtil.h.

◆ deserializeFromBytes() [1/3]

template<typename T , typename... ARGS, std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
DataView<T> zserio::deserializeFromBytes ( Span< const uint8_t >  buffer,
ARGS &&...  arguments 
)

Deserializes byte buffer to DataView.

Example:

const auto buffer = zserio::serializeToBytes(objectData);
View< T > deserializeFromBytes(Span< const uint8_t > buffer, T &data, ARGS &&... arguments)
Vector< uint8_t, ALLOC > serializeToBytes(const T &data, const ALLOC &allocator, ARGS &&... arguments)
Definition: SerializeUtil.h:87
Parameters
bufferByte buffer to use.
argumentsAll parameters in case of Zserio parameterized type.
Returns
DataView of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 575 of file SerializeUtil.h.

◆ deserializeFromBytes() [2/3]

template<typename T , typename... ARGS>
DataView<T> zserio::deserializeFromBytes ( Span< const uint8_t >  buffer,
const typename T::allocator_type &  allocator,
ARGS &&...  arguments 
)

Deserializes byte buffer to DataView using given allocator.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
const auto buffer = zserio::serializeToBytes(objectData, allocator);
Parameters
bufferByte buffer to use.
allocatorAllocator to use to allocate data for DataView.
argumentsAll parameters in case of Zserio parameterized type.
Returns
DataView of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 520 of file SerializeUtil.h.

◆ deserializeFromBytes() [3/3]

template<typename T , typename... ARGS>
View<T> zserio::deserializeFromBytes ( Span< const uint8_t >  buffer,
T &  data,
ARGS &&...  arguments 
)

Deserializes byte buffer to instance of generated object.

Example:

SomeZserioObject objectData;
const auto buffer = zserio::serializeToBytes(objectData);
Parameters
bufferByte buffer to use.
dataData of Zserio object to fill.
argumentsAll parameters in case of Zserio parameterized type.
Returns
View of Zserio object created from the given bit buffer.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 203 of file SerializeUtil.h.

◆ deserializeFromFile() [1/2]

template<typename T , typename... ARGS>
DataView<T> zserio::deserializeFromFile ( std::string_view  fileName,
ARGS &&...  arguments 
)

Deserializes given file contents to DataView with Zserio object.

Example:

std::string_view fileName("FileName.bin");
SomeZserioObject objectData;
zserio::serializeToFile(objectData, fileName);
View< T > deserializeFromFile(std::string_view fileName, T &data, ARGS &&... arguments)
void serializeToFile(const View< T > &view, std::string_view fileName)
Note
Please note that BitBuffer is always allocated using 'std::allocator<uint8_t>'.
Parameters
fileNameFile to use.
argumentsAll parameters in case of Zserio parameterized type.
Returns
View of Zserio object created from the given file.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 704 of file SerializeUtil.h.

◆ deserializeFromFile() [2/2]

template<typename T , typename... ARGS>
View<T> zserio::deserializeFromFile ( std::string_view  fileName,
T &  data,
ARGS &&...  arguments 
)

Deserializes given file contents to instance of Zserio object.

Example:

std::string_view fileName("FileName.bin");
SomeZserioObject objectData;
zserio::serializeToFile(objectData, fileName);
Note
Please note that BitBuffer is always allocated using 'std::allocator<uint8_t>'.
Parameters
fileNameFile to use.
argumentsAll parameters in case of Zserio parameterized type.
Returns
View of Zserio object created from the given file.
Exceptions
CppRuntimeExceptionWhen deserialization fails.

Definition at line 675 of file SerializeUtil.h.

◆ enumToOrdinal()

template<typename T >
size_t zserio::enumToOrdinal ( value)

Gets ordinal number of the given enum item.

Parameters
valueEnum item.
Returns
Ordinal number of the enum item.

◆ enumToString()

template<typename T >
std::string_view zserio::enumToString ( value)

Gets the name of the given enum item.

Parameters
valueEnum item.
Returns
Name of the enum item.

Definition at line 95 of file Enums.h.

◆ enumToValue()

template<typename T >
constexpr EnumTraits<T>::ZserioType zserio::enumToValue ( value)
constexpr

Gets the underlying raw value of the given enum item.

Parameters
valueEnum item.
Returns
Raw value.

Definition at line 56 of file Enums.h.

◆ fromCheckedValue() [1/2]

template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T zserio::fromCheckedValue ( typename T::ValueType  value)
constexprnoexcept

Utility to safely construct zserio numeric type wrapper from its underlying value with range checking.

Parameters
valueUnderlying value to convert to the type wrapper.
Returns
Numeric type wrapper constructed after range checking (if needed).
Exceptions
OutOfRangeExceptionwhen the underlying value is out of range of the zserio numeric type.

Definition at line 659 of file Types.h.

◆ fromCheckedValue() [2/2]

template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T zserio::fromCheckedValue ( typename T::ValueType  value,
BitSize  numBits 
)
constexpr

Utility to safely construct zserio numeric type wrapper from its underlying value with range checking.

Overload for dynamic length types wrappers.

Parameters
valueUnderlying value to convert to the type wrapper.
numBitsNumber of bits as a length of a dynamic length numeric type.
Returns
Numeric type wrapper constructed after range checking (if needed).
Exceptions
OutOfRangeExceptionwhen the underlying value is out of range of the zserio numeric type.

Definition at line 682 of file Types.h.

◆ fromJsonFile() [1/2]

template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits<ALLOC>::ReflectableDataPtr zserio::fromJsonFile ( const IBasicTypeInfo< ALLOC > &  typeInfo,
std::string_view  fileName,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given text file and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.

Example:

#include <sstream>
IReflectableDataPtr reflectable = fromJsonFile(typeInfo<SomeZserioObject>(), "FileName.json");
reflectable->getField("fieldU32")->getUInt32(); // 13
IBasicReflectableDataConstPtr< ALLOC > reflectable(const T &value, const ALLOC &allocator=ALLOC())
IBasicReflectableDataPtr<> IReflectableDataPtr
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonFile(const IBasicTypeInfo< ALLOC > &typeInfo, std::string_view fileName, const ALLOC &allocator=ALLOC())
Parameters
typeInfoType info of the generated zserio object to create.
fileNameName of file to read.
allocatorAllocator to use.
Returns
Reflectable instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 582 of file DebugStringUtil.h.

◆ fromJsonFile() [2/2]

template<typename T , typename ALLOC = typename T::allocator_type>
T zserio::fromJsonFile ( std::string_view  fileName,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given text file and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.
An reflectable instance is created first and then the object is move-constructed from it's any value.

Example:

#include <sstream>
SomeZserioObject someZserioObject = fromJsonFile<SomeZserioObject>("FileName.json");
someZserioObject.getFieldU32(); // 13
Parameters
fileNameName of file to read.
allocatorAllocator to use.
Returns
Instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 618 of file DebugStringUtil.h.

◆ fromJsonStream() [1/2]

template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits<ALLOC>::ReflectableDataPtr zserio::fromJsonStream ( const IBasicTypeInfo< ALLOC > &  typeInfo,
std::istream &  is,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given text stream and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.

Example:

#include <sstream>
std::istringstream is("{ \"fieldU32\": 13 }");
IReflectableDataPtr reflectable = fromJsonStream(typeInfo<SomeZserioObject>(), is);
reflectable->getField("fieldU32")->getUInt32(); // 13
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonStream(const IBasicTypeInfo< ALLOC > &typeInfo, std::istream &is, const ALLOC &allocator=ALLOC())
Parameters
typeInfoType info of the generated zserio object to create.
isText stream to use.
allocatorAllocator to use.
Returns
Reflectable instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 458 of file DebugStringUtil.h.

◆ fromJsonStream() [2/2]

template<typename T , typename ALLOC = typename T::allocator_type>
T zserio::fromJsonStream ( std::istream &  is,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given text stream and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.
An reflectable instance is created first and then the object is move-constructed from it's any value.

Example:

#include <sstream>
std::istringstream is("{ \"fieldU32\": 13 }");
SomeZserioObject someZserioObject = fromJsonStream<SomeZserioObject>(is);
someZserioObject.getFieldU32(); // 13
Parameters
isText stream to use.
allocatorAllocator to use.
Returns
Instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 490 of file DebugStringUtil.h.

◆ fromJsonString() [1/2]

template<typename T , typename ALLOC = typename T::allocator_type>
T zserio::fromJsonString ( const BasicString< RebindAlloc< ALLOC, char >> &  json,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given JSON string and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.
An reflectable instance is created first and then the object is move-constructed from it's any value.

Example:

#include <sstream>
std::string str("{ \"fieldU32\": 13 }")
SomeZserioObject someZserioObject = fromJsonString<SomeZserioObject>(str);
someZserioObject.getFieldU32(); // 13
detail::DebugStringTraits< ALLOC >::ReflectableDataPtr fromJsonString(const IBasicTypeInfo< ALLOC > &typeInfo, const BasicString< RebindAlloc< ALLOC, char >> &json, const ALLOC &allocator=ALLOC())
Parameters
jsonString to use.
allocatorAllocator to use.
Returns
Instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 553 of file DebugStringUtil.h.

◆ fromJsonString() [2/2]

template<typename ALLOC = std::allocator<uint8_t>>
detail::DebugStringTraits<ALLOC>::ReflectableDataPtr zserio::fromJsonString ( const IBasicTypeInfo< ALLOC > &  typeInfo,
const BasicString< RebindAlloc< ALLOC, char >> &  json,
const ALLOC &  allocator = ALLOC() 
)

Parses JSON debug string from given JSON string and creates instance of the requested zserio object according to the data contained in the debug string.

Note
The created object can be only partially initialized depending on the JSON debug string.

Example:

#include <sstream>
std::string str("{ \"fieldU32\": 13 }")
reflectable->getField("fieldU32")->getUInt32(); // 13
const IBasicTypeInfo< ALLOC > & typeInfo()
Definition: ITypeInfo.h:668
Parameters
typeInfoType info of the generated zserio object to create.
jsonString to use.
allocatorAllocator to use.
Returns
Reflectable instance of the requested zserio object.
Exceptions
CppRuntimeExceptionIn case of any error.

Definition at line 520 of file DebugStringUtil.h.

◆ genericAccessor() [1/6]

template<typename ALLOC , typename T >
auto& zserio::genericAccessor ( BasicOptional< ALLOC, T > &  optionalValue)

Definition at line 65 of file GenericAccessor.h.

◆ genericAccessor() [2/6]

template<typename ALLOC , typename T >
const auto& zserio::genericAccessor ( const BasicOptional< ALLOC, T > &  optionalValue)

Definition at line 47 of file GenericAccessor.h.

◆ genericAccessor() [3/6]

template<typename T >
const auto& zserio::genericAccessor ( const Extended< T > &  extendedValue)

Definition at line 53 of file GenericAccessor.h.

◆ genericAccessor() [4/6]

template<typename T >
const T& zserio::genericAccessor ( const T &  value)

Definition at line 41 of file GenericAccessor.h.

◆ genericAccessor() [5/6]

template<typename T >
auto& zserio::genericAccessor ( Extended< T > &  extendedValue)

Definition at line 71 of file GenericAccessor.h.

◆ genericAccessor() [6/6]

template<typename T >
T& zserio::genericAccessor ( T &  value)

Definition at line 59 of file GenericAccessor.h.

◆ get() [1/2]

template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::get ( BasicVariant< ALLOC, INDEX, T... > &  var)

Gets value of an element at given index.

Parameters
varVariant to be accessed.
Exceptions
CppRuntimeExceptionif the requested type doesn't match to the stored value.

Definition at line 812 of file Variant.h.

◆ get() [2/2]

template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::get ( const BasicVariant< ALLOC, INDEX, T... > &  var)

Gets value of an element at given index.

Parameters
varVariant to be accessed.
Exceptions
CppRuntimeExceptionif the requested type doesn't match to the stored value.

Definition at line 826 of file Variant.h.

◆ get_if() [1/2]

template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::get_if ( BasicVariant< ALLOC, INDEX, T... > *  var)
Parameters
varVariant to be accessed. Returns a pointer to an element at index I or nullptr if index doesn't match.

Definition at line 838 of file Variant.h.

◆ get_if() [2/2]

template<auto I, typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::get_if ( const BasicVariant< ALLOC, INDEX, T... > *  var)

Returns a pointer to an element at index I or nullptr if index doesn't match.

Parameters
varVariant to be accessed.

Definition at line 850 of file Variant.h.

◆ getBitFieldLowerBound()

int64_t zserio::getBitFieldLowerBound ( size_t  length,
bool  isSigned 
)

Calculates lower bound for the given bit field.

Parameters
lengthLength of the bit field.
isSignedWhether the bit field is signed.
Returns
Lower bound for the bit field.

Definition at line 15 of file BitFieldUtil.cpp.

◆ getBitFieldUpperBound()

uint64_t zserio::getBitFieldUpperBound ( size_t  length,
bool  isSigned 
)

Calculates lower bound for the given bit field.

Parameters
lengthLength of the bit field.
isSignedWhether the bit field is signed.
Returns
Upper bound for the bit field.

Definition at line 29 of file BitFieldUtil.cpp.

◆ introspectable() [1/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( BasicBitBufferView< ALLOC >  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 868 of file IntrospectableView.h.

◆ introspectable() [2/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( Bool  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 685 of file IntrospectableView.h.

◆ introspectable() [3/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( BytesView  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 856 of file IntrospectableView.h.

◆ introspectable() [4/10]

template<typename T , typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( const View< detail::DynIntWrapper< T >> &  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 738 of file IntrospectableView.h.

◆ introspectable() [5/10]

template<typename T , typename ALLOC = typename T::allocator_type>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( const View< T > &  view,
const ALLOC &  allocator = ALLOC() 
)

Gets reflectable for the given object.

Parameters
valueObject value to reflect.
allocatorAllocator to use for reflectable allocation.
Returns
Reflectable to the given object.

Definition at line 103 of file IIntrospectableView.h.

◆ introspectable() [6/10]

template<BitSize BIT_SIZE, bool IS_SIGNED, typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED >  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 691 of file IntrospectableView.h.

◆ introspectable() [7/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > zserio::introspectable ( Float16  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 838 of file IntrospectableView.h.

◆ introspectable() [8/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( std::string_view  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 862 of file IntrospectableView.h.

◆ introspectable() [9/10]

template<typename T , typename ALLOC = std::allocator<uint8_t>, std::enable_if_t< std::is_enum_v< T >||is_bitmask_v< T >, int > = 0>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectable ( value,
const ALLOC &  allocator = ALLOC() 
)

Gets reflectable for the given object.

Parameters
valueObject value to reflect.
allocatorAllocator to use for reflectable allocation.
Returns
Reflectable to the given object.

Definition at line 110 of file IIntrospectableView.h.

◆ introspectable() [10/10]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr< ALLOC > zserio::introspectable ( VarInt16  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 784 of file IntrospectableView.h.

◆ introspectableArray()

template<typename T , typename TRAITS , typename ALLOC = std::allocator<uint8_t>>
IBasicIntrospectableViewConstPtr<ALLOC> zserio::introspectableArray ( ArrayView< T, TRAITS >  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 1157 of file IntrospectableView.h.

◆ make_optional() [1/2]

template<typename T , typename... ARGS>
constexpr Optional<T> zserio::make_optional ( ARGS &&...  args)
constexpr

Calls Optional<T> constructor with arguments for T.

Parameters
argsVariadic arguments for T construction.
Returns
Optional with value set.

Definition at line 755 of file Optional.h.

◆ make_optional() [2/2]

template<typename T >
constexpr auto zserio::make_optional ( T &&  value)
constexpr

Calls Optional constructor with value.

Parameters
valueValue to copy.
Returns
Optional with value set.

Definition at line 742 of file Optional.h.

◆ operator!=() [1/9]

template<typename ALLOC >
bool zserio::operator!= ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 513 of file BitBuffer.h.

◆ operator!=() [2/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator!= ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional inequality test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt's value is not equal to value.

Definition at line 881 of file Optional.h.

◆ operator!=() [3/9]

template<typename A , typename T >
constexpr bool zserio::operator!= ( const BasicOptional< A, T > &  opt,
std::nullopt_t   
)
constexpr

Optional inequality test with nullopt.

Parameters
optThe optional to compare.
Returns
Optional is not empty.

Definition at line 854 of file Optional.h.

◆ operator!=() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator!= ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional inequality test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first and second are not equal.

Definition at line 841 of file Optional.h.

◆ operator!=() [5/9]

bool zserio::operator!= ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 43 of file Bytes.h.

◆ operator!=() [6/9]

template<typename T >
bool zserio::operator!= ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 180 of file Extended.h.

◆ operator!=() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator!= ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional inequality test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt's value is not equal to value.

Definition at line 895 of file Optional.h.

◆ operator!=() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator!= ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 185 of file View.h.

◆ operator!=() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator!= ( std::nullopt_t  ,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional inequality test with nullopt.

Parameters
optThe optional to compare.
Returns
Optional is not empty.

Definition at line 867 of file Optional.h.

◆ operator<() [1/9]

template<typename ALLOC >
bool zserio::operator< ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 519 of file BitBuffer.h.

◆ operator<() [2/9]

template<typename A , typename T >
constexpr bool zserio::operator< ( const BasicOptional< A, T > &  ,
std::nullopt_t   
)
constexpr

Optional less-than test with nullopt.

Parameters
optThe optional to compare.
Returns
false.

Definition at line 926 of file Optional.h.

◆ operator<() [3/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator< ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional less-than test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt is less than value.

Definition at line 953 of file Optional.h.

◆ operator<() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator< ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional less-than test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first is less than second.

Definition at line 909 of file Optional.h.

◆ operator<() [5/9]

bool zserio::operator< ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 48 of file Bytes.h.

◆ operator<() [6/9]

template<typename T >
bool zserio::operator< ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 186 of file Extended.h.

◆ operator<() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator< ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional less-than test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
value is less than opt.

Definition at line 967 of file Optional.h.

◆ operator<() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator< ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 192 of file View.h.

◆ operator<() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator< ( std::nullopt_t  ,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional less-than test with nullopt.

Parameters
optThe optional to compare.
Returns
nullopt is less than opt.

Definition at line 939 of file Optional.h.

◆ operator<<() [1/14]

template<typename CPP_RUNTIME_EXCEPTION , typename T >
detail::CppRuntimeExceptionRValueInsertion<CPP_RUNTIME_EXCEPTION, T> zserio::operator<< ( CPP_RUNTIME_EXCEPTION &&  exception,
const T &  value 
)

Appends any value for which operator<< is implemented to the exception's description.

Overload for rvalue to enable operator<< on a temporary object, .e.g. CppRuntimeException() << "value". Moreover note that this overload preserves the concrete type of the exception!

Parameters
exceptionException to modify.
valueValue to append.
Returns
R-value reference to the original exception to allow operator chaining.

Definition at line 159 of file CppRuntimeException.h.

◆ operator<<() [2/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
bool  value 
)

Appends a bool value to the exception's description.

Parameters
exceptionException to modify.
valueBool value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 50 of file CppRuntimeException.cpp.

◆ operator<<() [3/14]

template<typename ALLOC >
CppRuntimeException& zserio::operator<< ( CppRuntimeException exception,
const BasicBitBuffer< ALLOC > &  bitBuffer 
)

Allows to append BitBuffer to CppRuntimeException.

Parameters
exceptionException to modify.
bitBufferBit buffer value.
Returns
Reference to the exception to allow operator chaining.

Definition at line 553 of file BitBuffer.h.

◆ operator<<() [4/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
const char *  message 
)

Appends a message to the exception's description.

Parameters
exceptionException to modify.
messageDescription of the error to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 44 of file CppRuntimeException.cpp.

◆ operator<<() [5/14]

template<typename ALLOC >
CppRuntimeException& zserio::operator<< ( CppRuntimeException exception,
const std::basic_string< char, std::char_traits< char >, ALLOC > &  value 
)

Appends a string value to the exception's description.

Parameters
exceptionException to modify.
valueString value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 143 of file CppRuntimeException.h.

◆ operator<<() [6/14]

template<typename T , typename ALLOC >
CppRuntimeException& zserio::operator<< ( CppRuntimeException exception,
const std::vector< T, ALLOC > &  value 
)

Appends a vector value to the exception's description.

Parameters
exceptionException to modify.
valueVector value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 159 of file CppRuntimeException.h.

◆ operator<<() [7/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
detail::CreatorState  state 
)

Allows to append detail::CreatorState to CppRuntimeException.

Parameters
exceptionException to modify.
stateCreator state to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 6 of file ZserioTreeCreator.cpp.

◆ operator<<() [8/14]

template<typename VALUE_TYPE >
CppRuntimeException& zserio::operator<< ( CppRuntimeException exception,
detail::NumericTypeWrapper< VALUE_TYPE >  value 
)

Allows to append NumericTypeWrapper to CppRuntimeException.

Parameters
exceptionException to modify.
bitBufferBit buffer value.
Returns
Reference to the exception to allow operator chaining.

Definition at line 907 of file Types.h.

◆ operator<<() [9/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
double  value 
)

Appends a double value to the exception's description.

Parameters
exceptionException to modify.
valueDouble value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 71 of file CppRuntimeException.cpp.

◆ operator<<() [10/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
float  value 
)

Appends a float value to the exception's description.

Parameters
exceptionException to modify.
valueFloat value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 55 of file CppRuntimeException.cpp.

◆ operator<<() [11/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
JsonToken  token 
)

Allows to append JsonToken to CppRuntimeException.

Parameters
exceptionException to modify.
tokenJSON Token to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 6 of file JsonTokenizer.cpp.

◆ operator<<() [12/14]

CppRuntimeException& zserio::operator<< ( CppRuntimeException exception,
SqliteErrorCode  code 
)
inline

Allow to append SqliteErrorCode to CppRuntimeException.

Parameters
exceptionException to modify.
codeSQLite error code.

Definition at line 52 of file SqliteException.h.

◆ operator<<() [13/14]

CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
std::string_view  value 
)

Appends a string_view to the exception's description.

Parameters
exceptionException to modify.
valueString view to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 76 of file CppRuntimeException.cpp.

◆ operator<<() [14/14]

template<typename T , typename std::enable_if< is_bitmask< T >::value, int >::type = 0>
CppRuntimeException & zserio::operator<< ( CppRuntimeException exception,
value 
)

Appends any bitmask value to the exception's description.

Parameters
exceptionException to modify.
valueBitmask value to append.
Returns
Reference to the exception to allow operator chaining.

Appends an integral value to the exception's description.

Parameters
exceptionException to modify.
valueIntegral value to append.
Returns
Reference to the exception to allow operator chaining.

Appends any enumeration value to the exception's description.

Parameters
exceptionException to modify.
valueEnumeration value to append.
Returns
Reference to the exception to allow operator chaining.

Definition at line 82 of file Bitmasks.h.

◆ operator<=() [1/9]

template<typename ALLOC >
bool zserio::operator<= ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 531 of file BitBuffer.h.

◆ operator<=() [2/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator<= ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional less-or-equal test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt is less or equal to value.

Definition at line 1093 of file Optional.h.

◆ operator<=() [3/9]

template<typename A , typename T >
constexpr bool zserio::operator<= ( const BasicOptional< A, T > &  opt,
std::nullopt_t   
)
constexpr

Optional less-or-equal test with nullopt.

Parameters
optThe optional to compare.
Returns
opt is less or equal to nullopt.

Definition at line 1066 of file Optional.h.

◆ operator<=() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator<= ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional less-or-equal test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first is less or equal to second.

Definition at line 1053 of file Optional.h.

◆ operator<=() [5/9]

bool zserio::operator<= ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 58 of file Bytes.h.

◆ operator<=() [6/9]

template<typename T >
bool zserio::operator<= ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 206 of file Extended.h.

◆ operator<=() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator<= ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional less-or-equal test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
value is less or equal to opt.

Definition at line 1107 of file Optional.h.

◆ operator<=() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator<= ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 215 of file View.h.

◆ operator<=() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator<= ( std::nullopt_t  ,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional less-or-equal test with nullopt.

Parameters
optThe optional to compare.
Returns
nullopt is less or equal to opt.

Definition at line 1079 of file Optional.h.

◆ operator==() [1/9]

template<typename ALLOC >
bool zserio::operator== ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 507 of file BitBuffer.h.

◆ operator==() [2/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator== ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional equality test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
Optional's value equals to value.

Definition at line 813 of file Optional.h.

◆ operator==() [3/9]

template<typename A , typename T >
constexpr bool zserio::operator== ( const BasicOptional< A, T > &  opt,
std::nullopt_t   
)
constexpr

Optional equality test with nullopt.

Parameters
optThe optional to compare.
Returns
opt is empty.

Definition at line 786 of file Optional.h.

◆ operator==() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator== ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional equality test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first and second are either both empty or having equal value.

Definition at line 769 of file Optional.h.

◆ operator==() [5/9]

bool zserio::operator== ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 38 of file Bytes.h.

◆ operator==() [6/9]

template<typename T >
bool zserio::operator== ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 170 of file Extended.h.

◆ operator==() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator== ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional equality test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
Optional's value equals to value.

Definition at line 827 of file Optional.h.

◆ operator==() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator== ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 178 of file View.h.

◆ operator==() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator== ( std::nullopt_t  ,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional equality test with nullopt.

Parameters
optThe optional to compare.
Returns
opt is empty.

Definition at line 799 of file Optional.h.

◆ operator>() [1/9]

template<typename ALLOC >
bool zserio::operator> ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 525 of file BitBuffer.h.

◆ operator>() [2/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator> ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional greater-than test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt is greater than value.

Definition at line 1025 of file Optional.h.

◆ operator>() [3/9]

template<typename A , typename T >
constexpr bool zserio::operator> ( const BasicOptional< A, T > &  opt,
std::nullopt_t   
)
constexpr

Optional greater-than test with nullopt.

Parameters
optThe optional to compare.
Returns
opt is greater than nullopt.

Definition at line 998 of file Optional.h.

◆ operator>() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator> ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional greater-than test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first is greater than second

Definition at line 981 of file Optional.h.

◆ operator>() [5/9]

bool zserio::operator> ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 53 of file Bytes.h.

◆ operator>() [6/9]

template<typename T >
bool zserio::operator> ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 196 of file Extended.h.

◆ operator>() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator> ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional greater-than test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
value is greater than opt.

Definition at line 1039 of file Optional.h.

◆ operator>() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator> ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 208 of file View.h.

◆ operator>() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator> ( std::nullopt_t  ,
const BasicOptional< A, T > &   
)
constexpr

Optional greater-than test with nullopt.

Parameters
optThe optional to compare.
Returns
nullopt is greater than opt.

Definition at line 1011 of file Optional.h.

◆ operator>=() [1/9]

template<typename ALLOC >
bool zserio::operator>= ( const BasicBitBufferView< ALLOC > &  lhs,
const BasicBitBufferView< ALLOC > &  rhs 
)

Comparison operator for BitBufferView.

Definition at line 537 of file BitBuffer.h.

◆ operator>=() [2/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator>= ( const BasicOptional< A, T > &  opt,
const U &  value 
)
constexpr

Optional greater-or-equal test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
opt is greater or equal to value.

Definition at line 1161 of file Optional.h.

◆ operator>=() [3/9]

template<typename A , typename T >
constexpr bool zserio::operator>= ( const BasicOptional< A, T > &  opt,
std::nullopt_t   
)
constexpr

Optional greater-or-equal test with nullopt.

Parameters
optThe optional to compare.
Returns
opt is greater or equal to nullopt.

Definition at line 1134 of file Optional.h.

◆ operator>=() [4/9]

template<typename A1 , typename T , typename A2 , typename U >
constexpr bool zserio::operator>= ( const BasicOptional< A1, T > &  first,
const BasicOptional< A2, U > &  second 
)
constexpr

Optional greater-or-equal test.

Parameters
firstFirst optional to compare.
secondSecond optional to compare.
Returns
first is greater or equal to second.

Definition at line 1121 of file Optional.h.

◆ operator>=() [5/9]

bool zserio::operator>= ( const BytesView lhs,
const BytesView rhs 
)
inline

Definition at line 63 of file Bytes.h.

◆ operator>=() [6/9]

template<typename T >
bool zserio::operator>= ( const Extended< T > &  lhs,
const Extended< T > &  rhs 
)

Definition at line 212 of file Extended.h.

◆ operator>=() [7/9]

template<typename A , typename T , typename U >
constexpr bool zserio::operator>= ( const U &  value,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional greater-or-equal test with value.

Parameters
optThe optional to compare.
valueValue to compare.
Returns
value is greater or equal to opt.

Definition at line 1175 of file Optional.h.

◆ operator>=() [8/9]

template<typename VALUE_TYPE >
bool zserio::operator>= ( const View< detail::DynIntWrapper< VALUE_TYPE >> &  lhs,
const View< detail::DynIntWrapper< VALUE_TYPE >> &  rhs 
)

Definition at line 222 of file View.h.

◆ operator>=() [9/9]

template<typename A , typename T >
constexpr bool zserio::operator>= ( std::nullopt_t  ,
const BasicOptional< A, T > &  opt 
)
constexpr

Optional greater-or-equal test with nullopt.

Parameters
optThe optional to compare.
Returns
nullopt is greater or equal to opt.

Definition at line 1147 of file Optional.h.

◆ readBufferFromFile()

BitBuffer zserio::readBufferFromFile ( std::string_view  fileName)

Read file to bit buffer object.

Parameters
fileNameFile to read.
Returns
Bit buffer representing the file contents.
Exceptions
CppRuntimeExceptionWhen reading fails.

Definition at line 25 of file FileUtil.cpp.

◆ reflectable() [1/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( BasicBitBuffer< ALLOC > &  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 817 of file ReflectableData.h.

◆ reflectable() [2/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( Bool  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 622 of file ReflectableData.h.

◆ reflectable() [3/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( BytesView  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 798 of file ReflectableData.h.

◆ reflectable() [4/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataConstPtr<ALLOC> zserio::reflectable ( const BasicBitBuffer< ALLOC > &  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 823 of file ReflectableData.h.

◆ reflectable() [5/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( const BasicBytes< ALLOC > &  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 792 of file ReflectableData.h.

◆ reflectable() [6/14]

template<typename STRING_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( const BasicString< STRING_ALLOC > &  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 804 of file ReflectableData.h.

◆ reflectable() [7/14]

template<typename T , typename ALLOC = typename T::allocator_type, std::enable_if_t< is_complete_v< View< T >> &&has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataConstPtr<ALLOC> zserio::reflectable ( const T &  value,
const ALLOC &  allocator = ALLOC() 
)

Gets reflectable for the given object.

Parameters
valueObject value to reflect.
allocatorAllocator to use for reflectable allocation.
Returns
Reflectable to the given object.

Definition at line 214 of file IReflectableData.h.

◆ reflectable() [8/14]

template<typename T , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( detail::DynIntWrapper< T >  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 675 of file ReflectableData.h.

◆ reflectable() [9/14]

template<BitSize BIT_SIZE, bool IS_SIGNED, typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( detail::FixedIntWrapper< BIT_SIZE, IS_SIGNED >  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 628 of file ReflectableData.h.

◆ reflectable() [10/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > zserio::reflectable ( Float16  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 774 of file ReflectableData.h.

◆ reflectable() [11/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( std::string_view  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 811 of file ReflectableData.h.

◆ reflectable() [12/14]

template<typename T , typename ALLOC = typename T::allocator_type, std::enable_if_t< is_complete_v< View< T >> &&has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( T &  value,
const ALLOC &  allocator = ALLOC() 
)

Gets reflectable for the given object.

Parameters
valueObject value to reflect.
allocatorAllocator to use for reflectable allocation.
Returns
Reflectable to the given object.

Definition at line 221 of file IReflectableData.h.

◆ reflectable() [13/14]

template<typename T , typename ALLOC = std::allocator<uint8_t>, std::enable_if_t<(std::is_enum_v< T >||is_bitmask_v< T >) &&!has_allocator_v< std::decay_t< T >>, int > = 0>
IBasicReflectableDataPtr<ALLOC> zserio::reflectable ( value,
const ALLOC &  allocator = ALLOC() 
)

Gets reflectable for the given object.

Parameters
valueObject value to reflect.
allocatorAllocator to use for reflectable allocation.
Returns
Reflectable to the given object.

Definition at line 228 of file IReflectableData.h.

◆ reflectable() [14/14]

template<typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr< ALLOC > zserio::reflectable ( VarInt16  value,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 720 of file ReflectableData.h.

◆ reflectableArray() [1/2]

template<typename T , typename VECTOR_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataConstPtr<ALLOC> zserio::reflectableArray ( const std::vector< T, VECTOR_ALLOC > &  array,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 1563 of file ReflectableData.h.

◆ reflectableArray() [2/2]

template<typename T , typename VECTOR_ALLOC , typename ALLOC = std::allocator<uint8_t>>
IBasicReflectableDataPtr<ALLOC> zserio::reflectableArray ( std::vector< T, VECTOR_ALLOC > &  array,
const ALLOC &  allocator = ALLOC() 
)

Definition at line 1571 of file ReflectableData.h.

◆ serialize() [1/6]

template<typename T >
BasicBitBuffer<typename T::allocator_type> zserio::serialize ( const DataView< T > &  dataView)

Serializes Zserio object using DataView to bit buffer.

The memory for serialization is allocated using new allocator of the type defined by the Zserio object.

Note that it doesn't need to call validate since the data view in already consistent.

Example:

SomeZserioObject objectData;
zserio::View<SomeZserioObject> objectView(objectData);
const auto bitBuffer = zserio::serialize(objectView);
Parameters
viewView of Zserio object to serialize.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 435 of file SerializeUtil.h.

◆ serialize() [2/6]

template<typename T , typename ALLOC >
BasicBitBuffer<ALLOC> zserio::serialize ( const DataView< T > &  dataView,
const ALLOC &  allocator 
)

Serializes Zserio object using DataView to bit buffer using given allocator.

Note that it doesn't need to call validate since the data view in already consistent.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData;
zserio::DataView<SomeZserioObject> objectDataView(objectData);
zserio::serialize(objectDataView, allocator);
Parameters
dataViewDataView with Zserio object to serialize.
allocatorAllocator to use to allocate bit buffer.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen validation or serialization fails.

Definition at line 365 of file SerializeUtil.h.

◆ serialize() [3/6]

template<typename T , typename... ARGS, typename std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
BasicBitBuffer<typename T::allocator_type> zserio::serialize ( const T &  data,
ARGS &&...  arguments 
)

Serializes Zserio object using Data to bit buffer.

The memory for serialization is allocated using new allocator of the type defined by the Zserio object.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

SomeZserioObject objectData;
const auto bitBuffer = zserio::serialize(objectData);
Parameters
dataData of Zserio object to serialize.
argumentsAll parameters in case of Zserio parameterized type.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 118 of file SerializeUtil.h.

◆ serialize() [4/6]

template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t< is_allocator_v< ALLOC >, int > = 0>
BasicBitBuffer<ALLOC> zserio::serialize ( const T &  data,
const ALLOC &  allocator,
ARGS &&...  arguments 
)

Serializes Zserio object using Data to bit buffer using given allocator.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData;
zserio::serialize(objectData, allocator);
Parameters
dataData of Zserio object to serialize.
allocatorAllocator to use to allocate bit buffer.
argumentsAll parameters in case of Zserio parameterized type.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 53 of file SerializeUtil.h.

◆ serialize() [5/6]

template<typename T >
BasicBitBuffer<typename T::allocator_type> zserio::serialize ( const View< T > &  view)

Serializes Zserio object using View to bit buffer.

The memory for serialization is allocated using new allocator of the type defined by the Zserio object.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

SomeZserioObject objectData;
zserio::View<SomeZserioObject> objectView(objectData);
const auto bitBuffer = zserio::serialize(objectView);
Parameters
viewView of Zserio object to serialize.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 308 of file SerializeUtil.h.

◆ serialize() [6/6]

template<typename T , typename ALLOC >
BasicBitBuffer<ALLOC> zserio::serialize ( const View< T > &  view,
const ALLOC &  allocator 
)

Serializes Zserio object using View to bit buffer using given allocator.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData;
zserio::View<SomeZserioObject> objectView(objectData);
zserio::serialize(objectView, allocator);
Parameters
viewView of Zserio object to serialize.
allocatorAllocator to use to allocate bit buffer.
Returns
Bit buffer containing the serialized object.
Exceptions
CppRuntimeExceptionWhen validation or serialization fails.

Definition at line 236 of file SerializeUtil.h.

◆ serializeToBytes() [1/6]

template<typename T >
Vector<uint8_t, typename T::allocator_type> zserio::serializeToBytes ( const DataView< T > &  dataView)

Serializes Zserio object using DataView to vector of bytes.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

SomeZserioObject objectData(allocator);
zserio::DataView<SomeZserioObject> objectDataView(objectData);
const auto buffer = zserio::serializeToBytes(objectDataView);
Parameters
dataViewDataView with Zserio object to serialize.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 462 of file SerializeUtil.h.

◆ serializeToBytes() [2/6]

template<typename T , typename ALLOC >
Vector<uint8_t, ALLOC> zserio::serializeToBytes ( const DataView< T > &  dataView,
const ALLOC &  allocator 
)

Serializes Zserio object using DataView to vector of bytes using given allocator.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData(allocator);
zserio::DataView<SomeZserioObject> objectView(objectData);
const auto buffer = zserio::serializeToBytes(objectView, allocator);
Parameters
dataViewDataView with Zserio object to serialize.
allocatorAllocator to use to allocate vector.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 401 of file SerializeUtil.h.

◆ serializeToBytes() [3/6]

template<typename T , typename... ARGS, typename std::enable_if_t<!is_first_allocator_v< ARGS... >, int > = 0>
Vector<uint8_t, typename T::allocator_type> zserio::serializeToBytes ( const T &  data,
ARGS &&...  arguments 
)

Serializes Zserio object using Data to vector of bytes.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData(allocator);
zserio::View<SomeZserioObject> objectView(objectData);
const zserio::vector<uint8_t, zserio::pmr::PropagatingPolymorphicAllocator<>> buffer =
zserio::serializeToBytes(objectView, allocator);
Parameters
objectGenerated object to serialize.
argumentsAll parameters in case of Zserio parameterized type.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 149 of file SerializeUtil.h.

◆ serializeToBytes() [4/6]

template<typename T , typename ALLOC , typename... ARGS, std::enable_if_t< is_allocator_v< ALLOC >, int > = 0>
Vector<uint8_t, ALLOC> zserio::serializeToBytes ( const T &  data,
const ALLOC &  allocator,
ARGS &&...  arguments 
)

Serializes Zserio object using Data to vector of bytes using given allocator.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData(allocator);
zserio::View<SomeZserioObject> objectView(objectData);
const zserio::vector<uint8_t, zserio::pmr::PropagatingPolymorphicAllocator<>> buffer =
zserio::serializeToBytes(objectView, allocator);
Parameters
objectGenerated object to serialize.
allocatorAllocator to use to allocate vector.
argumentsAll parameters in case of Zserio parameterized type.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 87 of file SerializeUtil.h.

◆ serializeToBytes() [5/6]

template<typename T >
Vector<uint8_t, typename T::allocator_type> zserio::serializeToBytes ( const View< T > &  view)

Serializes Zserio object using View to vector of bytes.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

SomeZserioObject objectData;
zserio::View<SomeZserioObject> objectView(objectData);
const auto buffer = zserio::serializeToBytes(objectView);
Parameters
objectGenerated object to serialize.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 335 of file SerializeUtil.h.

◆ serializeToBytes() [6/6]

template<typename T , typename ALLOC >
Vector<uint8_t, ALLOC> zserio::serializeToBytes ( const View< T > &  view,
const ALLOC &  allocator 
)

Serializes Zserio object using View to vector of bytes using given allocator.

Before serialization, the method properly calls initializeOffsets() and validate() method on the given Zserio object.

Example:

#include <zserio/pmr/PropagatingPolymorphicAllocator.h>
const zserio::pmr::PropagatingPolymorphicAllocator<> allocator;
SomeZserioObject objectData(allocator);
zserio::View<SomeZserioObject> objectView(objectData);
const zserio::vector<uint8_t, zserio::pmr::PropagatingPolymorphicAllocator<>> buffer =
zserio::serializeToBytes(objectView, allocator);
Parameters
objectGenerated object to serialize.
allocatorAllocator to use to allocate vector.
Returns
Vector of bytes containing the serialized object.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 273 of file SerializeUtil.h.

◆ serializeToFile() [1/3]

template<typename T >
void zserio::serializeToFile ( const DataView< T > &  dataView,
std::string_view  fileName 
)

Serializes Zserio object using DataView to the file.

Example:

SomeZserioObject objectData;
zserio::DataView<SomeZserioObject> objectDataView(objectData);
zserio::serializeToFile(objectDataView, "FileName.bin");
Parameters
dataViewDataView with Zserio object to serialize.
fileNameFile name to write.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 622 of file SerializeUtil.h.

◆ serializeToFile() [2/3]

template<typename T , typename... ARGS>
void zserio::serializeToFile ( const T &  data,
std::string_view  fileName,
ARGS &&...  arguments 
)

Serializes Zserio object using Data to the file.

Example:

SomeZserioObject objectData;
zserio::serializeToFile(objectData, "FileName.bin");
Parameters
dataData of Zserio object to serialize.
fileNameFile name to write.
argumentsAll parameters in case of Zserio parameterized type.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 646 of file SerializeUtil.h.

◆ serializeToFile() [3/3]

template<typename T >
void zserio::serializeToFile ( const View< T > &  view,
std::string_view  fileName 
)

Serializes Zserio object using View to the file.

Example:

SomeZserioObject objectData;
zserio::View<SomeZserioObject> objectView(objectData);
zserio::serializeToFile(objectView, "FileName.bin");
Parameters
viewView of Zserio object to serialize.
fileNameFile name to write.
Exceptions
CppRuntimeExceptionWhen serialization fails.

Definition at line 598 of file SerializeUtil.h.

◆ stringToEnum()

template<typename T >
T zserio::stringToEnum ( std::string_view  itemName)

Converts the given enum item name to an appropriate enum item.

Parameters
itemNameName of the enum item.
Returns
Enum item corresponding to the itemName.
Exceptions
CppRuntimeExceptionwhen the itemName doesn't match to any enum item.

Definition at line 71 of file Enums.h.

◆ toCheckedValue() [1/2]

template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T::ValueType zserio::toCheckedValue ( wrapper)
constexprnoexcept

Utility to get checked underlying value from zserio numeric type wrapper.

Parameters
wrapperNumeric type wrapper to use.
Returns
Built-in numeric type casted from numeric type wrapper after range checking (if needed).
Exceptions
OutOfRangeExceptionwhen the underlying value is out of range of the zserio numeric type.

Definition at line 699 of file Types.h.

◆ toCheckedValue() [2/2]

template<typename T , std::enable_if_t< is_numeric_wrapper_v< T >, int > = 0>
constexpr T::ValueType zserio::toCheckedValue ( wrapper,
BitSize  numBits 
)
constexpr

Utility to get checked underlying value from zserio numeric type wrapper.

Overload for dynamic length types wrappers.

Parameters
wrapperNumeric type wrapper to use.
numBitsNumber of bits as a length of a dynamic length numeric type.
Returns
Built-in numeric type casted from numeric type wrapper after range checking (if needed).
Exceptions
OutOfRangeExceptionwhen the underlying value is out of range of the zserio numeric type.

Definition at line 722 of file Types.h.

◆ toJsonFile() [1/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void zserio::toJsonFile ( const T &  object,
const BasicString< RebindAlloc< ALLOC, char >> &  fileName,
uint8_t  indent,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug file in JSON format using Walker with JsonWriter.

This function allows setting of indentation of JSON output together with the walk filter.

Example:

SomeZserioObject object;
const uint8_t indent = 4;
zserio::toJsonFile(object, "FileName.json", indent, walkFilter);
void toJsonFile(const T &object, std::string_view fileName, const ALLOC &allocator=ALLOC())
Parameters
objectZserio object to use.
fileNameName of file to write.
indentIndent argument for JsonWriter.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.

Definition at line 427 of file DebugStringUtil.h.

◆ toJsonFile() [2/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void zserio::toJsonFile ( const T &  object,
std::string_view  fileName,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug file in JSON format using Walker with JsonWriter.

Example:

SomeZserioObject object;
zserio::toJsonFile(object, "FileName.json");
Parameters
objectZserio object to use.
fileNameName of file to write.
allocatorAllocator to use.

Definition at line 338 of file DebugStringUtil.h.

◆ toJsonFile() [3/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void zserio::toJsonFile ( const T &  object,
std::string_view  fileName,
uint8_t  indent,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug file in JSON format using Walker with JsonWriter.

This function allows setting of indentation of JSON output.

Example:

SomeZserioObject object;
const uint8_t indent = 4;
zserio::toJsonFile(object, "FileName.json", indent);
Parameters
objectZserio object to use.
fileNameName of file to write.
indentIndent argument for JsonWriter.
allocatorAllocator to use.
Exceptions
CppRuntimeExceptionWhen the writing fails.

Definition at line 366 of file DebugStringUtil.h.

◆ toJsonFile() [4/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void zserio::toJsonFile ( const T &  object,
std::string_view  fileName,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug file in JSON format using Walker with JsonWriter.

This function allows setting of walk filter.

The following example shows filtering of arrays up to 5 elements:

Example:

SomeZserioObject object;
zserio::toJsonFile(object, "FileName.json", walkFilter);
Parameters
objectZserio object to use.
fileNameName of file to write.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.

Definition at line 396 of file DebugStringUtil.h.

◆ toJsonStream() [1/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void zserio::toJsonStream ( const T &  object,
std::ostream &  stream,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug stream in JSON format using Walker with JsonWriter.

Example:

#include <sstream>
SomeZserioObject object;
std::ostringstream stream;
zserio::toJsonStream(object, stream);
void toJsonStream(const T &object, std::ostream &stream, const ALLOC &allocator=ALLOC())
Parameters
objectZserio object to use.
streamOutput stream to use.
allocatorAllocator to use.

Definition at line 105 of file DebugStringUtil.h.

◆ toJsonStream() [2/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
void zserio::toJsonStream ( const T &  object,
std::ostream &  stream,
uint8_t  indent,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug stream in JSON format using Walker with JsonWriter.

This function allows setting of indentation of JSON output.

Example:

#include <sstream>
SomeZserioObject object;
std::ostringstream stream;
const uint8_t indent = 4;
zserio::toJsonStream(object, stream, indent);
Parameters
objectZserio object to use.
streamOutput stream to use.
indentIndent argument for JsonWriter.
allocatorAllocator to use.

Definition at line 133 of file DebugStringUtil.h.

◆ toJsonStream() [3/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void zserio::toJsonStream ( const T &  object,
std::ostream &  stream,
uint8_t  indent,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug stream in JSON format using Walker with JsonWriter.

This function allows setting of indentation of JSON output together with the walk filter.

Example:

#include <sstream>
#include <zserio/Walker.h>
SomeZserioObject object;
std::ostringstream stream;
const uint8_t indent = 4;
zserio::toJsonStream(object, stream, indent, walkFilter);
Parameters
objectZserio object to use.
streamOutput stream to use.
indentIndent argument for JsonWriter.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.

Definition at line 198 of file DebugStringUtil.h.

◆ toJsonStream() [4/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
void zserio::toJsonStream ( const T &  object,
std::ostream &  stream,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Writes contents of given zserio object to debug stream in JSON format using Walker with JsonWriter.

This function allows setting of walk filter.

The following example shows filtering of arrays up to 5 elements:

#include <sstream>
#include <zserio/Walker.h>
SomeZserioObject object;
std::ostringstream stream;
zserio::toJsonStream(object, stream, walkFilter);
Parameters
objectZserio object to use.
streamOutput stream to use.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.

Definition at line 164 of file DebugStringUtil.h.

◆ toJsonString() [1/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
BasicString<RebindAlloc<ALLOC, char> > zserio::toJsonString ( const T &  object,
const ALLOC &  allocator = ALLOC() 
)

Gets debug string in JSON format using Walker with JsonWriter for given zserio object.

Example:

#include <iostream>
SomeZserioObject object;
std::cout << zserio::toJsonString(object) << std::endl;
BasicString< RebindAlloc< ALLOC, char > > toJsonString(const T &object, const ALLOC &allocator=ALLOC())
Parameters
objectZserio object to use.
allocatorAllocator to use.
Returns
JSON debug string.

Definition at line 223 of file DebugStringUtil.h.

◆ toJsonString() [2/4]

template<typename T , typename ALLOC = typename T::allocator_type, typename std::enable_if< is_allocator< ALLOC >::value, int >::type = 0>
BasicString<RebindAlloc<ALLOC, char> > zserio::toJsonString ( const T &  object,
uint8_t  indent,
const ALLOC &  allocator = ALLOC() 
)

Gets debug string in JSON format using Walker with JsonWriter for given zserio object.

This function allows setting of indentation of JSON output.

Example:

#include <iostream>
SomeZserioObject object;
const uint8_t indent = 4;
std::cout << zserio::toJsonString(object, indent) << std::endl;
Parameters
objectZserio object to use.
indentIndent argument for JsonWriter.
allocatorAllocator to use.
Returns
JSON debug string.

Definition at line 251 of file DebugStringUtil.h.

◆ toJsonString() [3/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
BasicString<RebindAlloc<ALLOC, char> > zserio::toJsonString ( const T &  object,
uint8_t  indent,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Gets debug string in JSON format using Walker with JsonWriter for given zserio object.

This function allows setting of indentation of JSON output together with the walk filter.

Example:

#include <iostream>
SomeZserioObject object;
const uint8_t indent = 4;
std::cout << zserio::toJsonString(object, indent, walkFilter) << std::endl;
Parameters
objectZserio object to use.
indentIndent argument for JsonWriter.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.
Returns
JSON debug string.

Definition at line 315 of file DebugStringUtil.h.

◆ toJsonString() [4/4]

template<typename T , typename WALK_FILTER , typename ALLOC = typename T::allocator_type, typename std::enable_if< std::is_base_of< IBasicWalkFilter< ALLOC >, typename std::decay< WALK_FILTER >::type >::value, int >::type = 0>
BasicString<RebindAlloc<ALLOC, char> > zserio::toJsonString ( const T &  object,
WALK_FILTER &&  walkFilter,
const ALLOC &  allocator = ALLOC() 
)

Gets debug string in JSON format using Walker with JsonWriter for given zserio object.

This function allows setting of walk filter.

The following example shows filtering of arrays up to 5 elements:

#include <iostream>
SomeZserioObject object;
std::cout << zserio::toJsonString(object, walkFilter) << std::endl;
Parameters
objectZserio object to use.
walkFilterWalkFilter to use by Walker.
allocatorAllocator to use.
Returns
JSON debug string.

Definition at line 282 of file DebugStringUtil.h.

◆ toString() [1/4]

template<typename ALLOC >
BasicString<RebindAlloc<ALLOC, char> > zserio::toString ( bool  value,
const ALLOC &  allocator = ALLOC() 
)

Converts a boolean value to string using the given allocator. Defined for convenience.

Note that in contrast to std::to_string, this behaves as STL streams with boolalpha flag and produces "true" and "false" strings.

Parameters
valueValue to convert.
allocatorAllocator to use for the string allocation.

Definition at line 204 of file StringConvertUtil.h.

◆ toString() [2/4]

template<typename ALLOC >
BasicString<RebindAlloc<ALLOC, char> > zserio::toString ( std::string_view  value,
const ALLOC &  allocator = ALLOC() 
)

Converts a string view to string using the given allocator. Defined for convenience.

Parameters
valueString view to convert.
allocatorAllocator to use for the string allocation.

Definition at line 216 of file StringConvertUtil.h.

◆ toString() [3/4]

template<typename T >
BasicString<std::allocator<char> > zserio::toString ( value)

Converts an integral (or a boolean) value to string. Convenience wrapper to call without allocator.

Parameters
valueValue to convert.
Returns
String representation of the given value.

Definition at line 229 of file StringConvertUtil.h.

◆ toString() [4/4]

template<typename ALLOC , typename T , std::enable_if_t< std::is_integral_v< T >, int > = 0>
BasicString< RebindAlloc< ALLOC, char > > zserio::toString ( value,
const ALLOC &  allocator = ALLOC() 
)

Converts an integral value to string using the given allocator. Defined for convenience.

Parameters
valueValue to convert.
allocatorAllocator to use for the string allocation.
Returns
String representation of the given integral value.

Definition at line 165 of file StringConvertUtil.h.

◆ typeInfo()

template<typename T , typename ALLOC = detail::type_info_default_alloc_t<T>>
const IBasicTypeInfo<ALLOC>& zserio::typeInfo ( )

Global function for type info of a generated type provided via specializations.

Returns
Type info.

Definition at line 668 of file ITypeInfo.h.

◆ valueToEnum()

template<typename T >
T zserio::valueToEnum ( typename EnumTraits< T >::ZserioType  rawValue)

Converts the given raw value to an appropriate enum item.

Parameters
rawValueRaw value of the proper underlying type.
Returns
Enum item corresponding to the rawValue.
Exceptions
CppRuntimeExceptionwhen the rawValue doesn't match to any enum item.

◆ View()

template<typename T , typename... ARGS>
zserio::View ( ,
ARGS &&  ... 
) -> View< T >

◆ visit() [1/2]

template<typename F , typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::visit ( F &&  fun,
BasicVariant< ALLOC, INDEX, T... > &  var 
)

Calls a given functor with active element.

Parameters
funFunctor to be called with the active element.
varVariant to be accessed.
Exceptions
BadVariantAccessif variant is in valueless state.

Definition at line 865 of file Variant.h.

◆ visit() [2/2]

template<typename F , typename ALLOC , typename INDEX , typename... T>
decltype(auto) zserio::visit ( F &&  fun,
const BasicVariant< ALLOC, INDEX, T... > &  var 
)

Calls a given functor with active element.

Parameters
funFunctor to be called with the active element.
varVariant to be accessed.
Exceptions
BadVariantAccessif variant is in valueless state.

Definition at line 879 of file Variant.h.

◆ writeBufferToFile() [1/3]

template<typename ALLOC >
void zserio::writeBufferToFile ( const BasicBitBuffer< ALLOC > &  bitBuffer,
std::string_view  fileName 
)
inline

Writes given bit buffer to file.

Overloaded function provided for convenience.

Parameters
bitBufferBit buffer to write.
fileNameName of the file to write.
Exceptions
CppRuntimeExceptionWhen writing fails.

Definition at line 69 of file FileUtil.h.

◆ writeBufferToFile() [2/3]

void zserio::writeBufferToFile ( const uint8_t *  buffer,
size_t  bitSize,
BitsTag  ,
std::string_view  fileName 
)

Writes given buffer to file.

Parameters
bufferBuffer to write.
bitSizeBuffer bit size.
fileNameName of the file to write.
Exceptions
CppRuntimeExceptionWhen writing fails.

Definition at line 10 of file FileUtil.cpp.

◆ writeBufferToFile() [3/3]

void zserio::writeBufferToFile ( const uint8_t *  buffer,
size_t  byteSize,
std::string_view  fileName 
)
inline

Writes given buffer to file.

Overloaded function provided for convenience.

Parameters
bufferBuffer to write.
byteSizeBuffer byte size.
fileNameName of the file to write.
Exceptions
CppRuntimeExceptionWhen writing fails.

Definition at line 53 of file FileUtil.h.

Variable Documentation

◆ dynamic_extent

constexpr std::size_t zserio::dynamic_extent = std::numeric_limits<std::size_t>::max()
constexpr

Constant used to differentiate between spans of dynamic and static extent.

Definition at line 17 of file Span.h.

◆ has_allocator_v

template<typename T , typename V = void>
constexpr bool zserio::has_allocator_v = has_allocator<T, V>::value
inlineconstexpr

Definition at line 130 of file Traits.h.

◆ in_place_index

template<auto I>
constexpr in_place_index_t<I> zserio::in_place_index {}
constexpr

Like std::in_place_index but works with any enum index type.

Definition at line 79 of file Variant.h.

◆ is_allocator_v

template<typename T >
constexpr bool zserio::is_allocator_v = is_allocator<T>::value
inlineconstexpr

Definition at line 98 of file Traits.h.

◆ is_bitmask_v

template<typename T , typename V = void>
constexpr bool zserio::is_bitmask_v = is_bitmask<T, V>::value
inlineconstexpr

Definition at line 147 of file Traits.h.

◆ is_complete_v

template<typename T >
constexpr bool zserio::is_complete_v = is_complete<T>::value
constexpr

Definition at line 214 of file Traits.h.

◆ is_dyn_int_wrapper_v

template<typename T , typename V = void>
constexpr bool zserio::is_dyn_int_wrapper_v = is_dyn_int_wrapper<T, V>::value
inlineconstexpr

Definition at line 199 of file Traits.h.

◆ is_first_allocator_v

template<typename... ARGS>
constexpr bool zserio::is_first_allocator_v = is_first_allocator<ARGS...>::value
inlineconstexpr

Definition at line 114 of file Traits.h.

◆ is_numeric_wrapper_v

template<typename T , typename V = void>
constexpr bool zserio::is_numeric_wrapper_v = is_numeric_wrapper<T, V>::value
inlineconstexpr

Definition at line 184 of file Traits.h.

◆ is_span_v

template<typename T >
constexpr bool zserio::is_span_v = is_span<T>::value
inlineconstexpr

Definition at line 165 of file Traits.h.