/**
* Extensions of the Java AST introduced by Dryad to make the meaning of
* constructs more clear.
*
* @author Martin Bravenboer <martin@cs.uu.nl>
*/
module dryad/source/Extensions
signature
constructors
TypeVar : TypeVarQualifier * Id -> TypeVar
: TypeName -> TypeVarQualifier
: MethodName -> TypeVarQualifier
: ConstructorName -> TypeVarQualifier
Field : Id -> Expr
Fresh : FreshTypeVarSource -> TypeVarQualifer
CapturedWildcard : ActualTypeArg -> FreshTypeVarSource
/**
* @todo What if the class or interface type has type arguments?
*/
TypeVar : TypeVarQualifier * Id * TypeArgs -> TypeVar
IntersectionType : List(Type) -> Type
DefaultAccess : Modifier
constructors
ConstructorName : TypeName -> ConstructorName