Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
google::protobuf::util::converter::DataPiece Class Reference

#include <datapiece.h>

Public Types

enum  Type {
  TYPE_INT32 = 1, TYPE_INT64 = 2, TYPE_UINT32 = 3, TYPE_UINT64 = 4,
  TYPE_DOUBLE = 5, TYPE_FLOAT = 6, TYPE_BOOL = 7, TYPE_ENUM = 8,
  TYPE_STRING = 9, TYPE_BYTES = 10, TYPE_NULL = 11
}
 

Public Member Functions

 DataPiece (const bool value)
 
 DataPiece (const DataPiece &r)
 
 DataPiece (const double value)
 
 DataPiece (const float value)
 
 DataPiece (const int32 value)
 
 DataPiece (const int64 value)
 
 DataPiece (const uint32 value)
 
 DataPiece (const uint64 value)
 
 DataPiece (StringPiece value, bool dummy, bool use_strict_base64_decoding)
 
 DataPiece (StringPiece value, bool use_strict_base64_decoding)
 
template<typename To >
StatusOr< To > GenericConvert () const
 
DataPieceoperator= (const DataPiece &x)
 
StringPiece str () const
 
template<typename To >
StatusOr< To > StringToNumber (bool(*func)(StringPiece, To *)) const
 
util::StatusOr< bool > ToBool () const
 
util::StatusOr< std::stringToBytes () const
 
util::StatusOr< double > ToDouble () const
 
util::StatusOr< float > ToFloat () const
 
util::StatusOr< int32ToInt32 () const
 
util::StatusOr< int64ToInt64 () const
 
util::StatusOr< std::stringToString () const
 
util::StatusOr< uint32ToUint32 () const
 
util::StatusOr< uint64ToUint64 () const
 
Type type () const
 
bool use_strict_base64_decoding ()
 
std::string ValueAsStringOrDefault (StringPiece default_string) const
 
virtual ~DataPiece ()
 

Static Public Member Functions

static DataPiece NullData ()
 

Private Types

typedef ::google::protobuf::internal::StringPiecePod StringPiecePod
 

Private Member Functions

 DataPiece ()
 
 DataPiece (Type type, int32 val)
 
bool DecodeBase64 (StringPiece src, std::string *dest) const
 
template<typename To >
util::StatusOr< To > GenericConvert () const
 
void InternalCopy (const DataPiece &other)
 
template<typename To >
util::StatusOr< To > StringToNumber (bool(*func)(StringPiece, To *)) const
 
util::StatusOr< int > ToEnum (const google::protobuf::Enum *enum_type, bool use_lower_camel_for_enums, bool case_insensitive_enum_parsing, bool ignore_unknown_enum_values, bool *is_unknown_enum_value) const
 

Private Attributes

union {
   bool   bool_
 
   double   double_
 
   float   float_
 
   int32   i32_
 
   int64   i64_
 
   StringPiecePod   str_
 
   uint32   u32_
 
   uint64   u64_
 
}; 
 
Type type_
 
bool use_strict_base64_decoding_
 

Friends

class ProtoWriter
 

Detailed Description

Definition at line 59 of file datapiece.h.

Member Typedef Documentation

◆ StringPiecePod

Definition at line 195 of file datapiece.h.

Member Enumeration Documentation

◆ Type

Enumerator
TYPE_INT32 
TYPE_INT64 
TYPE_UINT32 
TYPE_UINT64 
TYPE_DOUBLE 
TYPE_FLOAT 
TYPE_BOOL 
TYPE_ENUM 
TYPE_STRING 
TYPE_BYTES 
TYPE_NULL 

Definition at line 63 of file datapiece.h.

Constructor & Destructor Documentation

◆ DataPiece() [1/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const int32  value)
inlineexplicit

Definition at line 78 of file datapiece.h.

◆ DataPiece() [2/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const int64  value)
inlineexplicit

Definition at line 80 of file datapiece.h.

◆ DataPiece() [3/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const uint32  value)
inlineexplicit

Definition at line 82 of file datapiece.h.

◆ DataPiece() [4/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const uint64  value)
inlineexplicit

Definition at line 84 of file datapiece.h.

◆ DataPiece() [5/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const double  value)
inlineexplicit

Definition at line 86 of file datapiece.h.

◆ DataPiece() [6/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const float  value)
inlineexplicit

Definition at line 90 of file datapiece.h.

◆ DataPiece() [7/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const bool  value)
inlineexplicit

Definition at line 92 of file datapiece.h.

◆ DataPiece() [8/12]

google::protobuf::util::converter::DataPiece::DataPiece ( StringPiece  value,
bool  use_strict_base64_decoding 
)
inline

Definition at line 94 of file datapiece.h.

◆ DataPiece() [9/12]

google::protobuf::util::converter::DataPiece::DataPiece ( StringPiece  value,
bool  dummy,
bool  use_strict_base64_decoding 
)
inline

Definition at line 99 of file datapiece.h.

◆ DataPiece() [10/12]

google::protobuf::util::converter::DataPiece::DataPiece ( const DataPiece r)
inline

Definition at line 104 of file datapiece.h.

◆ ~DataPiece()

virtual google::protobuf::util::converter::DataPiece::~DataPiece ( )
inlinevirtual

Definition at line 113 of file datapiece.h.

◆ DataPiece() [11/12]

google::protobuf::util::converter::DataPiece::DataPiece ( )
private

◆ DataPiece() [12/12]

google::protobuf::util::converter::DataPiece::DataPiece ( Type  type,
int32  val 
)
inlineprivate

Definition at line 164 of file datapiece.h.

Member Function Documentation

◆ DecodeBase64()

