Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 27 additions & 0 deletions tests/baselines/reference/emitDefaultParametersFunction.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
//// [emitDefaultParametersFunction.ts]
function foo(x: string, y = 10) { }
function baz(x: string, y = 5, ...rest) { }
function bar(y = 10) { }
function bar1(y = 10, ...rest) { }

//// [emitDefaultParametersFunction.js]
function foo(x, y) {
if (y === void 0) { y = 10; }
}
function baz(x, y) {
if (y === void 0) { y = 5; }
var rest = [];
for (var _i = 2; _i < arguments.length; _i++) {
rest[_i - 2] = arguments[_i];
}
}
function bar(y) {
if (y === void 0) { y = 10; }
}
function bar1(y) {
if (y === void 0) { y = 10; }
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
}
21 changes: 21 additions & 0 deletions tests/baselines/reference/emitDefaultParametersFunction.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunction.ts ===
function foo(x: string, y = 10) { }
>foo : (x: string, y?: number) => void
>x : string
>y : number

function baz(x: string, y = 5, ...rest) { }
>baz : (x: string, y?: number, ...rest: any[]) => void
>x : string
>y : number
>rest : any[]

function bar(y = 10) { }
>bar : (y?: number) => void
>y : number

function bar1(y = 10, ...rest) { }
>bar1 : (y?: number, ...rest: any[]) => void
>y : number
>rest : any[]

15 changes: 15 additions & 0 deletions tests/baselines/reference/emitDefaultParametersFunctionES6.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
//// [emitDefaultParametersFunctionES6.ts]
function foo(x: string, y = 10) { }
function baz(x: string, y = 5, ...rest) { }
function bar(y = 10) { }
function bar1(y = 10, ...rest) { }

//// [emitDefaultParametersFunctionES6.js]
function foo(x, y = 10) {
}
function baz(x, y = 5, ...rest) {
}
function bar(y = 10) {
}
function bar1(y = 10, ...rest) {
}
21 changes: 21 additions & 0 deletions tests/baselines/reference/emitDefaultParametersFunctionES6.types
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunctionES6.ts ===
function foo(x: string, y = 10) { }
>foo : (x: string, y?: number) => void
>x : string
>y : number

function baz(x: string, y = 5, ...rest) { }
>baz : (x: string, y?: number, ...rest: any[]) => void
>x : string
>y : number
>rest : any[]

function bar(y = 10) { }
>bar : (y?: number) => void
>y : number

function bar1(y = 10, ...rest) { }
>bar1 : (y?: number, ...rest: any[]) => void
>y : number
>rest : any[]

Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
//// [emitDefaultParametersFunctionExpression.ts]
var lambda1 = (y = "hello") => { }
var lambda2 = (x: number, y = "hello") => { }
var lambda3 = (x: number, y = "hello", ...rest) => { }
var lambda4 = (y = "hello", ...rest) => { }

var x = function (str = "hello", ...rest) { }
var y = (function (num = 10, boo = false, ...rest) { })()
var z = (function (num: number, boo = false, ...rest) { })(10)


//// [emitDefaultParametersFunctionExpression.js]
var lambda1 = function (y) {
if (y === void 0) { y = "hello"; }
};
var lambda2 = function (x, y) {
if (y === void 0) { y = "hello"; }
};
var lambda3 = function (x, y) {
if (y === void 0) { y = "hello"; }
var rest = [];
for (var _i = 2; _i < arguments.length; _i++) {
rest[_i - 2] = arguments[_i];
}
};
var lambda4 = function (y) {
if (y === void 0) { y = "hello"; }
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
};
var x = function (str) {
if (str === void 0) { str = "hello"; }
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
};
var y = (function (num, boo) {
if (num === void 0) { num = 10; }
if (boo === void 0) { boo = false; }
var rest = [];
for (var _i = 2; _i < arguments.length; _i++) {
rest[_i - 2] = arguments[_i];
}
})();
var z = (function (num, boo) {
if (boo === void 0) { boo = false; }
var rest = [];
for (var _i = 2; _i < arguments.length; _i++) {
rest[_i - 2] = arguments[_i];
}
})(10);
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunctionExpression.ts ===
var lambda1 = (y = "hello") => { }
>lambda1 : (y?: string) => void
>(y = "hello") => { } : (y?: string) => void
>y : string

