Fantom

 

class compiler::Normalize

sys::Obj
  compiler::CompilerSupport
    compiler::CompilerStep
      compiler::Normalize

Source

Normalize the abstract syntax tree:

  • Collapse multiple static new blocks
  • Init static fields in static new block
  • Init instance fields in instance new block
  • Add implicit return in methods
  • Add implicit super constructor call
  • Rewrite synthetic getter/setter for override of concrete field
  • Infer collection fields from LHS of field definition
  • Generate once method boiler plate
make

new make(Compiler compiler)

Source

run

virtual override Void run()

Source

visitTypeDef

virtual override Void visitTypeDef(TypeDef t)

Source