diff options
Diffstat (limited to 'library/src/scala/annotation/internal')
10 files changed, 100 insertions, 0 deletions
diff --git a/library/src/scala/annotation/internal/Alias.scala b/library/src/scala/annotation/internal/Alias.scala new file mode 100644 index 000000000..e3f56e70c --- /dev/null +++ b/library/src/scala/annotation/internal/Alias.scala @@ -0,0 +1,10 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation to record a Scala2 pickled alias. + * @param aliased A TermRef pointing to the aliased field. + */ +class Alias(aliased: Any) extends Annotation { + +} diff --git a/library/src/scala/annotation/internal/AnnotationDefault.scala b/library/src/scala/annotation/internal/AnnotationDefault.scala new file mode 100644 index 000000000..5280d091c --- /dev/null +++ b/library/src/scala/annotation/internal/AnnotationDefault.scala @@ -0,0 +1,8 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation to tag Java annotation default values */ +class AnnotationDefault extends Annotation { + +} diff --git a/library/src/scala/annotation/internal/Body.scala b/library/src/scala/annotation/internal/Body.scala new file mode 100644 index 000000000..b6aa0c0fb --- /dev/null +++ b/library/src/scala/annotation/internal/Body.scala @@ -0,0 +1,8 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** The class associated with a `BodyAnnotation`, which indicates + * an inline method's right hand side + */ +final class Body() extends Annotation diff --git a/library/src/scala/annotation/internal/Child.scala b/library/src/scala/annotation/internal/Child.scala new file mode 100644 index 000000000..c90871945 --- /dev/null +++ b/library/src/scala/annotation/internal/Child.scala @@ -0,0 +1,16 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation to indicate a child class or object of the annotated class. + * E.g. if we have + * + * sealed class A + * case class B() extends A + * case class C() extends A + * + * Then the class symbol `A` would carry the annotations + * `@Child[Bref] @Child[Cref]` where `Bref`, `Cref` are TypeRefs + * referring to the class symbols of `B` and `C` + */ +class Child[T] extends Annotation diff --git a/library/src/scala/annotation/internal/InlineParam.scala b/library/src/scala/annotation/internal/InlineParam.scala new file mode 100644 index 000000000..0b3649e89 --- /dev/null +++ b/library/src/scala/annotation/internal/InlineParam.scala @@ -0,0 +1,6 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation produced by Namer to indicate an inline parameter */ +final class InlineParam() extends Annotation diff --git a/library/src/scala/annotation/internal/Repeated.scala b/library/src/scala/annotation/internal/Repeated.scala new file mode 100644 index 000000000..75eb3bc25 --- /dev/null +++ b/library/src/scala/annotation/internal/Repeated.scala @@ -0,0 +1,10 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation produced by desugaring to indicate that a + * sequence is a repeated parameter. I.e. + * + * T* is expanded by Desugar to Seq[T] @Repeated + */ +final class Repeated() extends Annotation diff --git a/library/src/scala/annotation/internal/SourceFile.scala b/library/src/scala/annotation/internal/SourceFile.scala new file mode 100644 index 000000000..b203869cf --- /dev/null +++ b/library/src/scala/annotation/internal/SourceFile.scala @@ -0,0 +1,10 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** An annotation to record a Scala2 pickled alias. + * @param aliased A TermRef pointing to the aliased field. + */ +class SourceFile(path: String) extends Annotation { + +} diff --git a/library/src/scala/annotation/internal/TASTYLongSignature.java b/library/src/scala/annotation/internal/TASTYLongSignature.java new file mode 100644 index 000000000..2278da258 --- /dev/null +++ b/library/src/scala/annotation/internal/TASTYLongSignature.java @@ -0,0 +1,12 @@ +package scala.annotation.internal; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +public @interface TASTYLongSignature { + public String[] bytes(); +} diff --git a/library/src/scala/annotation/internal/TASTYSignature.java b/library/src/scala/annotation/internal/TASTYSignature.java new file mode 100644 index 000000000..a6372f008 --- /dev/null +++ b/library/src/scala/annotation/internal/TASTYSignature.java @@ -0,0 +1,12 @@ +package scala.annotation.internal; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Retention(RetentionPolicy.RUNTIME) +@Target(ElementType.TYPE) +public @interface TASTYSignature { + public String bytes(); +} diff --git a/library/src/scala/annotation/internal/UnsafeNonvariant.scala b/library/src/scala/annotation/internal/UnsafeNonvariant.scala new file mode 100644 index 000000000..b33df65d6 --- /dev/null +++ b/library/src/scala/annotation/internal/UnsafeNonvariant.scala @@ -0,0 +1,8 @@ +package scala.annotation.internal + +import scala.annotation.Annotation + +/** This annotation is used as a marker for unsafe + * instantiations in asSeenFrom. See TypeOps.asSeenfrom for an explanation. + */ +class UnsafeNonvariant extends Annotation |