Merge pull request #20795 from Snuffleupagus/Dict-more-iterators

Change the `Dict.prototype.{getKeys, getRawValues}` methods to return iterators
This commit is contained in:
Jonas Jenwald 2026-03-04 18:26:42 +01:00 committed by GitHub
commit 4d0709c174
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 11 additions and 11 deletions

View File

@ -3398,7 +3398,7 @@ class ButtonWidgetAnnotation extends WidgetAnnotation {
? this.data.fieldValue
: "Yes";
const exportValues = this._decodeFormValue(normalAppearance.getKeys());
const exportValues = this._decodeFormValue([...normalAppearance.getKeys()]);
if (exportValues.length === 0) {
exportValues.push("Off", yes);
} else if (exportValues.length === 1) {

View File

@ -180,12 +180,12 @@ class Dict {
}
getKeys() {
return [...this._map.keys()];
return this._map.keys();
}
// No dereferencing.
getRawValues() {
return [...this._map.values()];
return this._map.values();
}
getRawEntries() {

View File

@ -276,7 +276,7 @@ describe("primitives", function () {
it("should get all key names", function () {
const expectedKeys = ["FontFile", "FontFile2", "FontFile3"];
const keys = dictWithManyKeys.getKeys();
const keys = [...dictWithManyKeys.getKeys()];
expect(keys.sort()).toEqual(expectedKeys);
});
@ -284,7 +284,7 @@ describe("primitives", function () {
it("should get all raw values", function () {
// Test direct objects:
const expectedRawValues1 = [testFontFile, testFontFile2, testFontFile3];
const rawValues1 = dictWithManyKeys.getRawValues();
const rawValues1 = [...dictWithManyKeys.getRawValues()];
expect(rawValues1.sort()).toEqual(expectedRawValues1);
@ -305,7 +305,7 @@ describe("primitives", function () {
dict.set("Contents", contentsRef);
const expectedRawValues2 = [contentsRef, resourcesRef, typeName];
const rawValues2 = dict.getRawValues();
const rawValues2 = [...dict.getRawValues()];
expect(rawValues2.sort()).toEqual(expectedRawValues2);
});
@ -337,7 +337,7 @@ describe("primitives", function () {
xref: null,
dictArray: [dictWithManyKeys, dictWithSizeKey, fontFileDict],
});
const mergedKeys = mergedDict.getKeys();
const mergedKeys = [...mergedDict.getKeys()];
expect(mergedKeys.sort()).toEqual(expectedKeys);
expect(mergedDict.get("FontFile")).toEqual(testFontFile);
@ -374,14 +374,14 @@ describe("primitives", function () {
expect(mergedFontDict instanceof Dict).toEqual(true);
expect(mergedSubFontDict instanceof Dict).toEqual(true);
const mergedFontDictKeys = mergedFontDict.getKeys();
const mergedSubFontDictKeys = mergedSubFontDict.getKeys();
const mergedFontDictKeys = [...mergedFontDict.getKeys()];
const mergedSubFontDictKeys = [...mergedSubFontDict.getKeys()];
expect(mergedFontDictKeys).toEqual(["F1"]);
expect(mergedSubFontDictKeys).toEqual(["F1", "F2", "F3"]);
const mergedFontDictValues = mergedFontDict.getRawValues();
const mergedSubFontDictValues = mergedSubFontDict.getRawValues();
const mergedFontDictValues = [...mergedFontDict.getRawValues()];
const mergedSubFontDictValues = [...mergedSubFontDict.getRawValues()];
expect(mergedFontDictValues).toEqual(["Local font one"]);
expect(mergedSubFontDictValues).toEqual([