dotty.tools.dottydoc

DocCompiler

Related Doc: package dottydoc

class DocCompiler extends Compiler

Custom Compiler with phases for the documentation tool

The idea here is to structure dottydoc around the new infrastructure. As such, dottydoc will itself be a compiler. It will, however, produce a format that can be used by other tools or web-browsers.

Example:

  1. Use the existing FrontEnd to typecheck the code being fed to dottydoc 2. Create an AST that is serializable 3. Serialize to JS object
Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. DocCompiler
  2. Compiler
  3. AnyRef
  4. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new DocCompiler()

Value Members

  1. final def !=(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  5. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  10. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  13. def newRun(implicit ctx: Context): Run

    Definition Classes
    Compiler
  14. def nextRunId: Int

    Definition Classes
    Compiler
  15. final def notify(): Unit

    Definition Classes
    AnyRef
  16. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  17. def phases: List[List[Phase]]

    Meta-ordering constraint:

    Meta-ordering constraint:

    DenotTransformers that change the signature of their denotation's info must go after erasure. The reason is that denotations are permanently referred to by TermRefs which contain a signature. If the signature of a symbol would change, all refs to it would become outdated - they could not be dereferenced in the new phase.

    After erasure, signature changing denot-transformers are OK because erasure will make sure that only term refs with fixed SymDenotations survive beyond it. This is possible because:

    • splitter has run, so every ident or select refers to a unique symbol
    • after erasure, asSeenFrom is the identity, so every reference has a plain SymDenotation, as opposed to a UniqueRefDenotation.
    Definition Classes
    DocCompilerCompiler
  18. def reset()(implicit ctx: Context): Unit

    Definition Classes
    Compiler
  19. def rootContext(implicit ctx: Context): Context

    Produces the following contexts, from outermost to innermost

    Produces the following contexts, from outermost to innermost

    bootStrap: A context with next available runId and a scope consisting of the RootPackage _root_ start A context with RootClass as owner and the necessary initializations for type checking. imports For each element of RootImports, an import context

    Definition Classes
    Compiler
  20. var runId: Int

    Definition Classes
    Compiler
  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  22. def toString(): String

    Definition Classes
    AnyRef → Any
  23. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  24. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from Compiler

Inherited from AnyRef

Inherited from Any

Ungrouped