scala

# annotation

#### package annotation

Visibility

1. Public
2. All

### Type Members

1. #### abstract class Annotation extends AnyRef

   A base class for annotations.

2. #### trait ClassfileAnnotation extends Annotation with StaticAnnotation

   A base class for classfile annotations.

3. #### trait StaticAnnotation extends Annotation

   A base class for static annotations.

4. #### trait TypeConstraint extends Annotation

   A marker for annotations that, when applied to a type, should be treated as a constraint on the annotated type.

5. #### final class elidable extends Annotation with StaticAnnotation

   An annotation for methods whose bodies may be excluded from compiler-generated bytecode.

6. #### final class implicitNotFound extends Annotation with StaticAnnotation

   An annotation that specifies the error message that is emitted when the compiler cannot find an implicit value of the annotated type.

7. #### class strictfp extends Annotation with StaticAnnotation

   If this annotation is present on a method or its enclosing class, the strictfp flag will be emitted.

8. #### final class switch extends Annotation with StaticAnnotation

   An annotation to be applied to a match expression.

9. #### final class tailrec extends Annotation with StaticAnnotation

   A method annotation which verifies that the method will be compiled with tail call optimization.

10. #### class unspecialized extends Annotation with StaticAnnotation

    A method annotation which suppresses the creation of additional specialized forms based on enclosing specialized type parameters.

11. #### final class varargs extends Annotation with StaticAnnotation

    A method annotation which instructs the compiler to generate a Java varargs-style forwarder method for interop.

12. #### class cloneable extends Annotation with StaticAnnotation

    An annotation that designates the class to which it is applied as cloneable

13. #### class serializable extends Annotation with StaticAnnotation

    An annotation that designates the class to which it is applied as serializable

### Value Members

1. #### object elidable

   This useless appearing code was necessary to allow people to use named constants for the elidable annotation.

2. #### package meta

   When defining a field, the Scala compiler creates up to four accessors for it: a getter, a setter, and if the field is annotated with `@BeanProperty`, a bean getter and a bean setter.

3. #### package unchecked

### Ungrouped