38 #ifndef GOOGLE_PROTOBUF_TEXT_FORMAT_H__ 39 #define GOOGLE_PROTOBUF_TEXT_FORMAT_H__ 78 static bool PrintToString(
const Message& message,
string* output);
81 static bool PrintUnknownFieldsToString(
const UnknownFieldSet& unknown_fields,
88 static void PrintFieldValueToString(
const Message& message,
102 virtual string PrintBool(
bool val)
const;
103 virtual string PrintInt32(
int32 val)
const;
104 virtual string PrintUInt32(
uint32 val)
const;
105 virtual string PrintInt64(
int64 val)
const;
106 virtual string PrintUInt64(
uint64 val)
const;
107 virtual string PrintFloat(
float val)
const;
108 virtual string PrintDouble(
double val)
const;
109 virtual string PrintString(
const string& val)
const;
110 virtual string PrintBytes(
const string& val)
const;
111 virtual string PrintEnum(
int32 val,
const string&
name)
const;
112 virtual string PrintFieldName(
const Message& message,
115 virtual string PrintMessageStart(
const Message& message,
118 bool single_line_mode)
const;
119 virtual string PrintMessageEnd(
const Message& message,
122 bool single_line_mode)
const;
141 bool PrintToString(
const Message& message,
string* output)
const;
144 string* output)
const;
146 void PrintFieldValueToString(
const Message& message,
149 string* output)
const;
154 initial_indent_level_ = indent_level;
160 single_line_mode_ = single_line_mode;
164 return single_line_mode_;
169 use_field_number_ = use_field_number;
178 use_short_repeated_primitives_ = use_short_repeated_primitives;
185 void SetUseUtf8StringEscaping(
bool as_utf8);
199 hide_unknown_fields_ = hide;
206 bool print_message_fields_in_index_order) {
207 print_message_fields_in_index_order_ =
208 print_message_fields_in_index_order;
219 expand_any_ = expand;
230 const int64 truncate_string_field_longer_than) {
231 truncate_string_field_longer_than_ = truncate_string_field_longer_than;
249 void Print(
const Message& message,
256 TextGenerator& generator)
const;
259 void PrintShortRepeatedField(
const Message& message,
262 TextGenerator& generator)
const;
266 void PrintFieldName(
const Message& message,
269 TextGenerator& generator)
const;
277 TextGenerator& generator)
const;
283 TextGenerator& generator)
const;
285 bool PrintAny(
const Message& message, TextGenerator& generator)
const;
287 int initial_indent_level_;
289 bool single_line_mode_;
291 bool use_field_number_;
293 bool use_short_repeated_primitives_;
295 bool hide_unknown_fields_;
297 bool print_message_fields_in_index_order_;
301 int64 truncate_string_field_longer_than_;
306 CustomPrinterMap custom_printers_;
326 static bool ParseFromString(
const string& input,
Message* output);
337 static bool ParseFieldValueFromString(
const string& input,
352 const string&
name)
const = 0;
362 : line(line_param), column(column_param) {}
394 typedef map<const FieldDescriptor*, vector<ParseLocation> > LocationMap;
398 typedef map<const FieldDescriptor*, vector<ParseInfoTree*> > NestedMap;
400 LocationMap locations_;
415 bool ParseFromString(
const string& input,
Message* output);
437 parse_info_tree_ =
tree;
443 allow_partial_ = allow;
451 allow_case_insensitive_field_ = allow;
455 bool ParseFieldValueFromString(
const string& input,
461 allow_field_number_ = allow;
479 bool allow_case_insensitive_field_;
480 bool allow_unknown_field_;
481 bool allow_unknown_enum_;
482 bool allow_field_number_;
483 bool allow_relaxed_whitespace_;
484 bool allow_singular_overwrites_;
502 inline void TextFormat::RecordLocation(
ParseInfoTree* info_tree,
505 info_tree->RecordLocation(field, location);
511 return info_tree->CreateNested(field);
517 #endif // GOOGLE_PROTOBUF_TEXT_FORMAT_H__ Definition: text_format.h:407
def PrintField(field, value, out, indent=0, as_utf8=False, as_one_line=False, pointy_brackets=False, use_index_order=False, float_format=None)
Definition: text_format.py:154
void AllowCaseInsensitiveField(bool allow)
Definition: text_format.h:450
Definition: message.h:179
void WriteLocationsTo(ParseInfoTree *tree)
Definition: text_format.h:436
const FieldDescriptor * field
Definition: parser_unittest.cc:2279
Definition: message.h:401
void SetExpandAny(bool expand)
Definition: text_format.h:218
void SetFinder(Finder *finder)
Definition: text_format.h:430
ParseLocation(int line_param, int column_param)
Definition: text_format.h:361
#define GOOGLE_DISALLOW_EVIL_CONSTRUCTORS(TypeName)
Definition: macros.h:40
void SetPrintMessageFieldsInIndexOrder(bool print_message_fields_in_index_order)
Definition: text_format.h:205
typename detail::make_map< Ts... >::type map
Definition: Brigand.h:223
Definition: text_format.h:344
Definition: text_format.h:98
int line
Definition: text_format.h:357
void SetTruncateStringFieldLongerThan(const int64 truncate_string_field_longer_than)
Definition: text_format.h:229
bool IsInSingleLineMode()
Definition: text_format.h:163
Definition: text_format.h:356
def PrintFieldValue(field, value, out, indent=0, as_utf8=False, as_one_line=False, pointy_brackets=False, use_index_order=False, float_format=None)
Definition: text_format.py:164
Definition: descriptor.h:439
GLint location
Definition: gl2.h:455
int32_t int32
Definition: port.h:130
void AllowPartialMessage(bool allow)
Definition: text_format.h:442
void AllowFieldNumber(bool allow)
Definition: text_format.h:460
def Merge(text, message, allow_unknown_extension=False, allow_field_number=False)
Definition: text_format.py:349
Definition: zero_copy_stream.h:181
void SetUseFieldNumber(bool use_field_number)
Definition: text_format.h:168
GLuint index
Definition: gl2.h:383
uint32_t uint32
Definition: port.h:135
EGLImageKHR EGLint * name
Definition: eglext.h:851
ParseLocation()
Definition: text_format.h:360
Definition: __init__.py:1
struct node * tree
Definition: float-mm.c:92
uint64_t uint64
Definition: port.h:136
void RecordErrorsTo(io::ErrorCollector *error_collector)
Definition: text_format.h:423
void SetSingleLineMode(bool single_line_mode)
Definition: text_format.h:159
Definition: unknown_field_set.h:75
Definition: scoped_ptr.h:48
Definition: text_format.cc:215
Definition: text_format.h:130
void SetUseShortRepeatedPrimitives(bool use_short_repeated_primitives)
Definition: text_format.h:177
int64_t int64
Definition: port.h:131
Definition: generator.py:1
void SetInitialIndentLevel(int indent_level)
Definition: text_format.h:153
MockErrorCollector error_collector_
Definition: importer_unittest.cc:136
#define LIBPROTOBUF_EXPORT
Definition: port.h:97
Definition: gflags_completions.h:115
string input
Definition: tokenizer_unittest.cc:198
Definition: tokenizer.h:64
GLuint GLsizei const GLchar * message
Definition: gl2ext.h:137
void SetHideUnknownFields(bool hide)
Definition: text_format.h:198
MergeFromString
Definition: python_message.py:1090
GLuint GLsizei GLsizei GLfloat * val
Definition: gl2ext.h:3301
int column
Definition: text_format.h:358
Definition: text_format.h:367
Definition: text_format.h:65