grpc
third_party
protobuf
src
google
protobuf
util
internal
protobuf/src/google/protobuf/util/internal/object_writer.cc
Go to the documentation of this file.
1
// Protocol Buffers - Google's data interchange format
2
// Copyright 2008 Google Inc. All rights reserved.
3
// https://developers.google.com/protocol-buffers/
4
//
5
// Redistribution and use in source and binary forms, with or without
6
// modification, are permitted provided that the following conditions are
7
// met:
8
//
9
// * Redistributions of source code must retain the above copyright
10
// notice, this list of conditions and the following disclaimer.
11
// * Redistributions in binary form must reproduce the above
12
// copyright notice, this list of conditions and the following disclaimer
13
// in the documentation and/or other materials provided with the
14
// distribution.
15
// * Neither the name of Google Inc. nor the names of its
16
// contributors may be used to endorse or promote products derived from
17
// this software without specific prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31
#include <google/protobuf/util/internal/object_writer.h>
32
33
#include <google/protobuf/util/internal/datapiece.h>
34
35
namespace
google
{
36
namespace
protobuf
{
37
namespace
util {
38
namespace
converter
{
39
40
// static
41
void
ObjectWriter::RenderDataPieceTo
(
const
DataPiece&
data
,
42
StringPiece
name
, ObjectWriter* ow) {
43
switch
(
data
.type()) {
44
case
DataPiece::TYPE_INT32
: {
45
ow->RenderInt32(
name
,
data
.ToInt32().value());
46
break
;
47
}
48
case
DataPiece::TYPE_INT64
: {
49
ow->RenderInt64(
name
,
data
.ToInt64().value());
50
break
;
51
}
52
case
DataPiece::TYPE_UINT32
: {
53
ow->RenderUint32(
name
,
data
.ToUint32().value());
54
break
;
55
}
56
case
DataPiece::TYPE_UINT64
: {
57
ow->RenderUint64(
name
,
data
.ToUint64().value());
58
break
;
59
}
60
case
DataPiece::TYPE_DOUBLE
: {
61
ow->RenderDouble(
name
,
data
.ToDouble().value());
62
break
;
63
}
64
case
DataPiece::TYPE_FLOAT
: {
65
ow->RenderFloat(
name
,
data
.ToFloat().value());
66
break
;
67
}
68
case
DataPiece::TYPE_BOOL
: {
69
ow->RenderBool(
name
,
data
.ToBool().value());
70
break
;
71
}
72
case
DataPiece::TYPE_STRING
: {
73
ow->RenderString(
name
,
data
.ToString().value());
74
break
;
75
}
76
case
DataPiece::TYPE_BYTES
: {
77
ow->RenderBytes(
name
,
data
.ToBytes().value());
78
break
;
79
}
80
case
DataPiece::TYPE_NULL
: {
81
ow->RenderNull(
name
);
82
break
;
83
}
84
default
:
85
break
;
86
}
87
}
88
89
90
}
// namespace converter
91
}
// namespace util
92
}
// namespace protobuf
93
}
// namespace google
google::protobuf::util::converter::DataPiece::TYPE_UINT32
@ TYPE_UINT32
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:66
google::protobuf::util::converter::DataPiece::TYPE_FLOAT
@ TYPE_FLOAT
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:69
google::protobuf::util::converter::DataPiece::TYPE_STRING
@ TYPE_STRING
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:72
google::protobuf
Definition:
bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:12
make_cmakelists.converter
converter
Definition:
make_cmakelists.py:317
setup.name
name
Definition:
setup.py:542
google::protobuf::util::converter::DataPiece::TYPE_NULL
@ TYPE_NULL
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:74
google::protobuf::util::converter::ObjectWriter::RenderDataPieceTo
static void RenderDataPieceTo(const DataPiece &data, StringPiece name, ObjectWriter *ow)
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/object_writer.cc:41
google::protobuf::util::converter::DataPiece::TYPE_DOUBLE
@ TYPE_DOUBLE
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:68
data
char data[kBufferLength]
Definition:
abseil-cpp/absl/strings/internal/str_format/float_conversion.cc:1006
google::protobuf::util::converter::DataPiece::TYPE_BYTES
@ TYPE_BYTES
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:73
google::protobuf::util::converter::DataPiece::TYPE_INT64
@ TYPE_INT64
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:65
google::protobuf::util::converter::DataPiece::TYPE_UINT64
@ TYPE_UINT64
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:67
google::protobuf::util::converter::DataPiece::TYPE_BOOL
@ TYPE_BOOL
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:70
google::protobuf::util::converter::DataPiece::TYPE_INT32
@ TYPE_INT32
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/datapiece.h:64
google
Definition:
bloaty/third_party/protobuf/benchmarks/util/data_proto2_to_proto3_util.h:11
grpc
Author(s):
autogenerated on Fri May 16 2025 02:59:33