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, wihtout discarding AnyVal interfaces 2. Create an AST that is serializable 3. Serialize to JS object

Constructors

DocCompiler ( )

Members

[+] override def phases : List [ List [ Phase ] ]

Meta-ordering constraint:

DenotTransformers that change the signature of their denotation's info must go after erasure. The reason is that denotations a...

    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.