Classes | Public Types | Public Member Functions | Static Public Member Functions | Private Types | Private Member Functions | Static Private Member Functions | Private Attributes | Friends | List of all members
google::protobuf::util::MessageDifferencer Class Reference

#include <message_differencer.h>

Classes

class  IgnoreCriteria
 
class  MapEntryKeyComparator
 
class  MapKeyComparator
 
class  MultipleFieldsMapKeyComparator
 
class  Reporter
 
struct  SpecificField
 
class  StreamReporter
 
class  UnpackAnyField
 

Public Types

enum  FloatComparison { EXACT, APPROXIMATE, EXACT, APPROXIMATE }
 
enum  FloatComparison { EXACT, APPROXIMATE, EXACT, APPROXIMATE }
 
enum  MessageFieldComparison { EQUAL, EQUIVALENT, EQUAL, EQUIVALENT }
 
enum  MessageFieldComparison { EQUAL, EQUIVALENT, EQUAL, EQUIVALENT }
 
enum  RepeatedFieldComparison {
  AS_LIST, AS_SET, AS_SMART_LIST, AS_SMART_SET,
  AS_LIST, AS_SET, AS_SMART_LIST, AS_SMART_SET
}
 
enum  RepeatedFieldComparison {
  AS_LIST, AS_SET, AS_SMART_LIST, AS_SMART_SET,
  AS_LIST, AS_SET, AS_SMART_LIST, AS_SMART_SET
}
 
enum  Scope { FULL, PARTIAL, FULL, PARTIAL }
 
enum  Scope { FULL, PARTIAL, FULL, PARTIAL }
 

Public Member Functions

void AddIgnoreCriteria (IgnoreCriteria *ignore_criteria)
 
void AddIgnoreCriteria (IgnoreCriteria *ignore_criteria)
 
bool Compare (const Message &message1, const Message &message2)
 
bool Compare (const Message &message1, const Message &message2)
 
bool CompareWithFields (const Message &message1, const Message &message2, const std::vector< const FieldDescriptor * > &message1_fields, const std::vector< const FieldDescriptor * > &message2_fields)
 
bool CompareWithFields (const Message &message1, const Message &message2, const std::vector< const FieldDescriptor * > &message1_fields, const std::vector< const FieldDescriptor * > &message2_fields)
 
MapKeyComparatorCreateMultipleFieldsMapKeyComparator (const std::vector< std::vector< const FieldDescriptor * > > &key_field_paths)
 
MapKeyComparatorCreateMultipleFieldsMapKeyComparator (const std::vector< std::vector< const FieldDescriptor * > > &key_field_paths)
 
void IgnoreField (const FieldDescriptor *field)
 
void IgnoreField (const FieldDescriptor *field)
 
 MessageDifferencer ()
 
 MessageDifferencer ()
 
RepeatedFieldComparison repeated_field_comparison ()
 
void ReportDifferencesTo (Reporter *reporter)
 
void ReportDifferencesTo (Reporter *reporter)
 
void ReportDifferencesToString (std::string *output)
 
void ReportDifferencesToString (std::string *output)
 
Scope scope ()
 
Scope scope ()
 
void set_field_comparator (FieldComparator *comparator)
 
void set_field_comparator (FieldComparator *comparator)
 
void set_float_comparison (FloatComparison comparison)
 
void set_float_comparison (FloatComparison comparison)
 
void set_message_field_comparison (MessageFieldComparison comparison)
 
void set_message_field_comparison (MessageFieldComparison comparison)
 
void set_repeated_field_comparison (RepeatedFieldComparison comparison)
 
void set_repeated_field_comparison (RepeatedFieldComparison comparison)
 
void set_report_ignores (bool report_ignores)
 
void set_report_ignores (bool report_ignores)
 
void set_report_matches (bool report_matches)
 
void set_report_matches (bool report_matches)
 
void set_report_moves (bool report_moves)
 
void set_report_moves (bool report_moves)
 
void set_scope (Scope scope)
 
void set_scope (Scope scope)
 
void SetFractionAndMargin (const FieldDescriptor *field, double fraction, double margin)
 
void SetFractionAndMargin (const FieldDescriptor *field, double fraction, double margin)
 
void TreatAsList (const FieldDescriptor *field)
 
void TreatAsList (const FieldDescriptor *field)
 
void TreatAsMap (const FieldDescriptor *field, const FieldDescriptor *key)
 
void TreatAsMap (const FieldDescriptor *field, const FieldDescriptor *key)
 
void TreatAsMapUsingKeyComparator (const FieldDescriptor *field, const MapKeyComparator *key_comparator)
 
void TreatAsMapUsingKeyComparator (const FieldDescriptor *field, const MapKeyComparator *key_comparator)
 
void TreatAsMapWithMultipleFieldPathsAsKey (const FieldDescriptor *field, const std::vector< std::vector< const FieldDescriptor * > > &key_field_paths)
 
void TreatAsMapWithMultipleFieldPathsAsKey (const FieldDescriptor *field, const std::vector< std::vector< const FieldDescriptor * > > &key_field_paths)
 
void TreatAsMapWithMultipleFieldsAsKey (const FieldDescriptor *field, const std::vector< const FieldDescriptor * > &key_fields)
 
