grpc
third_party
protobuf
src
google
protobuf
util
internal
protobuf/src/google/protobuf/util/internal/object_source.h
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
#ifndef GOOGLE_PROTOBUF_UTIL_CONVERTER_OBJECT_SOURCE_H__
32
#define GOOGLE_PROTOBUF_UTIL_CONVERTER_OBJECT_SOURCE_H__
33
34
#include <google/protobuf/stubs/common.h>
35
#include <google/protobuf/stubs/status.h>
36
#include <google/protobuf/stubs/strutil.h>
37
#include <google/protobuf/stubs/status.h>
38
39
// Must be included last.
40
#include <google/protobuf/port_def.inc>
41
42
namespace
google
{
43
namespace
protobuf
{
44
namespace
util {
45
namespace
converter
{
46
47
class
ObjectWriter;
48
49
// An ObjectSource is anything that can write to an ObjectWriter.
50
// Implementation of this interface typically provide constructors or
51
// factory methods to create an instance based on some source data, for
52
// example, a character stream, or protobuf.
53
//
54
// Derived classes could be thread-unsafe.
55
class
PROTOBUF_EXPORT ObjectSource {
56
public
:
57
virtual
~ObjectSource
() {}
58
59
// Writes to the ObjectWriter
60
virtual
util::Status
WriteTo
(
ObjectWriter
* ow)
const
{
61
return
NamedWriteTo(
""
, ow);
62
}
63
64
// Writes to the ObjectWriter with a custom name for the message.
65
// This is useful when you chain ObjectSource together by embedding one
66
// within another.
67
virtual
util::Status
NamedWriteTo(
StringPiece
name
,
68
ObjectWriter
* ow)
const
= 0;
69
70
protected
:
71
ObjectSource
() {}
72
73
private
:
74
// Do not add any data members to this class.
75
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
(
ObjectSource
);
76
};
77
78
}
// namespace converter
79
}
// namespace util
80
}
// namespace protobuf
81
}
// namespace google
82
83
#include <google/protobuf/port_undef.inc>
84
85
#endif // GOOGLE_PROTOBUF_UTIL_CONVERTER_OBJECT_SOURCE_H__
google::protobuf::util::converter::ObjectSource::ObjectSource
ObjectSource()
Definition:
protobuf/src/google/protobuf/util/internal/object_source.h:71
GOOGLE_DISALLOW_EVIL_CONSTRUCTORS
#define GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TypeName)
Definition:
bloaty/third_party/protobuf/src/google/protobuf/stubs/macros.h:40
google::protobuf::util::converter::ObjectSource::~ObjectSource
virtual ~ObjectSource()
Definition:
protobuf/src/google/protobuf/util/internal/object_source.h:57
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
google::protobuf::util::converter::ObjectWriter
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/object_writer.h:61
setup.name
name
Definition:
setup.py:542
google::protobuf::util::converter::ObjectSource
Definition:
bloaty/third_party/protobuf/src/google/protobuf/util/internal/object_source.h:54
google::protobuf::StringPiece
Definition:
bloaty/third_party/protobuf/src/google/protobuf/stubs/stringpiece.h:180
google::protobuf::util::converter::ObjectSource::WriteTo
virtual util::Status WriteTo(ObjectWriter *ow) const
Definition:
protobuf/src/google/protobuf/util/internal/object_source.h:60
google::protobuf::util::Status
Definition:
third_party/bloaty/third_party/protobuf/src/google/protobuf/stubs/status.h:67
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