diff options
Diffstat (limited to 'js/src/tests/test262/language/rest-parameters/object-pattern.js')
-rw-r--r-- | js/src/tests/test262/language/rest-parameters/object-pattern.js | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/js/src/tests/test262/language/rest-parameters/object-pattern.js b/js/src/tests/test262/language/rest-parameters/object-pattern.js new file mode 100644 index 0000000000..c7dd35236d --- /dev/null +++ b/js/src/tests/test262/language/rest-parameters/object-pattern.js @@ -0,0 +1,46 @@ +// Copyright (C) 2015 André Bargull. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-destructuring-binding-patterns +description: > + The rest parameter can be a binding pattern. +info: | + Destructuring Binding Patterns - Syntax + + BindingRestElement[Yield]: + ...BindingPattern[?Yield] +---*/ + +function empty(...{}) {} + +function emptyWithArray(...{p: []}) {} + +function emptyWithObject(...{p: {}}) {} + +function emptyWithLeading(x, ...{}) {} + + +function singleElement(...{a: b}) {} + +function singleElementWithInitializer(...{a: b = 0}) {} + +function singleElementWithArray(...{p: [a]}) {} + +function singleElementWithObject(...{p: {a: b}}) {} + +function singleElementWithLeading(x, ...{a: b}) {} + + +function multiElement(...{a: r, b: s, c: t}) {} + +function multiElementWithInitializer(...{a: r = 0, b: s, c: t = 1}) {} + +function multiElementWithArray(...{p: [a], b, q: [c]}) {} + +function multiElementWithObject(...{a: {p: q}, b: {r}, c: {s = 0}}) {} + +function multiElementWithLeading(x, y, ...{a: r, b: s, c: t}) {} + + +reportCompare(0, 0); |