void TreatAsMapWithMultipleFieldsAsKey (const FieldDescriptor *field, const std::vector< const FieldDescriptor * > &key_fields)
 
void TreatAsSet (const FieldDescriptor *field)
 
void TreatAsSet (const FieldDescriptor *field)
 
void TreatAsSmartList (const FieldDescriptor *field)
 
void TreatAsSmartList (const FieldDescriptor *field)
 
void TreatAsSmartSet (const FieldDescriptor *field)
 
void TreatAsSmartSet (const FieldDescriptor *field)
 
 ~MessageDifferencer ()
 
 ~MessageDifferencer ()
 

Static Public Member Functions

static bool ApproximatelyEquals (const Message &message1, const Message &message2)
 
static bool ApproximatelyEquals (const Message &message1, const Message &message2)
 
static bool ApproximatelyEquivalent (const Message &message1, const Message &message2)
 
static bool ApproximatelyEquivalent (const Message &message1, const Message &message2)
 
static bool Equals (const Message &message1, const Message &message2)
 
static bool Equals (const Message &message1, const Message &message2)
 
static bool Equivalent (const Message &message1, const Message &message2)
 
static bool Equivalent (const Message &message1, const Message &message2)
 

Private Types

enum  { kFCDefault, kFCBase }
 
typedef std::map< const FieldDescriptor *, const MapKeyComparator * > FieldKeyComparatorMap
 
typedef std::map< const FieldDescriptor *, const MapKeyComparator * > FieldKeyComparatorMap
 
typedef std::map< const FieldDescriptor *, RepeatedFieldComparisonFieldMap
 
typedef std::map< const FieldDescriptor *, RepeatedFieldComparisonFieldMap
 
typedef std::set< const FieldDescriptor * > FieldSet
 
typedef std::set< const FieldDescriptor * > FieldSet
 

Private Member Functions

void CheckRepeatedFieldComparisons (const FieldDescriptor *field, const RepeatedFieldComparison &new_comparison)
 
void CheckRepeatedFieldComparisons (const FieldDescriptor *field, const RepeatedFieldComparison &new_comparison)
 
FieldDescriptorArray CombineFields (const FieldDescriptorArray &fields1, Scope fields1_scope, const FieldDescriptorArray &fields2, Scope fields2_scope)
 
FieldDescriptorArray CombineFields (const FieldDescriptorArray &fields1, Scope fields1_scope, const FieldDescriptorArray &fields2, Scope fields2_scope)
 
bool Compare (const Message &message1, const Message &message2, std::vector< SpecificField > *parent_fields)
 
bool Compare (const Message &message1, const Message &message2, std::vector< SpecificField > *parent_fields)
 
bool CompareFieldValue (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2)
 
bool CompareFieldValue (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2)
 
bool CompareFieldValueUsingParentFields (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2, std::vector< SpecificField > *parent_fields)
 
bool CompareFieldValueUsingParentFields (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2, std::vector< SpecificField > *parent_fields)
 
bool CompareMapField (const Message &message1, const Message &message2, const FieldDescriptor *field, std::vector< SpecificField > *parent_fields)
 
bool CompareMapFieldByMapReflection (const Message &message1, const Message &message2, const FieldDescriptor *field, std::vector< SpecificField > *parent_fields, DefaultFieldComparator *comparator)
 
bool CompareRepeatedField (const Message &message1, const Message &message2, const FieldDescriptor *field, std::vector< SpecificField > *parent_fields)
 
bool CompareRepeatedField (const Message &message1, const Message &message2, const FieldDescriptor *field, std::vector< SpecificField > *parent_fields)
 
bool CompareRepeatedRep (const Message &message1, const Message &message2, const FieldDescriptor *field, std::vector< SpecificField > *parent_fields)
 
bool CompareRequestedFieldsUsingSettings (const Message &message1, const Message &message2, const FieldDescriptorArray &message1_fields, const FieldDescriptorArray &message2_fields, std::vector< SpecificField > *parent_fields)
 
bool CompareRequestedFieldsUsingSettings (const Message &message1, const Message &message2, const FieldDescriptorArray &message1_fields, const FieldDescriptorArray &message2_fields, std::vector< SpecificField > *parent_fields)
 
bool CompareUnknownFields (const Message &message1, const Message &message2, const UnknownFieldSet &, const UnknownFieldSet &, std::vector< SpecificField > *parent_fields)
 
bool CompareUnknownFields (const Message &message1, const Message &message2, const UnknownFieldSet &, const UnknownFieldSet &, std::vector< SpecificField > *parent_fields)
 
bool CompareWithFieldsInternal (const Message &message1, const Message &message2, const FieldDescriptorArray &message1_fields, const FieldDescriptorArray &message2_fields, std::vector< SpecificField > *parent_fields)
 
bool CompareWithFieldsInternal (const Message &message1, const Message &message2, const FieldDescriptorArray &message1_fields, const FieldDescriptorArray &message2_fields, std::vector< SpecificField > *parent_fields)
 
FieldComparator::ComparisonResult GetFieldComparisonResult (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2, const FieldContext *field_context)
 
