blob: e3453b1cdf23a7a8e4e8d3886108417095961271 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
package scala.reflect
package base
import scala.collection.immutable.ListMap
trait Annotations { self: Universe =>
type Annotation >: Null <: AnyRef
implicit val AnnotationTag: ClassTag[Annotation]
val Annotation: AnnotationExtractor
abstract class AnnotationExtractor {
def apply(tpe: Type, scalaArgs: List[Tree], javaArgs: ListMap[Name, JavaArgument]): Annotation
def unapply(ann: Annotation): Option[(Type, List[Tree], ListMap[Name, JavaArgument])]
}
type JavaArgument >: Null <: AnyRef
implicit val JavaArgumentTag: ClassTag[JavaArgument]
type LiteralArgument >: Null <: AnyRef with JavaArgument
implicit val LiteralArgumentTag: ClassTag[LiteralArgument]
val LiteralArgument: LiteralArgumentExtractor
abstract class LiteralArgumentExtractor {
def apply(value: Constant): LiteralArgument
def unapply(arg: LiteralArgument): Option[Constant]
}
type ArrayArgument >: Null <: AnyRef with JavaArgument
implicit val ArrayArgumentTag: ClassTag[ArrayArgument]
val ArrayArgument: ArrayArgumentExtractor
abstract class ArrayArgumentExtractor {
def apply(args: Array[JavaArgument]): ArrayArgument
def unapply(arg: ArrayArgument): Option[Array[JavaArgument]]
}
type NestedArgument >: Null <: AnyRef with JavaArgument
implicit val NestedArgumentTag: ClassTag[NestedArgument]
val NestedArgument: NestedArgumentExtractor
abstract class NestedArgumentExtractor {
def apply(annotation: Annotation): NestedArgument
def unapply(arg: NestedArgument): Option[Annotation]
}
}
|