/// ////class A { } ////class B {/*B*/ } ////class C { /*C*/constructor(val: T) { } } ////class D { constructor(/*D*/val: T) { } } //// ////new /*Asig*/A(); ////new /*Bsig*/B(""); ////new /*Csig*/C(""); ////new /*Dsig*/D(); var A = 'A'; var B = 'B'; var C = 'C'; var D = 'D' goTo.marker(B); edit.insert('constructor(val: T) { }'); goTo.marker('Asig'); verify.quickInfoIs("(constructor) A(): A"); goTo.marker('Bsig'); verify.quickInfoIs("(constructor) B(val: string): B"); goTo.marker('Csig'); verify.quickInfoIs("(constructor) C(val: string): C"); goTo.marker('Dsig'); verify.quickInfoIs("(constructor) D(val: T): D"); // Cannot resolve signature goTo.marker(C); edit.deleteAtCaret('constructor(val: T) { }'.length); goTo.marker('Asig'); verify.quickInfoIs("(constructor) A(): A"); goTo.marker('Bsig'); verify.quickInfoIs("(constructor) B(val: string): B"); goTo.marker('Csig'); verify.quickInfoIs("(constructor) C(): C"); // Cannot resolve signature goTo.marker('Dsig'); verify.quickInfoIs("(constructor) D(val: T): D"); // Cannot resolve signature goTo.marker(D); edit.deleteAtCaret("val: T".length); goTo.marker('Asig'); verify.quickInfoIs("(constructor) A(): A"); goTo.marker('Bsig'); verify.quickInfoIs("(constructor) B(val: string): B"); goTo.marker('Csig'); verify.quickInfoIs("(constructor) C(): C"); // Cannot resolve signature goTo.marker('Dsig'); verify.quickInfoIs("(constructor) D(): D");