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

Side by Side Diff: third_party/protobuf/src/google/protobuf/util/field_comparator.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 171 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 } 182 }
183 // float_comparison_ == APPROXIMATE covers two use cases. 183 // float_comparison_ == APPROXIMATE covers two use cases.
184 Tolerance* tolerance = FindOrNull(map_tolerance_, &field); 184 Tolerance* tolerance = FindOrNull(map_tolerance_, &field);
185 if (tolerance == NULL && has_default_tolerance_) { 185 if (tolerance == NULL && has_default_tolerance_) {
186 tolerance = &default_tolerance_; 186 tolerance = &default_tolerance_;
187 } 187 }
188 if (tolerance == NULL) { 188 if (tolerance == NULL) {
189 return MathUtil::AlmostEquals(value_1, value_2); 189 return MathUtil::AlmostEquals(value_1, value_2);
190 } else { 190 } else {
191 // Use user-provided fraction and margin. Since they are stored as 191 // Use user-provided fraction and margin. Since they are stored as
192 // doubles, we explicitely cast them to types of values provided. This 192 // doubles, we explicitly cast them to types of values provided. This
193 // is very likely to fail if provided values are not numeric. 193 // is very likely to fail if provided values are not numeric.
194 return MathUtil::WithinFractionOrMargin( 194 return MathUtil::WithinFractionOrMargin(
195 value_1, value_2, static_cast<T>(tolerance->fraction), 195 value_1, value_2, static_cast<T>(tolerance->fraction),
196 static_cast<T>(tolerance->margin)); 196 static_cast<T>(tolerance->margin));
197 } 197 }
198 } 198 }
199 } 199 }
200 200
201 FieldComparator::ComparisonResult DefaultFieldComparator::ResultFromBoolean( 201 FieldComparator::ComparisonResult DefaultFieldComparator::ResultFromBoolean(
202 bool boolean_result) const { 202 bool boolean_result) const {
203 return boolean_result ? FieldComparator::SAME : FieldComparator::DIFFERENT; 203 return boolean_result ? FieldComparator::SAME : FieldComparator::DIFFERENT;
204 } 204 }
205 205
206 } // namespace util 206 } // namespace util
207 } // namespace protobuf 207 } // namespace protobuf
208 } // namespace google 208 } // namespace google
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698