NirCodeGen

class NirCodeGen(val settings: Settings)(using ctx: Context) extends NirGenStat with NirGenExpr with NirGenType with NirGenName with NirGenUtil with GenReflectiveInstantisation with GenNativeExports
class Object
trait Matchable
class Any

Type members

Classlikes

class CollectMethodInfo extends TreeTraverser
class MethodEnv(val fresh: Fresh)
class MethodLabelsEnv(val fresh: Fresh)

Inherited classlikes

sealed case class ContTree(f: ExprBuffer => Val)(span: Span) extends Tree[Type]
Inherited from:
NirGenExpr
abstract class DeconstructorCommon[T >: Null <: AnyRef]
Inherited from:
NirGenUtil
Inherited from:
NirGenUtil
case class ExportedSymbol(symbol: Symbol, defn: Define)
Inherited from:
GenNativeExports
class ExprBuffer(using fresh: Fresh) extends FixupBuffer
Inherited from:
NirGenExpr
sealed class FixupBuffer(using fresh: Fresh) extends InstructionBuilder
Inherited from:
NirGenExpr
protected object LinktimeProperty
Inherited from:
NirGenStat
protected case class MirrorClass(defn: Class, forwarders: Seq[Define])
Inherited from:
NirGenStat
sealed case class SimpleType(sym: Symbol, targs: Seq[SimpleType])
Inherited from:
NirGenType
sealed case class ValTree(value: Val)(span: Span) extends Tree[Type]
Inherited from:
NirGenExpr

Inherited types

opaque type OwnerSymbol
Inherited from:
GenNativeExports

Value members

Concrete methods

def run(): Unit

Inherited methods

def ContTree(from: Tree)(build: ExprBuffer => Val): ContTree
Inherited from:
NirGenExpr
def ValTree(from: Tree)(value: Val): ValTree
Inherited from:
NirGenExpr
protected def checkExplicitReturnTypeAnnotation(externDef: ValOrDefDef, methodKind: String): Unit
Inherited from:
NirGenStat
Inherited from:
NirGenType
Inherited from:
NirGenType
def genClass(td: TypeDef)(using Context): Unit
Inherited from:
NirGenStat
def genExternMethod(attrs: Attrs, name: Member, origSig: Function, dd: DefDef): Option[Defn]
Inherited from:
NirGenStat
def genExternMethodSig(sym: Symbol): Function
Inherited from:
NirGenType
def genExternSig(sym: Symbol): Extern
Inherited from:
NirGenName
Inherited from:
NirGenType
def genFieldName(sym: Symbol): Member
Inherited from:
NirGenName
protected def genLinktimeResolved(dd: DefDef, name: Member)(using SourcePosition): Option[Defn]
Inherited from:
NirGenStat
def genLocalName(sym: Symbol): String
Inherited from:
NirGenName
def genMethodName(sym: Symbol): Member
Inherited from:
NirGenName
def genMethodSig(sym: Symbol, statically: Boolean): Function
Inherited from:
NirGenType
def genModuleName(sym: Symbol): Top
Inherited from:
NirGenName
def genName(sym: Symbol): Global
Inherited from:
NirGenName
Inherited from:
NirGenType
def genRefType(st: SimpleType, deconstructValueTypes: Boolean): Type
Inherited from:
NirGenType
def genStaticMemberName(sym: Symbol, explicitOwner: Symbol): Member
Inherited from:
NirGenName
def genTopLevelExports(td: TypeDef): Seq[Defn]
Inherited from:
GenNativeExports
def genType(st: SimpleType, deconstructValueTypes: Boolean): Type
Inherited from:
NirGenType
def genTypeName(sym: Symbol): Top
Inherited from:
NirGenName
Inherited from:
NirGenType
def isExported(s: Symbol): Boolean
Inherited from:
GenNativeExports
def validateExternCtor(rhs: Tree): Unit
Inherited from:
NirGenStat

Concrete fields

Inherited fields

Inherited from:
NirGenStat
Inherited from:
NirGenStat
protected val generatedMirrorClasses: Map[Symbol, MirrorClass]
Inherited from:
NirGenStat

Givens

Inherited givens

given fromSymbol: Conversion[Symbol, SimpleType]
Inherited from:
NirGenType
given fromType: Conversion[Type, SimpleType]
Inherited from:
NirGenType

Extensions

Inherited extensions

extension (fresh: Fresh)
def namedId(name: LocalName): Local
Inherited from:
NirGenUtil
extension (sym: Symbol)
Inherited from:
NirGenType

Tests if this type inherits from CFuncPtr

Tests if this type inherits from CFuncPtr

Inherited from:
NirGenType

Tests if this type is implementations of CFuncPtr

Tests if this type is implementations of CFuncPtr

Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
Inherited from:
NirGenType
extension (tpe: Type)