6ab3adfd43
Leading comments have trailing separator while trailing comments have leading space This removes the extra trailing space in the trailing comments
63 lines
1.1 KiB
JavaScript
63 lines
1.1 KiB
JavaScript
//// [genericImplements.ts]
|
|
class A { a; };
|
|
class B { b; };
|
|
interface I {
|
|
f<T extends A>(): T;
|
|
} // { f: () => { a; } }
|
|
|
|
// OK
|
|
class X implements I {
|
|
f<T extends B>(): T { return undefined; }
|
|
} // { f: () => { b; } }
|
|
|
|
// OK
|
|
class Y implements I {
|
|
f<T extends A>(): T { return undefined; }
|
|
} // { f: () => { a; } }
|
|
|
|
// OK
|
|
class Z implements I {
|
|
f<T>(): T { return undefined; }
|
|
} // { f: <T>() => T }
|
|
|
|
//// [genericImplements.js]
|
|
var A = (function () {
|
|
function A() {
|
|
}
|
|
return A;
|
|
})();
|
|
;
|
|
var B = (function () {
|
|
function B() {
|
|
}
|
|
return B;
|
|
})();
|
|
;
|
|
// OK
|
|
var X = (function () {
|
|
function X() {
|
|
}
|
|
X.prototype.f = function () {
|
|
return undefined;
|
|
};
|
|
return X;
|
|
})(); // { f: () => { b; } }
|
|
// OK
|
|
var Y = (function () {
|
|
function Y() {
|
|
}
|
|
Y.prototype.f = function () {
|
|
return undefined;
|
|
};
|
|
return Y;
|
|
})(); // { f: () => { a; } }
|
|
// OK
|
|
var Z = (function () {
|
|
function Z() {
|
|
}
|
|
Z.prototype.f = function () {
|
|
return undefined;
|
|
};
|
|
return Z;
|
|
})(); // { f: <T>() => T }
|