FieldComparator::ComparisonResult GetFieldComparisonResult (const Message &message1, const Message &message2, const FieldDescriptor *field, int index1, int index2, const FieldContext *field_context)
 
const MapKeyComparatorGetMapKeyComparator (const FieldDescriptor *field) const
 
const MapKeyComparatorGetMapKeyComparator (const FieldDescriptor *field) const
 
 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS (MessageDifferencer)
 
 GOOGLE_DISALLOW_EVIL_CONSTRUCTORS (MessageDifferencer)
 
bool IsIgnored (const Message &message1, const Message &message2, const FieldDescriptor *field, const std::vector< SpecificField > &parent_fields)
 
bool IsIgnored (const Message &message1, const Message &message2, const FieldDescriptor *field, const std::vector< SpecificField > &parent_fields)
 
bool IsMatch (const FieldDescriptor *repeated_field, const MapKeyComparator *key_comparator, const Message *message1, const Message *message2, const std::vector< SpecificField > &parent_fields, Reporter *reporter, int index1, int index2)
 
bool IsMatch (const FieldDescriptor *repeated_field, const MapKeyComparator *key_comparator, const Message *message1, const Message *message2, const std::vector< SpecificField > &parent_fields, Reporter *reporter, int index1, int index2)
 
bool IsTreatedAsSet (const FieldDescriptor *field)
 
bool IsTreatedAsSet (const FieldDescriptor *field)
 
bool IsTreatedAsSmartList (const FieldDescriptor *field)
 
bool IsTreatedAsSmartList (const FieldDescriptor *field)
 
bool IsTreatedAsSmartSet (const FieldDescriptor *field)
 
bool IsTreatedAsSmartSet (const FieldDescriptor *field)
 
bool IsTreatedAsSubset (const FieldDescriptor *field)
 
bool IsTreatedAsSubset (const FieldDescriptor *field)
 
bool IsUnknownFieldIgnored (const Message &message1, const Message &message2, const SpecificField &field, const std::vector< SpecificField > &parent_fields)
 
bool IsUnknownFieldIgnored (const Message &message1, const Message &message2, const SpecificField &field, const std::vector< SpecificField > &parent_fields)
 
bool MatchRepeatedFieldIndices (const Message &message1, const Message &message2, const FieldDescriptor *repeated_field, const MapKeyComparator *key_comparator, const std::vector< SpecificField > &parent_fields, std::vector< int > *match_list1, std::vector< int > *match_list2)
 
bool MatchRepeatedFieldIndices (const Message &message1, const Message &message2, const FieldDescriptor *repeated_field, const MapKeyComparator *key_comparator, const std::vector< SpecificField > &parent_fields, std::vector< int > *match_list1, std::vector< int > *match_list2)
 
FieldDescriptorArray RetrieveFields (const Message &message, bool base_message)
 
FieldDescriptorArray RetrieveFields (const Message &message, bool base_message)
 
void SetMatchIndicesForSmartListCallback (std::function< void(std::vector< int > *, std::vector< int > *)> callback)
 
void SetMatchIndicesForSmartListCallback (std::function< void(std::vector< int > *, std::vector< int > *)> callback)
 
bool UnpackAny (const Message &any, std::unique_ptr< Message > *data)
 

Static Private Member Functions

static bool CheckPathChanged (const std::vector< SpecificField > &parent_fields)
 
static bool CheckPathChanged (const std::vector< SpecificField > &parent_fields)
 
static bool FieldBefore (const FieldDescriptor *field1, const FieldDescriptor *field2)
 
static bool FieldBefore (const FieldDescriptor *field1, const FieldDescriptor *field2)
 

Private Attributes

DefaultFieldComparator default_field_comparator_
 
std::unique_ptr< DynamicMessageFactorydynamic_message_factory_
 
FieldComparatorfield_comparator_
 
union {
   FieldComparator *   base
 