var lambda2 = (x: number, y = "hello") => { }
>lambda2 : (x: number, y?: string) => void
>(x: number, y = "hello") => { } : (x: number, y?: string) => void
>x : number
>y : string

var lambda3 = (x: number, y = "hello", ...rest) => { }
>lambda3 : (x: number, y?: string, ...rest: any[]) => void
>(x: number, y = "hello", ...rest) => { } : (x: number, y?: string, ...rest: any[]) => void
>x : number
>y : string
>rest : any[]

var lambda4 = (y = "hello", ...rest) => { }
>lambda4 : (y?: string, ...rest: any[]) => void
>(y = "hello", ...rest) => { } : (y?: string, ...rest: any[]) => void
>y : string
>rest : any[]

var x = function (str = "hello", ...rest) { }
>x : (str?: string, ...rest: any[]) => void
>function (str = "hello", ...rest) { } : (str?: string, ...rest: any[]) => void
>str : string
>rest : any[]

var y = (function (num = 10, boo = false, ...rest) { })()
>y : void
>(function (num = 10, boo = false, ...rest) { })() : void
>(function (num = 10, boo = false, ...rest) { }) : (num?: number, boo?: boolean, ...rest: any[]) => void
>function (num = 10, boo = false, ...rest) { } : (num?: number, boo?: boolean, ...rest: any[]) => void
>num : number
>boo : boolean
>rest : any[]

var z = (function (num: number, boo = false, ...rest) { })(10)
>z : void
>(function (num: number, boo = false, ...rest) { })(10) : void
>(function (num: number, boo = false, ...rest) { }) : (num: number, boo?: boolean, ...rest: any[]) => void
>function (num: number, boo = false, ...rest) { } : (num: number, boo?: boolean, ...rest: any[]) => void
>num : number
>boo : boolean
>rest : any[]

Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
//// [emitDefaultParametersFunctionExpressionES6.ts]
var lambda1 = (y = "hello") => { }
var lambda2 = (x: number, y = "hello") => { }
var lambda3 = (x: number, y = "hello", ...rest) => { }
var lambda4 = (y = "hello", ...rest) => { }

var x = function (str = "hello", ...rest) { }
var y = (function (num = 10, boo = false, ...rest) { })()
var z = (function (num: number, boo = false, ...rest) { })(10)

//// [emitDefaultParametersFunctionExpressionES6.js]
var lambda1 = function (y = "hello") {
};
var lambda2 = function (x, y = "hello") {
};
var lambda3 = function (x, y = "hello", ...rest) {
};
var lambda4 = function (y = "hello", ...rest) {
};
var x = function (str = "hello", ...rest) {
};
var y = (function (num = 10, boo = false, ...rest) {
})();
var z = (function (num, boo = false, ...rest) {
})(10);
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunctionExpressionES6.ts ===
var lambda1 = (y = "hello") => { }
>lambda1 : (y?: string) => void
>(y = "hello") => { } : (y?: string) => void
>y : string

var lambda2 = (x: number, y = "hello") => { }
>lambda2 : (x: number, y?: string) => void
>(x: number, y = "hello") => { } : (x: number, y?: string) => void
>x : number
>y : string

var lambda3 = (x: number, y = "hello", ...rest) => { }
>lambda3 : (x: number, y?: string, ...rest: any[]) => void
>(x: number, y = "hello", ...rest) => { } : (x: number, y?: string, ...rest: any[]) => void
>x : number
>y : string
>rest : any[]

var lambda4 = (y = "hello", ...rest) => { }
>lambda4 : (y?: string, ...rest: any[]) => void
>(y = "hello", ...rest) => { } : (y?: string, ...rest: any[]) => void
>y : string
>rest : any[]

var x = function (str = "hello", ...rest) { }
>x : (str?: string, ...rest: any[]) => void
>function (str = "hello", ...rest) { } : (str?: string, ...rest: any[]) => void
>str : string
>rest : any[]

var y = (function (num = 10, boo = false, ...rest) { })()
>y : void
>(function (num = 10, boo = false, ...rest) { })() : void
>(function (num = 10, boo = false, ...rest) { }) : (num?: number, boo?: boolean, ...rest: any[]) => void
>function (num = 10, boo = false, ...rest) { } : (num?: number, boo?: boolean, ...rest: any[]) => void
>num : number
>boo : boolean
>rest : any[]

