Skip to content

fix(compiler): strip abstract keyword from class expressions in JIT mode#157

Open
ashley-hunter wants to merge 1 commit intovoidzero-dev:mainfrom
ashley-hunter:fix/abstract-class
Open

fix(compiler): strip abstract keyword from class expressions in JIT mode#157
ashley-hunter wants to merge 1 commit intovoidzero-dev:mainfrom
ashley-hunter:fix/abstract-class

Conversation

@ashley-hunter
Copy link
Contributor

Closes #148

Summary

  • Fixes JIT compilation of abstract classes by stripping the abstract keyword when converting class declarations to class expressions (let X = class X)
  • Class expressions in JavaScript/TypeScript cannot use the abstract modifier, so it must be removed during the JIT transform

Test plan

  • Added integration test test_jit_abstract_class covering exported abstract class with @Injectable()
  • Verifies abstract class does not appear in output
  • Verifies correct class expression form (let X = class X)
  • Verifies __decorate call is present
  • Snapshot test for full output validation

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

abstract class keyword not stripped from compiled output

1 participant