   DefaultFieldComparator *   default_impl
 
field_comparator_ = {&default_field_comparator_}
 
enum google::protobuf::util::MessageDifferencer:: { ... }  field_comparator_kind_ = kFCDefault
 
std::vector< IgnoreCriteria * > ignore_criteria_
 
FieldSet ignored_fields_
 
MapEntryKeyComparator map_entry_key_comparator_
 
FieldKeyComparatorMap map_field_key_comparator_
 
std::function< void(std::vector< int > *, std::vector< int > *)> match_indices_for_smart_list_callback_
 
MessageFieldComparison message_field_comparison_
 
std::string * output_string_
 
std::vector< MapKeyComparator * > owned_key_comparators_
 
RepeatedFieldComparison repeated_field_comparison_
 
FieldMap repeated_field_comparisons_
 
bool report_ignores_
 
bool report_matches_
 
bool report_moves_
 
Reporterreporter_
 
Scope scope_
 
std::vector< const FieldDescriptor * > tmp_message_fields_
 
MessageDifferencer::UnpackAnyField unpack_any_field_
 

Friends

class DefaultFieldComparator
 
class SimpleFieldComparator
 

Detailed Description

Definition at line 120 of file bloaty/third_party/protobuf/src/google/protobuf/util/message_differencer.h.

Member Typedef Documentation

◆ FieldKeyComparatorMap [1/2]

◆ FieldKeyComparatorMap [2/2]

◆ FieldMap [1/2]

◆ FieldMap [2/2]

◆ FieldSet [1/2]

◆ FieldSet [2/2]

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
private
Enumerator
kFCDefault 
kFCBase 

Definition at line 938 of file protobuf/src/google/protobuf/util/message_differencer.h.

◆ FloatComparison [1/2]

Enumerator
EXACT 
APPROXIMATE 
EXACT 
APPROXIMATE 

Definition at line 367 of file bloaty/third_party/protobuf/src/google/protobuf/util/message_differencer.h.

◆ FloatComparison [2/2]

Enumerator
EXACT 
APPROXIMATE 
EXACT 
APPROXIMATE 

Definition at line 376 of file protobuf/src/google/protobuf/util/message_differencer.h.

◆ MessageFieldComparison [1/2]

Enumerator
EQUAL 
EQUIVALENT 
EQUAL 
EQUIVALENT 

Definition at line 350 of file bloaty/third_party/protobuf/src/google/protobuf/util/message_differencer.h.

◆ MessageFieldComparison [2/2]

Enumerator
EQUAL 
EQUIVALENT 
EQUAL 
EQUIVALENT 

Definition at line 359 of file protobuf/src/google/protobuf/util/message_differencer.h.

◆ RepeatedFieldComparison [1/2]

Enumerator
AS_LIST 
AS_SET 
AS_SMART_LIST 
AS_SMART_SET 
AS_LIST 
AS_SET 
AS_SMART_LIST 
AS_SMART_SET 

Definition at line 373 of file bloaty/third_party/protobuf/src/google/protobuf/util/message_differencer.h.

◆ RepeatedFieldComparison [2/2]

Enumerator
AS_LIST 
AS_SET 
AS_SMART_LIST 
AS_SMART_SET 
AS_LIST 
AS_SET 
AS_SMART_LIST 
AS_SMART_SET 

Definition at line 382 of file protobuf/src/google/protobuf/util/message_differencer.h.

◆ Scope [1/2]

Enumerator
FULL 
PARTIAL 
FULL 
PARTIAL 

Definition at line 359 of file bloaty/third_party/protobuf/src/google/protobuf/util/message_differencer.h.

◆ Scope [2/2]

Enumerator
FULL 
PARTIAL 
FULL 
PARTIAL 

Definition at line 368 of file protobuf/src/google/protobuf/util/message_differencer.h.

Constructor & Destructor Documentation

◆ MessageDifferencer() [1/2]

google::protobuf::util::MessageDifferencer::MessageDifferencer ( )
explicit

◆ ~MessageDifferencer() [1/2]

google::protobuf::util::MessageDifferencer::~MessageDifferencer ( )

◆ MessageDifferencer() [2/2]

google::protobuf::util::MessageDifferencer::MessageDifferencer ( )
explicit

◆ ~MessageDifferencer() [2/2]

google::protobuf::util::MessageDifferencer::~MessageDifferencer ( )

Member Function Documentation

◆ AddIgnoreCriteria() [1/2]

void google::protobuf::util::MessageDifferencer::AddIgnoreCriteria ( IgnoreCriteria ignore_criteria)

◆ AddIgnoreCriteria() [2/2]

void google::protobuf::util::MessageDifferencer::AddIgnoreCriteria ( IgnoreCriteria ignore_criteria)

◆ ApproximatelyEquals() [1/2]

bool google::protobuf::util::MessageDifferencer::ApproximatelyEquals ( const Message message1,
const Message message2 
)
static

◆ ApproximatelyEquals() [2/2]

static bool google::protobuf::util::MessageDifferencer::ApproximatelyEquals ( const Message message1,
const Message message2 
)
static

◆ ApproximatelyEquivalent() [1/2]

bool google::protobuf::util::MessageDifferencer::ApproximatelyEquivalent ( const Message message1,
const Message message2 
)
static

◆ ApproximatelyEquivalent() [2/2]

static bool google::protobuf::util::MessageDifferencer::ApproximatelyEquivalent ( const Message message1,
const Message message2 
)
static

◆ CheckPathChanged() [1/2]

bool google::protobuf::util::MessageDifferencer::CheckPathChanged ( const std::vector< SpecificField > &  parent_fields)
staticprivate

◆ CheckPathChanged() [2/2]

static bool google::protobuf::util::MessageDifferencer::CheckPathChanged ( const std::vector< SpecificField > &  parent_fields)
staticprivate

◆ CheckRepeatedFieldComparisons() [1/2]

void google::protobuf::util::MessageDifferencer::CheckRepeatedFieldComparisons ( const FieldDescriptor field,
const RepeatedFieldComparison new_comparison 
)
private

◆ CheckRepeatedFieldComparisons() [2/2]

void google::protobuf::util::MessageDifferencer::CheckRepeatedFieldComparisons ( const FieldDescriptor field,
const RepeatedFieldComparison new_comparison 
)
private

◆ CombineFields() [1/2]

FieldDescriptorArray google::protobuf::util::MessageDifferencer::CombineFields ( const FieldDescriptorArray fields1,
Scope  fields1_scope,
const FieldDescriptorArray fields2,
Scope  fields2_scope 
)
private

◆ CombineFields() [2/2]

FieldDescriptorArray google::protobuf::util::MessageDifferencer::CombineFields ( const FieldDescriptorArray fields1,
Scope  fields1_scope,
const FieldDescriptorArray fields2,
Scope  fields2_scope 
)
private

◆ Compare() [1/4]

bool google::protobuf::util::MessageDifferencer::Compare ( const Message message1,
const Message message2 
)

◆ Compare() [2/4]

bool google::protobuf::util::MessageDifferencer::Compare ( const Message message1,
const Message message2 
)

◆ Compare() [3/4]

bool google::protobuf::util::MessageDifferencer::Compare ( const Message message1,
const Message message2,
std::vector< SpecificField > *  parent_fields 
)
private

◆ Compare() [4/4]

bool google::protobuf::util::MessageDifferencer::Compare ( const Message message1,
const Message message2,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareFieldValue() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareFieldValue ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2 
)
private

◆ CompareFieldValue() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareFieldValue ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2 
)
private