var z = (function (num: number, boo = false, ...rest) { })(10)
>z : void
>(function (num: number, boo = false, ...rest) { })(10) : void
>(function (num: number, boo = false, ...rest) { }) : (num: number, boo?: boolean, ...rest: any[]) => void
>function (num: number, boo = false, ...rest) { } : (num: number, boo?: boolean, ...rest: any[]) => void
>num : number
>boo : boolean
>rest : any[]

32 changes: 32 additions & 0 deletions tests/baselines/reference/emitDefaultParametersFunctionProperty.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
//// [emitDefaultParametersFunctionProperty.ts]
var obj2 = {
func1(y = 10, ...rest) { },
func2(x = "hello") { },
func3(x: string, z: number, y = "hello") { },
func4(x: string, z: number, y = "hello", ...rest) { },
}


//// [emitDefaultParametersFunctionProperty.js]
var obj2 = {
func1: function (y) {
if (y === void 0) { y = 10; }
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
},
func2: function (x) {
if (x === void 0) { x = "hello"; }
},
func3: function (x, z, y) {
if (y === void 0) { y = "hello"; }
},
func4: function (x, z, y) {
if (y === void 0) { y = "hello"; }
var rest = [];
for (var _i = 3; _i < arguments.length; _i++) {
rest[_i - 3] = arguments[_i];
}
},
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunctionProperty.ts ===
var obj2 = {
>obj2 : { func1(y?: number, ...rest: any[]): void; func2(x?: string): void; func3(x: string, z: number, y?: string): void; func4(x: string, z: number, y?: string, ...rest: any[]): void; }
>{ func1(y = 10, ...rest) { }, func2(x = "hello") { }, func3(x: string, z: number, y = "hello") { }, func4(x: string, z: number, y = "hello", ...rest) { },} : { func1(y?: number, ...rest: any[]): void; func2(x?: string): void; func3(x: string, z: number, y?: string): void; func4(x: string, z: number, y?: string, ...rest: any[]): void; }

func1(y = 10, ...rest) { },
>func1 : (y?: number, ...rest: any[]) => void
>y : number
>rest : any[]

func2(x = "hello") { },
>func2 : (x?: string) => void
>x : string

func3(x: string, z: number, y = "hello") { },
>func3 : (x: string, z: number, y?: string) => void
>x : string
>z : number
>y : string

func4(x: string, z: number, y = "hello", ...rest) { },
>func4 : (x: string, z: number, y?: string, ...rest: any[]) => void
>x : string
>z : number
>y : string
>rest : any[]
}

Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
//// [emitDefaultParametersFunctionPropertyES6.ts]
var obj2 = {
func1(y = 10, ...rest) { },
func2(x = "hello") { },
func3(x: string, z: number, y = "hello") { },
func4(x: string, z: number, y = "hello", ...rest) { },
}

//// [emitDefaultParametersFunctionPropertyES6.js]
var obj2 = {
func1(y = 10, ...rest) {
},
func2(x = "hello") {
},
func3(x, z, y = "hello") {
},
func4(x, z, y = "hello", ...rest) {
},
};
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
=== tests/cases/conformance/es6/defaultParameters/emitDefaultParametersFunctionPropertyES6.ts ===
var obj2 = {
>obj2 : { func1(y?: number, ...rest: any[]): void; func2(x?: string): void; func3(x: string, z: number, y?: string): void; func4(x: string, z: number, y?: string, ...rest: any[]): void; }
>{ func1(y = 10, ...rest) { }, func2(x = "hello") { }, func3(x: string, z: number, y = "hello") { }, func4(x: string, z: number, y = "hello", ...rest) { },} : { func1(y?: number, ...rest: any[]): void; func2(x?: string): void; func3(x: string, z: number, y?: string): void; func4(x: string, z: number, y?: string, ...rest: any[]): void; }

func1(y = 10, ...rest) { },
>func1 : (y?: number, ...rest: any[]) => void
>y : number
>rest : any[]

func2(x = "hello") { },
>func2 : (x?: string) => void
>x : string

func3(x: string, z: number, y = "hello") { },
>func3 : (x: string, z: number, y?: string) => void
>x : string
>z : number
>y : string

func4(x: string, z: number, y = "hello", ...rest) { },
>func4 : (x: string, z: number, y?: string, ...rest: any[]) => void
>x : string
>z : number
>y : string
>rest : any[]
}
Loading