Packages

class JavaUnitParser extends JavaParser

Source
JavaParsers.scala
Known Subclasses
Type Hierarchy
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. JavaUnitParser
  2. JavaParser
  3. ParserCommon
  4. AnyRef
  5. Any
Implicitly
  1. by any2stringadd
  2. by StringFormat
  3. by Ensuring
  4. by ArrowAssoc
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Instance Constructors

  1. new JavaUnitParser(unit: Global.CompilationUnit)

Value Members

  1. def accept(token: Int): Int

    Consume one token of the specified type, or signal an error if it is not there.

    Consume one token of the specified type, or signal an error if it is not there.

    Definition Classes
    JavaParserParserCommon
  2. def acceptClosingAngle(): Unit
    Definition Classes
    JavaParser
  3. def addCompanionObject(statics: List[Global.Tree], cdef: Global.ClassDef): List[Global.Tree]
    Definition Classes
    JavaParser
  4. def annotation(): Global.Tree

    Annotation ::= NormalAnnotation | MarkerAnnotation | SingleElementAnnotation

    Annotation ::= NormalAnnotation | MarkerAnnotation | SingleElementAnnotation

    NormalAnnotation ::= @ TypeName ( [ElementValuePairList] ) ElementValuePairList ::= ElementValuePair {, ElementValuePair} ElementValuePair ::= Identifier = ElementValue ElementValue ::= ConditionalExpressionSubset | ElementValueArrayInitializer | Annotation

    // We only support a subset of the Java syntax that can form constant expressions. // https://docs.oracle.com/javase/specs/jls/se14/html/jls-15.html#jls-15.29 // // Luckily, we can just parse matching ( and ) to find our way to the end of the the argument list. // and drop the arguments until we implement full support for Java constant expressions // ConditionalExpressionSubset := Literal | Identifier | QualifiedName | ClassLiteral

    ElementValueArrayInitializer ::= { [ElementValueList] [,] } ElementValueList ::= ElementValue {, ElementValue}

    Definition Classes
    JavaParser
  5. def annotationDecl(mods: Global.Modifiers): List[Global.Tree]
    Definition Classes
    JavaParser
  6. def annotationParents: collection.immutable.List[Global.Select]
    Definition Classes
    JavaParser
  7. def annotations(): List[Global.Tree]
    Definition Classes
    JavaParser
  8. def arrayOf(tpt: Global.Tree): Global.AppliedTypeTree
    Definition Classes
    JavaParser
  9. def basicType(): Global.Tree
    Definition Classes
    JavaParser
  10. def blankExpr: EmptyTree
    Definition Classes
    JavaParser
  11. def bound(): Global.Tree
    Definition Classes
    JavaParser
  12. def classDecl(mods: Global.Modifiers): List[Global.Tree]
    Definition Classes
    JavaParser
  13. final def commaSeparated[T](part: => T): List[T]

    , with the separator fixed to commas.

    tokenSeparated

    , with the separator fixed to commas. tokenSeparated }}}

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  14. def compilationUnit(): Global.Tree

    CompilationUnit ::= [package QualId semi] TopStatSeq

    CompilationUnit ::= [package QualId semi] TopStatSeq

    Definition Classes
    JavaParser
  15. def convertToTypeId(tree: Global.Tree): Global.Tree

    Convert (qual)ident to type identifier

    Convert (qual)ident to type identifier

    Definition Classes
    JavaParser
  16. def definesInterface(token: Int): Boolean
    Definition Classes
    JavaParser
  17. def deprecationWarning(off: Int, msg: String, since: String): Unit
    Definition Classes
    JavaUnitParserParserCommon
  18. final def dropAnyBraces[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  19. def enumConst(enumType: Global.Tree): (Global.ValDef, Boolean)
    Definition Classes
    JavaParser
  20. def enumDecl(mods: Global.Modifiers): List[Global.Tree]
    Definition Classes
    JavaParser
  21. def errorTypeTree: Global.TypeTree
    Definition Classes
    JavaParser
  22. def fieldDecls(pos: Global.Position, mods: Global.Modifiers, tpt: Global.Tree, name: Global.Name): List[Global.Tree]

    Parse a sequence of field declarations, separated by commas.

    Parse a sequence of field declarations, separated by commas. This one is tricky because a comma might also appear in an initializer. Since we don't parse initializers we don't know what the comma signifies. We solve this with a second list buffer maybe which contains potential variable definitions. Once we have reached the end of the statement, we know whether these potential definitions are real or not.

    Definition Classes
    JavaParser
  23. def formalParam(): Global.ValDef
    Definition Classes
    JavaParser
  24. def formalParams(): List[Global.ValDef]
    Definition Classes
    JavaParser
  25. def freshName(prefix: String): Global.Name
    Definition Classes
    JavaUnitParserJavaParser
  26. def freshTermName(prefix: String): Global.TermName
  27. def freshTypeName(prefix: String): Global.TypeName
  28. implicit def i2p(offset: Int): Global.Position
    Definition Classes
    JavaUnitParserJavaParser
  29. def ident(): Global.Name
    Definition Classes
    JavaParser
  30. def identForType(): Global.TypeName
    Definition Classes
    JavaParser
  31. def importCompanionObject(cdef: Global.ClassDef): Global.Tree
    Definition Classes
    JavaParser
  32. def importDecl(): List[Global.Tree]
    Definition Classes
    JavaParser
  33. val in: JavaParsers.JavaUnitScanner
    Definition Classes
    JavaUnitParserJavaParserParserCommon
  34. final def inBraces[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  35. final def inBracesOrError[T](body: => T, alt: T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  36. final def inBracesOrNil[T](body: => List[T]): List[T]
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  37. final def inBracesOrUnit[T](body: => Global.Tree): Global.Tree
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  38. final def inBrackets[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  39. final def inGroupers[T](left: JavaParsers.Token)(body: => T): T

    Methods inParensOrError and similar take a second argument which, should the next token not be the expected opener (e.g.

    Methods inParensOrError and similar take a second argument which, should the next token not be the expected opener (e.g. LPAREN) will be returned instead of the contents of the groupers. However in all cases accept(LPAREN) will be called, so a parse error will still result. If the grouping is optional, in.token should be tested before calling these methods.

    Skip trailing comma is pushed down to scanner because this abstract parser doesn't have token info.

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  40. final def inParens[T](body: => T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  41. final def inParensOrError[T](body: => T, alt: T): T
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  42. final def inParensOrNil[T](body: => List[T]): List[T]
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  43. final def inParensOrUnit[T](body: => Global.Tree): Global.Tree
    Definition Classes
    ParserCommon
    Annotations
    @inline()
  44. def interfaceDecl(mods: Global.Modifiers): List[Global.Tree]
    Definition Classes
    JavaParser
  45. def interfacesOpt(): List[Global.Tree]
    Definition Classes
    JavaParser
  46. def javaDot(name: Global.Name): Global.Tree
    Definition Classes
    JavaParser
  47. def javaLangDot(name: Global.Name): Global.Tree
    Definition Classes
    JavaParser
  48. def javaLangObject(): Global.Tree
    Definition Classes
    JavaParser
  49. def joinComment(trees: => List[Global.Tree]): List[Global.Tree]

    A hook for joining the comment associated with a definition.

    A hook for joining the comment associated with a definition. Overridden by scaladoc.

    Definition Classes
    JavaParser
  50. def makeCompanionObject(cdef: Global.ClassDef, statics: List[Global.Tree]): Global.Tree
    Definition Classes
    JavaParser
  51. def makeConstructor(formals: List[Global.Tree]): Global.DefDef
    Definition Classes
    JavaParser
  52. def makePackaging(pkg: Global.RefTree, stats: List[Global.Tree]): Global.PackageDef
    Definition Classes
    JavaParser
  53. def makeParam(name: Global.TermName, tpt: Global.Tree): Global.ValDef
    Definition Classes
    JavaParser
  54. def makeParam(name: String, tpt: Global.Tree): Global.ValDef
    Definition Classes
    JavaParser
  55. final def makeParens(body: => List[Global.Tree]): Global.Parens

    Creates an actual Parens node (only used during parsing.)

    Creates an actual Parens node (only used during parsing.)

    Definition Classes
    ParserCommon
    Annotations
    @inline()
  56. def makeSyntheticParam(count: Int, tpt: Global.Tree): Global.ValDef
    Definition Classes
    JavaParser
  57. def makeTemplate(parents: List[Global.Tree], stats: List[Global.Tree]): Global.Template
    Definition Classes
    JavaParser
  58. def memberDecl(mods: Global.Modifiers, parentToken: Int): List[Global.Tree]
    Definition Classes
    JavaParser
  59. def methodBody(): Global.Tree
    Definition Classes
    JavaParser
  60. def modifiers(inInterface: Boolean): Global.Modifiers
    Definition Classes
    JavaParser
  61. final def optArrayBrackets(tpt: Global.Tree): Global.Tree
    Definition Classes
    JavaParser
    Annotations
    @tailrec()
  62. def optThrows(): Unit
    Definition Classes
    JavaParser
  63. def parse(): Global.Tree

    this is the general parse method

    this is the general parse method

    Definition Classes
    JavaParser
  64. def qualId(orClassLiteral: Boolean = false): Global.Tree
    Definition Classes
    JavaParser
  65. def repsep[T <: Global.Tree](p: () => T, sep: Int): List[T]
    Definition Classes
    JavaParser
  66. def separatedToken[T](separator: JavaParsers.Token, part: => T): List[T]

    .

    { `sep` part }

    . { sep part } }}}

    Definition Classes
    ParserCommon
  67. def skipAhead(): Unit

    skip parent or brace enclosed sequence of things

    skip parent or brace enclosed sequence of things

    Definition Classes
    JavaParser
  68. def skipTo(tokens: Int*): Unit
    Definition Classes
    JavaParser
  69. def syntaxError(pos: Int, msg: String): Unit
    Definition Classes
    JavaUnitParserJavaParser
  70. def syntaxError(pos: Int, msg: String, skipIt: Boolean): Unit
    Definition Classes
    JavaParser
  71. def syntaxError(msg: String, skipIt: Boolean): Unit
    Definition Classes
    JavaParser
  72. def termDecl(mods: Global.Modifiers, parentToken: Int): List[Global.Tree]
    Definition Classes
    JavaParser
  73. def tokenSeparated[T](separator: JavaParsers.Token, part: => T): List[T]

    .

    { `sep` part }

    . { sep part } }}}

    Definition Classes
    ParserCommon
  74. def tryLiteral(negate: Boolean = false): Option[Global.Constant]
    Definition Classes
    JavaParser
  75. def typ(): Global.Tree
    Definition Classes
    JavaParser
  76. def typeArgs(t: Global.Tree): Global.Tree
    Definition Classes
    JavaParser
  77. def typeBody(leadingToken: Int, parentName: Global.Name): (List[Global.Tree], List[Global.Tree])
    Definition Classes
    JavaParser
  78. def typeBodyDecls(parentToken: Int, parentName: Global.Name): (List[Global.Tree], List[Global.Tree])
    Definition Classes
    JavaParser
  79. def typeDecl(mods: Global.Modifiers): List[Global.Tree]
    Definition Classes
    JavaParser
  80. def typeParam(): Global.TypeDef
    Definition Classes
    JavaParser
  81. def typeParams(): List[Global.TypeDef]
    Definition Classes
    JavaParser
  82. val unit: Global.CompilationUnit
  83. def varDecl(pos: Global.Position, mods: Global.Modifiers, tpt: Global.Tree, name: Global.TermName): Global.ValDef
    Definition Classes
    JavaParser
  84. def warning(pos: Int, msg: String): Unit
    Definition Classes
    JavaUnitParserJavaParser