1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176
|
//// [collisionArgumentsClassConstructor.ts]
// Constructors
class c1 {
constructor(i: number, ...arguments) { // error
var arguments: any[]; // no error
}
}
class c12 {
constructor(arguments: number, ...rest) { // error
var arguments = 10; // no error
}
}
class c1NoError {
constructor(arguments: number) { // no error
var arguments = 10; // no error
}
}
class c2 {
constructor(...restParameters) {
var arguments = 10; // no error
}
}
class c2NoError {
constructor() {
var arguments = 10; // no error
}
}
class c3 {
constructor(public arguments: number, ...restParameters) { //arguments is error
var arguments = 10; // no error
}
}
class c3NoError {
constructor(public arguments: number) { // no error
var arguments = 10; // no error
}
}
declare class c4 {
constructor(i: number, ...arguments); // No error - no code gen
}
declare class c42 {
constructor(arguments: number, ...rest); // No error - no code gen
}
declare class c4NoError {
constructor(arguments: number); // no error
}
class c5 {
constructor(i: number, ...arguments); // no codegen no error
constructor(i: string, ...arguments); // no codegen no error
constructor(i: any, ...arguments) { // error
var arguments: any[]; // no error
}
}
class c52 {
constructor(arguments: number, ...rest); // no codegen no error
constructor(arguments: string, ...rest); // no codegen no error
constructor(arguments: any, ...rest) { // error
var arguments: any; // no error
}
}
class c5NoError {
constructor(arguments: number); // no error
constructor(arguments: string); // no error
constructor(arguments: any) { // no error
var arguments: any; // no error
}
}
declare class c6 {
constructor(i: number, ...arguments); // no codegen no error
constructor(i: string, ...arguments); // no codegen no error
}
declare class c62 {
constructor(arguments: number, ...rest); // no codegen no error
constructor(arguments: string, ...rest); // no codegen no error
}
declare class c6NoError {
constructor(arguments: number); // no error
constructor(arguments: string); // no error
}
//// [collisionArgumentsClassConstructor.js]
// Constructors
var c1 = /** @class */ (function () {
function c1(i) {
var arguments = [];
for (var _i = 1; _i < arguments.length; _i++) {
arguments[_i - 1] = arguments[_i];
}
var arguments; // no error
}
return c1;
}());
var c12 = /** @class */ (function () {
function c12(arguments) {
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
var arguments = 10; // no error
}
return c12;
}());
var c1NoError = /** @class */ (function () {
function c1NoError(arguments) {
var arguments = 10; // no error
}
return c1NoError;
}());
var c2 = /** @class */ (function () {
function c2() {
var restParameters = [];
for (var _i = 0; _i < arguments.length; _i++) {
restParameters[_i] = arguments[_i];
}
var arguments = 10; // no error
}
return c2;
}());
var c2NoError = /** @class */ (function () {
function c2NoError() {
var arguments = 10; // no error
}
return c2NoError;
}());
var c3 = /** @class */ (function () {
function c3(arguments) {
var restParameters = [];
for (var _i = 1; _i < arguments.length; _i++) {
restParameters[_i - 1] = arguments[_i];
}
this.arguments = arguments;
var arguments = 10; // no error
}
return c3;
}());
var c3NoError = /** @class */ (function () {
function c3NoError(arguments) {
this.arguments = arguments;
var arguments = 10; // no error
}
return c3NoError;
}());
var c5 = /** @class */ (function () {
function c5(i) {
var arguments = [];
for (var _i = 1; _i < arguments.length; _i++) {
arguments[_i - 1] = arguments[_i];
}
var arguments; // no error
}
return c5;
}());
var c52 = /** @class */ (function () {
function c52(arguments) {
var rest = [];
for (var _i = 1; _i < arguments.length; _i++) {
rest[_i - 1] = arguments[_i];
}
var arguments; // no error
}
return c52;
}());
var c5NoError = /** @class */ (function () {
function c5NoError(arguments) {
var arguments; // no error
}
return c5NoError;
}());
|