31 #ifndef GOOGLE_PROTOBUF_UTIL_CONVERTER_PROTOSTREAM_OBJECTSOURCE_H__
32 #define GOOGLE_PROTOBUF_UTIL_CONVERTER_PROTOSTREAM_OBJECTSOURCE_H__
37 #include <unordered_map>
39 #include <google/protobuf/stubs/status.h>
41 #include <google/protobuf/stubs/common.h>
42 #include <google/protobuf/type.pb.h>
43 #include <google/protobuf/util/internal/type_info.h>
44 #include <google/protobuf/util/internal/object_source.h>
45 #include <google/protobuf/util/internal/object_writer.h>
46 #include <google/protobuf/util/type_resolver.h>
47 #include <google/protobuf/stubs/statusor.h>
48 #include <google/protobuf/stubs/strutil.h>
49 #include <google/protobuf/stubs/hash.h>
50 #include <google/protobuf/stubs/status.h>
53 #include <google/protobuf/port_def.inc>
75 class PROTOBUF_EXPORT ProtoStreamObjectSource :
public ObjectSource {
106 bool use_lower_camel_for_enums =
false;
110 bool use_ints_for_enums =
false;
113 bool preserve_proto_field_names =
false;
124 const RenderOptions& render_options);
135 max_recursion_depth_ = max_depth;
147 bool include_start_and_end,
180 const RenderOptions& render_options);
269 static std::unordered_map<std::string, TypeRenderer>* renderers_;
270 static void InitRendererMap();
271 static void DeleteRendererMap();
286 std::pair<int64_t, int32_t> ReadSecondsAndNanos(
313 mutable int recursion_depth_;
316 int max_recursion_depth_;
326 #include <google/protobuf/port_undef.inc>
328 #endif // GOOGLE_PROTOBUF_UTIL_CONVERTER_PROTOSTREAM_OBJECTSOURCE_H__