rules. MapDiff
MapDiff 유형입니다.
MapDiff 유형은 두 데이터 세트의 rules.Map 객체.
diff를 만드는 데 사용할 MapDiff 리터럴은 없습니다. MapDiff 객체 rules.Map#diff 함수를 호출하여 반환됩니다.
아래에 설명된 MapDiff 함수는 rules.Map#diff 모든 MapDiff 함수는 rules.Set를 반환함 Map 객체 간에 비교되는 키를 나열하는 객체
// Compare two Map objects and return whether the key "a" has been // affected; that is, key "a" was added or removed, or its value was updated. request.resource.data.diff(resource.data).affectedKeys().hasOnly(["a"]);
메소드
추가된 키
addedKeys()가 rules.Set를 반환함
맵을 호출하는 모든 키를 나열하는 rules.Set를 반환합니다.
diff()
에는 diff()
에 전달된 지도가
아닙니다.
예
{"a":1}.diff({}).addedKeys() == ["a"].toSet()
영향을 받은 키
restrictedKeys()가 rules.Set를 반환함
추가된 모든 키를 나열하는 rules.Set를 반환합니다.
이전에 비해 diff()
를 호출하는 지도에서 삭제 또는 수정됨
지도가 diff()
로 전달됩니다. 이 함수는 집합을 반환합니다.
MapDiff.addedKeys()
의 결합된 결과와 같음
MapDiff.removedKeys()
및 MapDiff.changedKeys()
.
({"a":0, "c":0, "u":0}).diff({"r":0, "c":1, "u": 0}).affectedKeys() == ["a", "r", "c"].toSet()
변경된키
changedKeys()가 rules.Set를 반환함
두 지도 모두에 나타나는 모든 키를 나열하는 rules.Set를 반환합니다.
diff()
를 호출하고 지도가 diff()
에 전달되었지만
반환합니다.
예
{"a":0}.diff({"a":1, "b":4}).changedKeys() == ["a"].toSet()
삭제된 키
removedKeys()가 rules.Set를 반환함
맵을 호출하는 모든 키를 나열하는 rules.Set를 반환합니다.
diff()
에는 전달된 지도와 비교하여 포함하지 않습니다.
diff()
입니다.
예
{}.diff({"a":1}).removedKeys() == ["a"].toSet()
변경되지 않은 키
changesKeys()가 rules.Set를 반환함
두 지도 모두에 나타나는 모든 키를 나열하는 rules.Set를 반환합니다.
diff()
를 호출하고 지도가 diff()
에 전달됨
인코더에 전달합니다.
예
{"a": 0}.diff({"a":0}).unchangedKeys() == ["a"].toSet()