report top-level default options (#3797)

This commit is contained in:
Alex Lam S.L
2020-04-18 11:03:06 +01:00
committed by GitHub
parent dac9e69f9e
commit 708973e51d
4 changed files with 34 additions and 14 deletions

View File

@@ -87,9 +87,11 @@ DefaultsError.prototype.name = "DefaultsError";
configure_error_stack(DefaultsError);
function defaults(args, defs, croak) {
for (var i in args) if (HOP(args, i)) {
if (croak && !HOP(defs, i)) throw new DefaultsError("`" + i + "` is not a supported option", defs);
defs[i] = args[i];
if (croak) for (var i in args) {
if (HOP(args, i) && !HOP(defs, i)) throw new DefaultsError("`" + i + "` is not a supported option", defs);
}
for (var i in args) {
if (HOP(args, i)) defs[i] = args[i];
}
return defs;
}