diff options
Diffstat (limited to 'src/library')
-rw-r--r-- | src/library/scala/TypeConstraint.scala | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/src/library/scala/TypeConstraint.scala b/src/library/scala/TypeConstraint.scala new file mode 100644 index 0000000000..96347dc67f --- /dev/null +++ b/src/library/scala/TypeConstraint.scala @@ -0,0 +1,30 @@ +/* __ *\ +** ________ ___ / / ___ Scala API ** +** / __/ __// _ | / / / _ | (c) 2006-2007, LAMP/EPFL ** +** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** +** /____/\___/_/ |_/____/_/ | | ** +** |/ ** +\* */ + +// $Id$ + + +package scala + +/** <p> + * A marker for annotations that, when applied to a type, + * should be treated as a constraint on the annotated type. + * A proper constraint should restrict the type based only + * on information mentioned within the type. A Scala compiler + * can use this assumption to rewrite the contents of the + * constraint as necessary. To contrast, a type annotation + * whose meaning depends on the context where it is written + * down is not a proper constrained type, and this marker + * should not be applied. A Scala compiler will drop such + * annotations in cases where it would rewrite a type constraint. + * </p> + * + * @author Lex Spoon + * @version 1.1, 2007-11-5 + */ +trait TypeConstraint extends Annotation |