Scala 2
API Specification
This document is the API specification for Scala 2.

Class Summary
`case` | `class` AppliedType `tpe[args1, ..., argsn]`
`case` | `class` Apply
`case` | `class` Assign
| `class` BeanProperty This attribute adds a setter and a getter method, following the Java Bean convention (first letter of the property is capitalized) used by popular Java web frameworks. For example
      [BeanProperty]
      var status = ""
adds the following methods to the generated code
      def setStatus(s:String): Unit = { this.status = s }
      def getStatus: String         = { this.status }
However, you cannot call `setStatus` from Scala, you should use the normal Scala access and assignment.
`case` | `class` Block
`case` | `class` Class
`case` | `class` ClassDef
| `class` Code [Type]
`case` | `class` DefDef
`case` | `class` Field
`case` | `class` Function
`abstract` | `class` GlobalSymbol
`case` | `class` Goto
`case` | `class` Ident
`case` | `class` If
| `class` ImplicitMethodType
`case` | `class` LabelSymbol
`case` | `class` Literal
`case` | `class` LocalMethod
`abstract` | `class` LocalSymbol
`case` | `class` LocalValue
`case` | `class` Method
`case` | `class` MethodType `(formals1 ... formalsn) restpe`
`case` | `class` NamedType fullname
`case` | `class` New
`case` | `class` PolyType
`case` | `class` PrefixedType pre # sym
`case` | `class` Select
`case` | `class` SingleType pre.type # sym == pre.sym
`case` | `class` Super
`abstract` | `class` Symbol
`case` | `class` Target
`case` | `class` Template
`case` | `class` This
`case` | `class` ThisType clazz.this
`abstract` | `class` Tree
`abstract` | `class` Type
`case` | `class` TypeApply
`case` | `class` TypeBounds [a <: lo >: hi]
`case` | `class` TypeField
| `class` TypedCode [T]
`case` | `class` ValDef

Object Summary
| `object` Code
`case` | `object` NoPrefix
`case` | `object` NoSymbol
`case` | `object` NoType
| `object` Print
`case` | `object` RootSymbol