Package

scala.scalanative

linker

Permalink

package linker

Visibility
  1. Public
  2. All

Type Members

  1. final class Class extends ScopeInfo

    Permalink
  2. sealed abstract class ClassLoader extends AnyRef

    Permalink
  3. sealed trait ClassPath extends AnyRef

    Permalink
  4. trait Extractor[T] extends AnyRef

    Permalink
  5. final class Field extends MemberInfo

    Permalink
  6. sealed abstract class Info extends AnyRef

    Permalink
  7. final class LinkingException extends Exception

    Permalink

    Exception that is thrown when a Scala Native linking fails.

  8. trait LinktimeValueResolver extends AnyRef

    Permalink
  9. sealed abstract class MemberInfo extends Info

    Permalink
  10. final class Method extends MemberInfo

    Permalink
  11. class Reach extends LinktimeValueResolver

    Permalink
  12. final class Result extends AnyRef

    Permalink
  13. sealed abstract class ScopeInfo extends Info

    Permalink
  14. final class Trait extends ScopeInfo

    Permalink
  15. final class Unavailable extends Info

    Permalink

Value Members

  1. object ArrayRef

    Permalink
  2. object BoxRef

    Permalink
  3. object Class

    Permalink
  4. object ClassLoader

    Permalink
  5. object ClassPath

    Permalink
  6. object ClassRef extends Extractor[Class]

    Permalink
  7. object ExactClassRef

    Permalink
  8. object FieldRef extends Extractor[(Info, Field)]

    Permalink
  9. object Link

    Permalink
  10. object MethodRef extends Extractor[(Info, Method)]

    Permalink
  11. object Reach

    Permalink
  12. object Ref extends Extractor[Info]

    Permalink
  13. object ScopeRef extends Extractor[ScopeInfo]

    Permalink
  14. object Sub

    Permalink

    Our subtyping can be described by a following diagram:

    Our subtyping can be described by a following diagram:

    value kind        ref kind         special kind
    |     \           |    \
    |     |           |      \
    prim  aggr        class  trait
    |     |           |      /
    |     |           |    /
    |     |           null
    |     |           /
    |     |       /
    |     |   /
    nothing

    Primitive and aggregate types don't participate in subtyping and they have to be explicitly boxed to become compatible with a reference type.

    Reference types form a simple lattice with java.lang.Object at the top and null type at the bottom. Subtyping between traits and classes is based on linearization of the all transitive parents, similarly to scalac.

    Nothing is the common bottom type between reference and value types. It represents computations that may never complete normally (either loops forever or throws an exception).

  15. object TraitRef extends Extractor[Trait]

    Permalink
  16. object UnitRef

    Permalink

Ungrouped