◆ CompareFieldValueUsingParentFields() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareFieldValueUsingParentFields ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareFieldValueUsingParentFields() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareFieldValueUsingParentFields ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareMapField()

bool google::protobuf::util::MessageDifferencer::CompareMapField ( const Message message1,
const Message message2,
const FieldDescriptor field,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareMapFieldByMapReflection()

bool google::protobuf::util::MessageDifferencer::CompareMapFieldByMapReflection ( const Message message1,
const Message message2,
const FieldDescriptor field,
std::vector< SpecificField > *  parent_fields,
DefaultFieldComparator comparator 
)
private

◆ CompareRepeatedField() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareRepeatedField ( const Message message1,
const Message message2,
const FieldDescriptor field,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareRepeatedField() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareRepeatedField ( const Message message1,
const Message message2,
const FieldDescriptor field,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareRepeatedRep()

bool google::protobuf::util::MessageDifferencer::CompareRepeatedRep ( const Message message1,
const Message message2,
const FieldDescriptor field,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareRequestedFieldsUsingSettings() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareRequestedFieldsUsingSettings ( const Message message1,
const Message message2,
const FieldDescriptorArray message1_fields,
const FieldDescriptorArray message2_fields,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareRequestedFieldsUsingSettings() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareRequestedFieldsUsingSettings ( const Message message1,
const Message message2,
const FieldDescriptorArray message1_fields,
const FieldDescriptorArray message2_fields,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareUnknownFields() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareUnknownFields ( const Message message1,
const Message message2,
const UnknownFieldSet unknown_field_set1,
const UnknownFieldSet unknown_field_set2,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareUnknownFields() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareUnknownFields ( const Message message1,
const Message message2,
const UnknownFieldSet ,
const UnknownFieldSet ,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareWithFields() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareWithFields ( const Message message1,
const Message message2,
const std::vector< const FieldDescriptor * > &  message1_fields,
const std::vector< const FieldDescriptor * > &  message2_fields 
)

◆ CompareWithFields() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareWithFields ( const Message message1,
const Message message2,
const std::vector< const FieldDescriptor * > &  message1_fields,
const std::vector< const FieldDescriptor * > &  message2_fields 
)

◆ CompareWithFieldsInternal() [1/2]

bool google::protobuf::util::MessageDifferencer::CompareWithFieldsInternal ( const Message message1,
const Message message2,
const FieldDescriptorArray message1_fields,
const FieldDescriptorArray message2_fields,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CompareWithFieldsInternal() [2/2]

bool google::protobuf::util::MessageDifferencer::CompareWithFieldsInternal ( const Message message1,
const Message message2,
const FieldDescriptorArray message1_fields,
const FieldDescriptorArray message2_fields,
std::vector< SpecificField > *  parent_fields 
)
private

◆ CreateMultipleFieldsMapKeyComparator() [1/2]

MessageDifferencer::MapKeyComparator * google::protobuf::util::MessageDifferencer::CreateMultipleFieldsMapKeyComparator ( const std::vector< std::vector< const FieldDescriptor * > > &  key_field_paths)

◆ CreateMultipleFieldsMapKeyComparator() [2/2]

MapKeyComparator* google::protobuf::util::MessageDifferencer::CreateMultipleFieldsMapKeyComparator ( const std::vector< std::vector< const FieldDescriptor * > > &  key_field_paths)

◆ Equals() [1/2]

bool google::protobuf::util::MessageDifferencer::Equals ( const Message message1,
const Message message2 
)
static

◆ Equals() [2/2]

static bool google::protobuf::util::MessageDifferencer::Equals ( const Message message1,
const Message message2 
)
static

◆ Equivalent() [1/2]

bool google::protobuf::util::MessageDifferencer::Equivalent ( const Message message1,
const Message message2 
)
static

◆ Equivalent() [2/2]

static bool google::protobuf::util::MessageDifferencer::Equivalent ( const Message message1,
const Message message2 
)
static

◆ FieldBefore() [1/2]

bool google::protobuf::util::MessageDifferencer::FieldBefore ( const FieldDescriptor field1,
const FieldDescriptor field2 
)
staticprivate

◆ FieldBefore() [2/2]

static bool google::protobuf::util::MessageDifferencer::FieldBefore ( const FieldDescriptor field1,
const FieldDescriptor field2 
)
staticprivate

◆ GetFieldComparisonResult() [1/2]

FieldComparator::ComparisonResult google::protobuf::util::MessageDifferencer::GetFieldComparisonResult ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2,
const FieldContext field_context 
)
private

◆ GetFieldComparisonResult() [2/2]

FieldComparator::ComparisonResult google::protobuf::util::MessageDifferencer::GetFieldComparisonResult ( const Message message1,
const Message message2,
const FieldDescriptor field,
int  index1,
int  index2,
const FieldContext field_context 
)
private

◆ GetMapKeyComparator() [1/2]

const MessageDifferencer::MapKeyComparator * google::protobuf::util::MessageDifferencer::GetMapKeyComparator ( const FieldDescriptor field) const
private

◆ GetMapKeyComparator() [2/2]

const MapKeyComparator* google::protobuf::util::MessageDifferencer::GetMapKeyComparator ( const FieldDescriptor field) const
private

◆ GOOGLE_DISALLOW_EVIL_CONSTRUCTORS() [1/2]

google::protobuf::util::MessageDifferencer::GOOGLE_DISALLOW_EVIL_CONSTRUCTORS ( MessageDifferencer  )
private

◆ GOOGLE_DISALLOW_EVIL_CONSTRUCTORS() [2/2]

google::protobuf::util::MessageDifferencer::GOOGLE_DISALLOW_EVIL_CONSTRUCTORS ( MessageDifferencer  )
private

◆ IgnoreField() [1/2]

void google::protobuf::util::MessageDifferencer::IgnoreField ( const FieldDescriptor field)

◆ IgnoreField() [2/2]

void google::protobuf::util::MessageDifferencer::IgnoreField ( const FieldDescriptor field)

◆ IsIgnored() [1/2]

bool google::protobuf::util::MessageDifferencer::IsIgnored ( const Message message1,
const Message message2,
const FieldDescriptor field,
const std::vector< SpecificField > &  parent_fields 
)
private

◆ IsIgnored() [2/2]

bool google::protobuf::util::MessageDifferencer::IsIgnored ( const Message message1,
const Message message2,
const FieldDescriptor field,
const std::vector< SpecificField > &  parent_fields 
)
private

◆ IsMatch() [1/2]

bool google::protobuf::util::MessageDifferencer::IsMatch ( const FieldDescriptor repeated_field,
const MapKeyComparator key_comparator,
const Message message1,
const Message message2,
const std::vector< SpecificField > &  parent_fields,
Reporter reporter,
int  index1,
int  index2 
)
private

◆ IsMatch() [2/2]

bool google::protobuf::util::MessageDifferencer::IsMatch ( const FieldDescriptor repeated_field,
const MapKeyComparator key_comparator,
const Message message1,
const Message message2,
const std::vector< SpecificField > &  parent_fields,
Reporter reporter,
int  index1,
int  index2 
)
private

◆ IsTreatedAsSet() [1/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSet ( const FieldDescriptor field)
private

◆ IsTreatedAsSet() [2/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSet ( const FieldDescriptor field)
private

◆ IsTreatedAsSmartList() [1/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSmartList ( const FieldDescriptor field)
private

◆ IsTreatedAsSmartList() [2/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSmartList ( const FieldDescriptor field)
private

◆ IsTreatedAsSmartSet() [1/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSmartSet ( const FieldDescriptor field)
private

◆ IsTreatedAsSmartSet() [2/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSmartSet ( const FieldDescriptor field)
private

◆ IsTreatedAsSubset() [1/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSubset ( const FieldDescriptor field)
private

◆ IsTreatedAsSubset() [2/2]

bool google::protobuf::util::MessageDifferencer::IsTreatedAsSubset ( const FieldDescriptor field)
private

◆ IsUnknownFieldIgnored() [1/2]

bool google::protobuf::util::MessageDifferencer::IsUnknownFieldIgnored ( const Message message1,
const Message message2,
const SpecificField field,
const std::vector< SpecificField > &  parent_fields 
)
private

◆ IsUnknownFieldIgnored() [2/2]

bool google::protobuf::util::MessageDifferencer::IsUnknownFieldIgnored ( const Message message1,
const Message message2,
const SpecificField field,
const std::vector< SpecificField > &  parent_fields 
)
private

◆ MatchRepeatedFieldIndices() [1/2]

bool google::protobuf::util::MessageDifferencer::MatchRepeatedFieldIndices ( const Message message1,
const Message message2,
const FieldDescriptor repeated_field,
const MapKeyComparator key_comparator,
const std::vector< SpecificField > &  parent_fields,
std::vector< int > *  match_list1,
std::vector< int > *  match_list2 
)
private

◆ MatchRepeatedFieldIndices() [2/2]

bool google::protobuf::util::MessageDifferencer::MatchRepeatedFieldIndices ( const Message message1,
const Message message2,
const FieldDescriptor repeated_field,
const MapKeyComparator key_comparator,
const std::vector< SpecificField > &  parent_fields,
std::vector< int > *  match_list1,
std::vector< int > *  match_list2 
)
private

◆ repeated_field_comparison()

MessageDifferencer::RepeatedFieldComparison google::protobuf::util::MessageDifferencer::repeated_field_comparison ( )

◆ ReportDifferencesTo() [1/2]

void google::protobuf::util::MessageDifferencer::ReportDifferencesTo ( Reporter reporter)

◆ ReportDifferencesTo() [2/2]

void google::protobuf::util::MessageDifferencer::ReportDifferencesTo ( Reporter reporter)

◆ ReportDifferencesToString() [1/2]

void google::protobuf::util::MessageDifferencer::ReportDifferencesToString ( std::string *  output)

◆ ReportDifferencesToString() [2/2]

void google::protobuf::util::MessageDifferencer::ReportDifferencesToString ( std::string *  output)

◆ RetrieveFields() [1/2]

FieldDescriptorArray google::protobuf::util::MessageDifferencer::RetrieveFields ( const Message message,
bool  base_message 
)
private

◆ RetrieveFields() [2/2]

FieldDescriptorArray google::protobuf::util::MessageDifferencer::RetrieveFields ( const Message message,
bool  base_message 
)
private

◆ scope() [1/2]

MessageDifferencer::Scope google::protobuf::util::MessageDifferencer::scope ( )

◆ scope() [2/2]

Scope google::protobuf::util::MessageDifferencer::scope ( )

◆ set_field_comparator() [1/2]

void google::protobuf::util::MessageDifferencer::set_field_comparator ( FieldComparator comparator)

◆ set_field_comparator() [2/2]

void google::protobuf::util::MessageDifferencer::set_field_comparator ( FieldComparator comparator)

◆ set_float_comparison() [1/2]

void google::protobuf::util::MessageDifferencer::set_float_comparison ( FloatComparison  comparison)

◆ set_float_comparison() [2/2]

void google::protobuf::util::MessageDifferencer::set_float_comparison ( FloatComparison  comparison)

◆ set_message_field_comparison() [1/2]

void google::protobuf::util::MessageDifferencer::set_message_field_comparison ( MessageFieldComparison  comparison)

◆ set_message_field_comparison() [2/2]

void google::protobuf::util::MessageDifferencer::set_message_field_comparison ( MessageFieldComparison  comparison)

◆ set_repeated_field_comparison() [1/2]

void google::protobuf::util::MessageDifferencer::set_repeated_field_comparison ( RepeatedFieldComparison  comparison)

◆ set_repeated_field_comparison() [2/2]

void google::protobuf::util::MessageDifferencer::set_repeated_field_comparison ( RepeatedFieldComparison  comparison)

◆ set_report_ignores() [1/2]

void google::protobuf::util::MessageDifferencer::set_report_ignores ( bool  report_ignores)
inline

◆ set_report_ignores() [2/2]

void google::protobuf::util::MessageDifferencer::set_report_ignores ( bool  report_ignores)
inline

◆ set_report_matches() [1/2]

void google::protobuf::util::MessageDifferencer::set_report_matches ( bool  report_matches)
inline

◆ set_report_matches() [2/2]

void google::protobuf::util::MessageDifferencer::set_report_matches ( bool  report_matches)
inline

◆ set_report_moves() [1/2]

void google::protobuf::util::MessageDifferencer::set_report_moves ( bool  report_moves)
inline

◆ set_report_moves() [2/2]

void google::protobuf::util::MessageDifferencer::set_report_moves ( bool  report_moves)
inline

◆ set_scope() [1/2]

void google::protobuf::util::MessageDifferencer::set_scope ( Scope  scope)

◆ set_scope() [2/2]

void google::protobuf::util::MessageDifferencer::set_scope ( Scope  scope)

◆ SetFractionAndMargin() [1/2]

void google::protobuf::util::MessageDifferencer::SetFractionAndMargin ( const FieldDescriptor field,
double  fraction,
double  margin 
)

◆ SetFractionAndMargin() [2/2]

void google::protobuf::util::MessageDifferencer::SetFractionAndMargin ( const FieldDescriptor field,
double  fraction,
double  margin 
)

◆ SetMatchIndicesForSmartListCallback() [1/2]

void google::protobuf::util::MessageDifferencer::SetMatchIndicesForSmartListCallback ( std::function< void(std::vector< int > *, std::vector< int > *)>  callback)
private

◆ SetMatchIndicesForSmartListCallback() [2/2]

void google::protobuf::util::MessageDifferencer::SetMatchIndicesForSmartListCallback ( std::function< void(std::vector< int > *, std::vector< int > *)>  callback)
private

◆ TreatAsList() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsList ( const FieldDescriptor field)

◆ TreatAsList() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsList ( const FieldDescriptor field)

◆ TreatAsMap() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsMap ( const FieldDescriptor field,
const FieldDescriptor key 
)

◆ TreatAsMap() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsMap ( const FieldDescriptor field,
const FieldDescriptor key 
)

◆ TreatAsMapUsingKeyComparator() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapUsingKeyComparator ( const FieldDescriptor field,
const MapKeyComparator key_comparator 
)

◆ TreatAsMapUsingKeyComparator() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapUsingKeyComparator ( const FieldDescriptor field,
const MapKeyComparator key_comparator 
)

◆ TreatAsMapWithMultipleFieldPathsAsKey() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldPathsAsKey ( const FieldDescriptor field,
const std::vector< std::vector< const FieldDescriptor * > > &  key_field_paths 
)

◆ TreatAsMapWithMultipleFieldPathsAsKey() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldPathsAsKey ( const FieldDescriptor field,
const std::vector< std::vector< const FieldDescriptor * > > &  key_field_paths 
)

◆ TreatAsMapWithMultipleFieldsAsKey() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldsAsKey ( const FieldDescriptor field,
const std::vector< const FieldDescriptor * > &  key_fields 
)

◆ TreatAsMapWithMultipleFieldsAsKey() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsMapWithMultipleFieldsAsKey ( const FieldDescriptor field,
const std::vector< const FieldDescriptor * > &  key_fields 
)

◆ TreatAsSet() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsSet ( const FieldDescriptor field)

◆ TreatAsSet() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsSet ( const FieldDescriptor field)

◆ TreatAsSmartList() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsSmartList ( const FieldDescriptor field)

◆ TreatAsSmartList() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsSmartList ( const FieldDescriptor field)

◆ TreatAsSmartSet() [1/2]

void google::protobuf::util::MessageDifferencer::TreatAsSmartSet ( const FieldDescriptor field)

◆ TreatAsSmartSet() [2/2]

void google::protobuf::util::MessageDifferencer::TreatAsSmartSet ( const FieldDescriptor field)

◆ UnpackAny()

bool google::protobuf::util::MessageDifferencer::UnpackAny ( const Message any,
std::unique_ptr< Message > *  data 
)
private

Friends And Related Function Documentation

◆ DefaultFieldComparator

friend class DefaultFieldComparator
friend

◆ SimpleFieldComparator

friend class SimpleFieldComparator
friend

Member Data Documentation

◆ base

FieldComparator* google::protobuf::util::MessageDifferencer::base

◆ default_field_comparator_

DefaultFieldComparator google::protobuf::util::MessageDifferencer::default_field_comparator_
private

◆ default_impl

DefaultFieldComparator* google::protobuf::util::MessageDifferencer::default_impl

◆ dynamic_message_factory_

std::unique_ptr<DynamicMessageFactory> google::protobuf::util::MessageDifferencer::dynamic_message_factory_
private

◆ field_comparator_ [1/2]

FieldComparator* google::protobuf::util::MessageDifferencer::field_comparator_
private

◆ field_comparator_ [2/2]

union { ... } google::protobuf::util::MessageDifferencer::field_comparator_

◆ field_comparator_kind_

enum { ... } google::protobuf::util::MessageDifferencer::field_comparator_kind_

◆ ignore_criteria_

std::vector< IgnoreCriteria * > google::protobuf::util::MessageDifferencer::ignore_criteria_
private

◆ ignored_fields_

FieldSet google::protobuf::util::MessageDifferencer::ignored_fields_
private

◆ map_entry_key_comparator_

MapEntryKeyComparator google::protobuf::util::MessageDifferencer::map_entry_key_comparator_
private

◆ map_field_key_comparator_

FieldKeyComparatorMap google::protobuf::util::MessageDifferencer::map_field_key_comparator_
private

◆ match_indices_for_smart_list_callback_

std::function< void(std::vector< int > *, std::vector< int > *)> google::protobuf::util::MessageDifferencer::match_indices_for_smart_list_callback_
private

◆ message_field_comparison_

MessageFieldComparison google::protobuf::util::MessageDifferencer::message_field_comparison_
private

◆ output_string_

std::string * google::protobuf::util::MessageDifferencer::output_string_
private

◆ owned_key_comparators_

std::vector< MapKeyComparator * > google::protobuf::util::MessageDifferencer::owned_key_comparators_
private

◆ repeated_field_comparison_

RepeatedFieldComparison google::protobuf::util::MessageDifferencer::repeated_field_comparison_
private

◆ repeated_field_comparisons_

FieldMap google::protobuf::util::MessageDifferencer::repeated_field_comparisons_
private

◆ report_ignores_

bool google::protobuf::util::MessageDifferencer::report_ignores_
private

◆ report_matches_

bool google::protobuf::util::MessageDifferencer::report_matches_
private

◆ report_moves_

bool google::protobuf::util::MessageDifferencer::report_moves_
private

◆ reporter_

Reporter * google::protobuf::util::MessageDifferencer::reporter_
private

◆ scope_

Scope google::protobuf::util::MessageDifferencer::scope_
private

◆ tmp_message_fields_

std::vector< const FieldDescriptor * > google::protobuf::util::MessageDifferencer::tmp_message_fields_
private

◆ unpack_any_field_

MessageDifferencer::UnpackAnyField google::protobuf::util::MessageDifferencer::unpack_any_field_
private

The documentation for this class was generated from the following files:


grpc
Author(s):
autogenerated on Fri May 16 2025 03:03:29