Fan

 

class

compiler::CompilerSupport

sys::Obj
  compiler::CompilerSupport

CompilerSupport provides lots of convenience methods for classes used during the compiler pipeline.

Slots

addTypeDefSource

Void addTypeDef(TypeDef t)

Add a synthetic type

bombIfErrSource

Void bombIfErr()

If any errors are accumulated, then throw the first one

compilerSource

virtual Compiler compiler()

Get the compiler.

errSource

virtual CompilerErr err(Str msg, Location? loc)

Create, log, and return a CompilerErr.

errReportSource

CompilerErr errReport(CompilerErr e)

Log, store, and return the specified CompilerErr.

findByFacetSource

static Type[] findByFacet(Symbol key, Obj facetVal, Obj? options := null)

Convenience for sys::Type.findByFacet which disables all the warnings which might spew out while rebuilding the type database in the middle of a compile.

logSource

CompilerLog log()

Convenience for compiler.log

makeSource

new make(Compiler compiler)

Constructor takes the associated Compiler

nsSource

CNamespace ns()

Convenience for compiler.ns

podSource

PodDef pod()

Convenience for compiler.pod

removeTypeDefSource

Void removeTypeDef(TypeDef t)

Remove a synthetic type

suppressErrSource

Bool suppressErr := false

typesSource

TypeDef[] types()

Convenience for compiler.types

unitsSource

CompilationUnit[] units()

Convenience for compiler.pod.units