bool google::protobuf::util::converter::DataPiece::DecodeBase64 ( StringPiece  src,
std::string dest 
) const
private

Definition at line 366 of file datapiece.cc.

◆ GenericConvert() [1/2]

template<typename To >
util::StatusOr<To> google::protobuf::util::converter::DataPiece::GenericConvert ( ) const
private

◆ GenericConvert() [2/2]

template<typename To >
StatusOr<To> google::protobuf::util::converter::DataPiece::GenericConvert ( ) const

Definition at line 334 of file datapiece.cc.

◆ InternalCopy()

void google::protobuf::util::converter::DataPiece::InternalCopy ( const DataPiece other)
private

Definition at line 401 of file datapiece.cc.

◆ NullData()

static DataPiece google::protobuf::util::converter::DataPiece::NullData ( )
inlinestatic

Definition at line 111 of file datapiece.h.

◆ operator=()

DataPiece& google::protobuf::util::converter::DataPiece::operator= ( const DataPiece x)
inline

Definition at line 106 of file datapiece.h.

◆ str()

StringPiece google::protobuf::util::converter::DataPiece::str ( ) const
inline

Definition at line 121 of file datapiece.h.

◆ StringToNumber() [1/2]

template<typename To >
util::StatusOr<To> google::protobuf::util::converter::DataPiece::StringToNumber ( bool(*)(StringPiece, To *)  func) const
private

◆ StringToNumber() [2/2]

template<typename To >
StatusOr<To> google::protobuf::util::converter::DataPiece::StringToNumber ( bool(*)(StringPiece, To *)  func) const

Definition at line 356 of file datapiece.cc.

◆ ToBool()

StatusOr< bool > google::protobuf::util::converter::DataPiece::ToBool ( ) const

Definition at line 204 of file datapiece.cc.

◆ ToBytes()

StatusOr< std::string > google::protobuf::util::converter::DataPiece::ToBytes ( ) const

Definition at line 262 of file datapiece.cc.

◆ ToDouble()

StatusOr< double > google::protobuf::util::converter::DataPiece::ToDouble ( ) const

Definition at line 169 of file datapiece.cc.

◆ ToEnum()

StatusOr< int > google::protobuf::util::converter::DataPiece::ToEnum ( const google::protobuf::Enum enum_type,
bool  use_lower_camel_for_enums,
bool  case_insensitive_enum_parsing,
bool  ignore_unknown_enum_values,
bool *  is_unknown_enum_value 
) const
private

Definition at line 276 of file datapiece.cc.

◆ ToFloat()

StatusOr< float > google::protobuf::util::converter::DataPiece::ToFloat ( ) const

Definition at line 189 of file datapiece.cc.

◆ ToInt32()

StatusOr< int32 > google::protobuf::util::converter::DataPiece::ToInt32 ( ) const

Definition at line 119 of file datapiece.cc.

◆ ToInt64()

StatusOr< int64 > google::protobuf::util::converter::DataPiece::ToInt64 ( ) const

Definition at line 144 of file datapiece.cc.

◆ ToString()

StatusOr< std::string > google::protobuf::util::converter::DataPiece::ToString ( ) const

Definition at line 216 of file datapiece.cc.

◆ ToUint32()

StatusOr< uint32 > google::protobuf::util::converter::DataPiece::ToUint32 ( ) const

Definition at line 131 of file datapiece.cc.

◆ ToUint64()

StatusOr< uint64 > google::protobuf::util::converter::DataPiece::ToUint64 ( ) const

Definition at line 156 of file datapiece.cc.

◆ type()

Type google::protobuf::util::converter::DataPiece::type ( ) const
inline

Definition at line 117 of file datapiece.h.

◆ use_strict_base64_decoding()

bool google::protobuf::util::converter::DataPiece::use_strict_base64_decoding ( )
inline

Definition at line 119 of file datapiece.h.

◆ ValueAsStringOrDefault()

std::string google::protobuf::util::converter::DataPiece::ValueAsStringOrDefault ( StringPiece  default_string) const

Definition at line 231 of file datapiece.cc.

Friends And Related Function Documentation

◆ ProtoWriter

friend class ProtoWriter
friend

Definition at line 158 of file datapiece.h.

Member Data Documentation

◆ @166

union { ... }

◆ bool_

bool google::protobuf::util::converter::DataPiece::bool_

Definition at line 205 of file datapiece.h.

◆ double_

double google::protobuf::util::converter::DataPiece::double_

Definition at line 203 of file datapiece.h.

◆ float_

float google::protobuf::util::converter::DataPiece::float_

Definition at line 204 of file datapiece.h.

◆ i32_

int32 google::protobuf::util::converter::DataPiece::i32_

Definition at line 199 of file datapiece.h.

◆ i64_

int64 google::protobuf::util::converter::DataPiece::i64_

Definition at line 200 of file datapiece.h.

◆ str_

StringPiecePod google::protobuf::util::converter::DataPiece::str_

Definition at line 206 of file datapiece.h.

◆ type_

Type google::protobuf::util::converter::DataPiece::type_
private

Definition at line 193 of file datapiece.h.

◆ u32_

uint32 google::protobuf::util::converter::DataPiece::u32_

Definition at line 201 of file datapiece.h.

◆ u64_

uint64 google::protobuf::util::converter::DataPiece::u64_

Definition at line 202 of file datapiece.h.

◆ use_strict_base64_decoding_

bool google::protobuf::util::converter::DataPiece::use_strict_base64_decoding_
private

Definition at line 210 of file datapiece.h.


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


libaditof
Author(s):
autogenerated on Wed May 21 2025 02:07:10