Defn

scala.scalanative.nir.Defn
See theDefn companion class
object Defn

Attributes

Companion
class
Graph
Supertypes
class Object
trait Matchable
class Any
Self type
Defn.type

Members list

Type members

Classlikes

final case class Class(attrs: Attrs, name: Top, parent: Option[Top], traits: Seq[Top])(implicit pos: SourcePosition) extends Defn

The NIR representation of a Scala class.

The NIR representation of a Scala class.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
final case class Const(attrs: Attrs, name: Member, ty: Type, rhs: Val)(implicit pos: SourcePosition) extends Defn

A unique, read-only instance of some type.

A unique, read-only instance of some type.

A constant definition is distinct from a constant literal, which would be represented by a Val.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
final case class Declare(attrs: Attrs, name: Member, ty: Function)(implicit pos: SourcePosition) extends Defn

A method declaration.

A method declaration.

Methods of abstract classes and traits can be declared without a definition and are resolved at runtime through dynamic dispatch.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
final case class Define(attrs: Attrs, name: Member, ty: Function, insts: Seq[Inst], debugInfo: DebugInfo)(implicit pos: SourcePosition) extends Defn

A method definition.

A method definition.

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
object Define

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type
Define.type
final case class Module(attrs: Attrs, name: Top, parent: Option[Top], traits: Seq[Top])(implicit pos: SourcePosition) extends Defn

The NIR representation of a Scala module.

The NIR representation of a Scala module.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
final case class Trait(attrs: Attrs, name: Top, traits: Seq[Top])(implicit pos: SourcePosition) extends Defn

The NIR representation of a Scala trait.

The NIR representation of a Scala trait.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all
final case class Var(attrs: Attrs, name: Member, ty: Type, rhs: Val)(implicit pos: SourcePosition) extends Defn

A variable definition corresponding to either a field in class or module, or to a top-level global variable.

A variable definition corresponding to either a field in class or module, or to a top-level global variable.

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Defn
trait Positioned
class Object
trait Matchable
class Any
Show all