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
|
tests/cases/compiler/privacyClassExtendsClauseDeclFile_externalModule.ts(19,77): error TS2449: Class 'publicClassInPrivateModule' used before its declaration.
tests/cases/compiler/privacyClassExtendsClauseDeclFile_externalModule.ts(21,83): error TS2449: Class 'publicClassInPrivateModule' used before its declaration.
==== tests/cases/compiler/privacyClassExtendsClauseDeclFile_externalModule.ts (2 errors) ====
export module publicModule {
export class publicClassInPublicModule {
private f1() {
}
}
class privateClassInPublicModule {
}
class privateClassExtendingPublicClassInModule extends publicClassInPublicModule {
}
class privateClassExtendingPrivateClassInModule extends privateClassInPublicModule {
}
export class publicClassExtendingPublicClassInModule extends publicClassInPublicModule {
}
export class publicClassExtendingPrivateClassInModule extends privateClassInPublicModule { // Should error
}
class privateClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule {
~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2449: Class 'publicClassInPrivateModule' used before its declaration.
!!! related TS2728 tests/cases/compiler/privacyClassExtendsClauseDeclFile_externalModule.ts:26:18: 'publicClassInPrivateModule' is declared here.
}
export class publicClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule { // Should error
~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2449: Class 'publicClassInPrivateModule' used before its declaration.
!!! related TS2728 tests/cases/compiler/privacyClassExtendsClauseDeclFile_externalModule.ts:26:18: 'publicClassInPrivateModule' is declared here.
}
}
module privateModule {
export class publicClassInPrivateModule {
private f1() {
}
}
class privateClassInPrivateModule {
}
class privateClassExtendingPublicClassInModule extends publicClassInPrivateModule {
}
class privateClassExtendingPrivateClassInModule extends privateClassInPrivateModule {
}
export class publicClassExtendingPublicClassInModule extends publicClassInPrivateModule {
}
export class publicClassExtendingPrivateClassInModule extends privateClassInPrivateModule {
}
class privateClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule {
}
export class publicClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule {
}
}
export class publicClass {
private f1() {
}
}
class privateClass {
}
class privateClassExtendingPublicClass extends publicClass {
}
class privateClassExtendingPrivateClassInModule extends privateClass {
}
export class publicClassExtendingPublicClass extends publicClass {
}
export class publicClassExtendingPrivateClass extends privateClass { // Should error
}
class privateClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule {
}
export class publicClassExtendingFromPrivateModuleClass extends privateModule.publicClassInPrivateModule { // Should error
}
==== tests/cases/compiler/privacyClassExtendsClauseDeclFile_GlobalFile.ts (0 errors) ====
module publicModuleInGlobal {
export class publicClassInPublicModule {
private f1() {
}
}
class privateClassInPublicModule {
}
class privateClassExtendingPublicClassInModule extends publicClassInPublicModule {
}
class privateClassExtendingPrivateClassInModule extends privateClassInPublicModule {
}
export class publicClassExtendingPublicClassInModule extends publicClassInPublicModule {
}
export class publicClassExtendingPrivateClassInModule extends privateClassInPublicModule { // Should error
}
}
class publicClassInGlobal {
}
class publicClassExtendingPublicClassInGlobal extends publicClassInGlobal {
}
|