Skip to content

Commit

Permalink
Fix argument processing
Browse files Browse the repository at this point in the history
  • Loading branch information
domenic committed May 18, 2020
1 parent 8e30d3c commit d085aa6
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 24 deletions.
4 changes: 2 additions & 2 deletions lib/parameters.js
Original file line number Diff line number Diff line change
Expand Up @@ -69,15 +69,15 @@ module.exports.generateAsyncIteratorArgConversions = (ctx, idl, parent, errPrefi
}

const msg = `"${errPrefix}parameter ${i + 1}"`;
const conv = Types.generateTypeConversion(ctx, `arguments[${i}]`, idlArg.idlType, [], parent.name, msg);
const conv = Types.generateTypeConversion(ctx, `args[${i}]`, idlArg.idlType, [], parent.name, msg);
requires.merge(conv.requires);

if (isDefaultedDictionary) {
str += conv.body;
} else {
str += `
if (arguments[${i}] !== undefined) {
${conv.body}
args[${i}] = arguments[${i}];${conv.body}
}
`;
if (idlArg.default) {
Expand Down
58 changes: 36 additions & 22 deletions test/__snapshots__/test.js.snap
Original file line number Diff line number Diff line change
Expand Up @@ -314,22 +314,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand All @@ -347,22 +349,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand All @@ -380,22 +384,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand Down Expand Up @@ -770,7 +776,8 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = URL.convert(arguments[0], {
args[0] = arguments[0];
args[0] = URL.convert(args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterableValueArgs': parameter 1\\"
});
} else {
Expand Down Expand Up @@ -1136,7 +1143,7 @@ exports.install = (globalObject, globalNames) => {
}

const args = [];
arguments[0] = Dictionary.convert(arguments[0], {
args[0] = Dictionary.convert(args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterableWithReturn': parameter 1\\"
});

Expand Down Expand Up @@ -10398,22 +10405,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'keys' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand All @@ -10431,22 +10440,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'values' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand All @@ -10464,22 +10475,24 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = conversions[\\"boolean\\"](arguments[0], {
args[0] = arguments[0];
args[0] = conversions[\\"boolean\\"](args[0], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 1\\"
});
} else {
args[0] = false;
}

if (arguments[1] !== undefined) {
arguments[1] = conversions[\\"DOMString\\"](arguments[1], {
args[1] = arguments[1];
args[1] = conversions[\\"DOMString\\"](args[1], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 2\\"
});
} else {
args[1] = undefined;
}

arguments[2] = Dictionary.convert(arguments[2], {
args[2] = Dictionary.convert(args[2], {
context: \\"Failed to execute 'entries' on 'AsyncIterablePairArgs': parameter 3\\"
});

Expand Down Expand Up @@ -10854,7 +10867,8 @@ exports.install = (globalObject, globalNames) => {

const args = [];
if (arguments[0] !== undefined) {
arguments[0] = URL.convert(arguments[0], {
args[0] = arguments[0];
args[0] = URL.convert(args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterableValueArgs': parameter 1\\"
});
} else {
Expand Down Expand Up @@ -11220,7 +11234,7 @@ exports.install = (globalObject, globalNames) => {
}

const args = [];
arguments[0] = Dictionary.convert(arguments[0], {
args[0] = Dictionary.convert(args[0], {
context: \\"Failed to execute 'values' on 'AsyncIterableWithReturn': parameter 1\\"
});

Expand Down

0 comments on commit d085aa6

Please sign in to comment.