Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(45)

Side by Side Diff: third_party/protobuf/src/google/protobuf/compiler/parser_unittest.cc

Issue 2495533002: third_party/protobuf: Update to HEAD (83d681ee2c) (Closed)
Patch Set: Make chrome settings proto generated file a component Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Protocol Buffers - Google's data interchange format 1 // Protocol Buffers - Google's data interchange format
2 // Copyright 2008 Google Inc. All rights reserved. 2 // Copyright 2008 Google Inc. All rights reserved.
3 // https://developers.google.com/protocol-buffers/ 3 // https://developers.google.com/protocol-buffers/
4 // 4 //
5 // Redistribution and use in source and binary forms, with or without 5 // Redistribution and use in source and binary forms, with or without
6 // modification, are permitted provided that the following conditions are 6 // modification, are permitted provided that the following conditions are
7 // met: 7 // met:
8 // 8 //
9 // * Redistributions of source code must retain the above copyright 9 // * Redistributions of source code must retain the above copyright
10 // notice, this list of conditions and the following disclaimer. 10 // notice, this list of conditions and the following disclaimer.
(...skipping 2200 matching lines...) Expand 10 before | Expand all | Expand 10 after
2211 int index) { 2211 int index) {
2212 return HasSpan('\0', '\0', descriptor_proto, field_name, index); 2212 return HasSpan('\0', '\0', descriptor_proto, field_name, index);
2213 } 2213 }
2214 2214
2215 bool HasSpanWithComment( 2215 bool HasSpanWithComment(
2216 char start_marker, char end_marker, const Message& descriptor_proto, 2216 char start_marker, char end_marker, const Message& descriptor_proto,
2217 const FieldDescriptor* field, int index, 2217 const FieldDescriptor* field, int index,
2218 const char* expected_leading_comments, 2218 const char* expected_leading_comments,
2219 const char* expected_trailing_comments, 2219 const char* expected_trailing_comments,
2220 const char* expected_leading_detached_comments) { 2220 const char* expected_leading_detached_comments) {
2221 pair<SpanMap::iterator, SpanMap::iterator> range = 2221 std::pair<SpanMap::iterator, SpanMap::iterator> range =
2222 spans_.equal_range(SpanKey(descriptor_proto, field, index)); 2222 spans_.equal_range(SpanKey(descriptor_proto, field, index));
2223 2223
2224 if (start_marker == '\0') { 2224 if (start_marker == '\0') {
2225 if (range.first == range.second) { 2225 if (range.first == range.second) {
2226 return false; 2226 return false;
2227 } else { 2227 } else {
2228 spans_.erase(range.first); 2228 spans_.erase(range.first);
2229 return true; 2229 return true;
2230 } 2230 }
2231 } else { 2231 } else {
2232 pair<int, int> start_pos = FindOrDie(markers_, start_marker); 2232 std::pair<int, int> start_pos = FindOrDie(markers_, start_marker);
2233 pair<int, int> end_pos = FindOrDie(markers_, end_marker); 2233 std::pair<int, int> end_pos = FindOrDie(markers_, end_marker);
2234 2234
2235 RepeatedField<int> expected_span; 2235 RepeatedField<int> expected_span;
2236 expected_span.Add(start_pos.first); 2236 expected_span.Add(start_pos.first);
2237 expected_span.Add(start_pos.second); 2237 expected_span.Add(start_pos.second);
2238 if (end_pos.first != start_pos.first) { 2238 if (end_pos.first != start_pos.first) {
2239 expected_span.Add(end_pos.first); 2239 expected_span.Add(end_pos.first);
2240 } 2240 }
2241 expected_span.Add(end_pos.second); 2241 expected_span.Add(end_pos.second);
2242 2242
2243 for (SpanMap::iterator iter = range.first; iter != range.second; ++iter) { 2243 for (SpanMap::iterator iter = range.first; iter != range.second; ++iter) {
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
2288 2288
2289 inline bool operator<(const SpanKey& other) const { 2289 inline bool operator<(const SpanKey& other) const {
2290 if (descriptor_proto < other.descriptor_proto) return true; 2290 if (descriptor_proto < other.descriptor_proto) return true;
2291 if (descriptor_proto > other.descriptor_proto) return false; 2291 if (descriptor_proto > other.descriptor_proto) return false;
2292 if (field < other.field) return true; 2292 if (field < other.field) return true;
2293 if (field > other.field) return false; 2293 if (field > other.field) return false;
2294 return index < other.index; 2294 return index < other.index;
2295 } 2295 }
2296 }; 2296 };
2297 2297
2298 typedef multimap<SpanKey, const SourceCodeInfo::Location*> SpanMap; 2298 typedef std::multimap<SpanKey, const SourceCodeInfo::Location*> SpanMap;
2299 SpanMap spans_; 2299 SpanMap spans_;
2300 map<char, pair<int, int> > markers_; 2300 std::map<char, std::pair<int, int> > markers_;
2301 string text_without_markers_; 2301 string text_without_markers_;
2302 2302
2303 void ExtractMarkers(const char* text) { 2303 void ExtractMarkers(const char* text) {
2304 markers_.clear(); 2304 markers_.clear();
2305 text_without_markers_.clear(); 2305 text_without_markers_.clear();
2306 int line = 0; 2306 int line = 0;
2307 int column = 0; 2307 int column = 0;
2308 while (*text != '\0') { 2308 while (*text != '\0') {
2309 if (*text == '$') { 2309 if (*text == '$') {
2310 ++text; 2310 ++text;
(...skipping 837 matching lines...) Expand 10 before | Expand all | Expand 10 after
3148 EXPECT_TRUE(HasSpan(bar_int, "number")); 3148 EXPECT_TRUE(HasSpan(bar_int, "number"));
3149 } 3149 }
3150 3150
3151 // =================================================================== 3151 // ===================================================================
3152 3152
3153 } // anonymous namespace 3153 } // anonymous namespace
3154 3154
3155 } // namespace compiler 3155 } // namespace compiler
3156 } // namespace protobuf 3156 } // namespace protobuf
3157 } // namespace google 3157 } // namespace google
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698