kythe.io@v0.0.68-0.20240422202219-7225dbc01741/kythe/typescript/testdata/class_expression.ts (about)

     1  export {};
     2  
     3  // This file tests 'class expression', which is use of the 'class' keyword
     4  // in some expression positions.
     5  
     6  // JS allows 'extends' of arbitrary expressions.
     7  class Extends extends (
     8  class Base {
     9    //- @member defines/binding Member
    10    member: string;
    11  }) {
    12    method() {
    13      //- @member ref Member
    14      this.member;
    15    }
    16  }
    17  
    18  const unnamed = class {
    19    //- @member2 defines/binding Member2
    20    member2: string;
    21    method() {
    22      //- @member2 ref Member2
    23      this.member2;
    24    }
    25  };