dotty.tools.dottydoc.model.parsers

WikiParser

Related Doc: package parsers

class WikiParser extends CommentCleaner with CommentParser with CommentExpander

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. WikiParser
  2. CommentExpander
  3. CommentParser
  4. MemberLookup
  5. CommentCleaner
  6. AnyRef
  7. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Instance Constructors

  1. new WikiParser()

Type Members

  1. sealed class CharReader extends AnyRef

    Attributes
    protected
    Definition Classes
    CommentParser
  2. class ExpansionLimitExceeded extends Exception

    Definition Classes
    CommentExpander
  3. case class FullComment(body: Body, authors: List[Body], see: List[Body], result: Option[Body], throws: Map[String, Body], valueParams: Map[String, Body], typeParams: Map[String, Body], version: Option[Body], since: Option[Body], todo: List[Body], deprecated: Option[Body], note: List[Body], example: List[Body], constructor: Option[Body], group: Option[Body], groupDesc: Map[String, Body], groupNames: Map[String, Body], groupPrio: Map[String, Body], hideImplicitConversions: List[Body], shortDescription: List[Body]) extends Product with Serializable

    Definition Classes
    CommentParser
  4. final class WikiParser extends CharReader

    Original wikiparser from NSC

    Original wikiparser from NSC

    Attributes
    protected
    Definition Classes
    CommentParser

Value Members

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

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

    Definition Classes
    AnyRef → Any
  3. def +=(entity: Entity, symbol: Symbol, parent: Symbol, ctx: Context): Unit

  4. final def ==(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  5. def add(entity: Entity, symbol: Symbol, parent: Symbol, ctx: Context): Unit

  6. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  7. def clean(comment: String): List[String]

    Definition Classes
    CommentCleaner
  8. def clear(): Unit

  9. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def cookedDocComment(sym: Symbol, docStr: String = "")(implicit ctx: Context): String

    The raw doc comment of symbol sym, minus usecase and define sections, augmented by missing sections of an inherited doc comment.

    The raw doc comment of symbol sym, minus usecase and define sections, augmented by missing sections of an inherited doc comment. If a symbol does not have a doc comment but some overridden version of it does, the doc comment of the overridden version is copied instead.

    Definition Classes
    CommentExpander
  11. def defineVariables(sym: Symbol)(implicit ctx: Context): Unit

    Definition Classes
    CommentExpander
  12. def defines(raw: String): List[String]

    Definition Classes
    CommentExpander
  13. def docCommentPos(sym: Symbol)(implicit ctx: Context): Position

    The position of the raw doc comment of symbol sym, or NoPosition if missing If a symbol does not have a doc comment but some overridden version of it does, the position of the doc comment of the overridden version is returned instead.

    The position of the raw doc comment of symbol sym, or NoPosition if missing If a symbol does not have a doc comment but some overridden version of it does, the position of the doc comment of the overridden version is returned instead.

    Definition Classes
    CommentExpander
  14. final def eq(arg0: AnyRef): Boolean

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

    Definition Classes
    AnyRef → Any
  16. def expand(sym: Symbol, site: Symbol)(implicit ctx: Context): String

    Definition Classes
    CommentExpander
  17. def expandInheritdoc(parent: String, child: String, sym: Symbol): String

    Expand inheritdoc tags

    Expand inheritdoc tags

    • for the main comment we transform the inheritdoc into the super variable, and the variable expansion can expand it further
    • for the param, tparam and throws sections we must replace comments on the spot

    This is done separately, for two reasons: 1. It takes longer to run compared to merge 2. The inheritdoc annotation should not be used very often, as building the comment from pieces severely impacts performance

    parent

    The source (or parent) comment

    child

    The child (overriding member or usecase) comment

    sym

    The child symbol

    returns

    The child comment with the inheritdoc sections expanded

    Definition Classes
    CommentExpander
  18. def expandVariables(initialStr: String, sym: Symbol, site: Symbol)(implicit ctx: Context): String

    Attributes
    protected
    Definition Classes
    CommentExpander
  19. def expandedDocComment(sym: Symbol, site: Symbol, docStr: String = "")(implicit ctx: Context): String

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    The cooked doc comment of symbol sym after variable expansion, or "" if missing.

    sym

    The symbol for which doc comment is returned

    site

    The class for which doc comments are generated

    Definition Classes
    CommentExpander
    Exceptions thrown

    ExpansionLimitExceeded when more than 10 successive expansions of the same string are done, which is interpreted as a recursive variable definition.

  20. def finalize(): Unit

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

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

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

    Definition Classes
    Any
  24. def lookup(entity: Entity, packages: Map[String, Package], query: String, pos: Position): LinkTo

    Performs a lookup based on the provided (pruned) query string

    Performs a lookup based on the provided (pruned) query string

    Will return a Tooltip if unsucessfull, otherwise a LinkToEntity or LinkToExternal

    Definition Classes
    MemberLookup
  25. def lookupVariable(vble: String, site: Symbol)(implicit ctx: Context): Option[String]

    Lookup definition of variable.

    Lookup definition of variable.

    vble

    The variable for which a definition is searched

    site

    The class for which doc comments are generated

    Definition Classes
    CommentExpander
  26. def makeEntityLink(entity: Entity, packages: Map[String, Package], title: Inline, pos: Position, query: String): EntityLink

    Definition Classes
    MemberLookup
  27. def merge(src: String, dst: String, sym: Symbol, copyFirstPara: Boolean = false): String

    Definition Classes
    CommentExpander
  28. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  29. final def notify(): Unit

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

    Definition Classes
    AnyRef
  31. def parse(packs: Map[String, Package]): Unit

  32. def parse(entity: Entity, packages: Map[String, Package], comment: List[String], src: String, pos: Position, site: Symbol = NoSymbol)(implicit ctx: Context): FullComment

    Parses a raw comment string into a Comment object.

    Parses a raw comment string into a Comment object.

    packages

    all packages parsed by Scaladoc tool, used for lookup

    src

    the raw comment source string.

    pos

    the position of the comment in source.

    Definition Classes
    CommentParser
  33. def parseHtml(sym: Symbol, parent: Symbol, entity: Entity, packages: Map[String, Package])(implicit ctx: Context): (String, Option[Comment])

    Parses comment and returns the path to the entity with an optional comment

    Parses comment and returns the path to the entity with an optional comment

    The idea here is to use this fact to create Future[Seq[(String, Option[Comment]]] which can then be awaited near the end of the run - before the pickling.

  34. def parseWikiAtSymbol(entity: Entity, packages: Map[String, Package], string: String, pos: Position, site: Symbol)(implicit ctx: Context): Body

    Parses a string containing wiki syntax into a Comment object.

    Parses a string containing wiki syntax into a Comment object. Note that the string is assumed to be clean:

    • Removed Scaladoc start and end markers.
    • Removed start-of-line star and one whitespace afterwards (if present).
    • Removed all end-of-line whitespace.
    • Only endOfLine is used to mark line endings.
    Definition Classes
    CommentParser
  35. def size: Int

  36. def superComment(sym: Symbol)(implicit ctx: Context): Option[String]

    The cooked doc comment of an overridden symbol

    The cooked doc comment of an overridden symbol

    Attributes
    protected
    Definition Classes
    CommentExpander
  37. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  38. def toString(): String

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

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

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

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from CommentExpander

Inherited from CommentParser

Inherited from MemberLookup

Inherited from CommentCleaner

Inherited from AnyRef

Inherited from Any

Ungrouped