Class: Json::Schema::Diff::Comparer
- Inherits:
-
Object
- Object
- Json::Schema::Diff::Comparer
- Defined in:
- lib/json/schema/diff/comparer.rb
Overview
Compares two JSON objects using schema guidance to detect changes
This class performs recursive comparison of JSON structures, using schema information to provide context and handle special cases like read-only fields.
Instance Method Summary collapse
-
#compare(old_json, new_json) ⇒ Array<Hash>
Compares two JSON objects and returns a list of changes.
-
#initialize(schema_parser, ignore_fields = []) ⇒ Comparer
constructor
Initialize a new Comparer.
Constructor Details
#initialize(schema_parser, ignore_fields = []) ⇒ Comparer
Initialize a new Comparer
15 16 17 18 |
# File 'lib/json/schema/diff/comparer.rb', line 15 def initialize(schema_parser, ignore_fields = []) @schema_parser = schema_parser @ignore_fields = ignore_fields end |
Instance Method Details
#compare(old_json, new_json) ⇒ Array<Hash>
Compares two JSON objects and returns a list of changes
25 26 27 28 29 |
# File 'lib/json/schema/diff/comparer.rb', line 25 def compare(old_json, new_json) changes = [] compare_recursive(old_json, new_json, "", changes) changes end |