Copyright (c) 2005 Contributors.
All rights reserved.
This program and the accompanying materials are made available
under the terms of the Eclipse Public License v1.0
which accompanies this distribution and is available at
http://eclipse.org/legal/epl-v10.html
Contributors:
initial implementation Adrian Colyer
/*******************************************************************************
* Copyright (c) 2005 Contributors.
* All rights reserved.
* This program and the accompanying materials are made available
* under the terms of the Eclipse Public License v1.0
* which accompanies this distribution and is available at
* http://eclipse.org/legal/epl-v10.html
*
* Contributors:
* initial implementation Adrian Colyer
*******************************************************************************/
package org.aspectj.lang.annotation;
import java.lang.annotation.Target;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
Declare parents mixin annotation
/**
* Declare parents mixin annotation
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface DeclareParents {
Returns: the target types expression
/**
* @return the target types expression
*/
String value();
Optional class defining default implementation
of interface members (equivalent to defining
a set of interface member ITDs for the
public methods of the interface).
Returns: define the default implementation of interface members (should always be specified)
/**
* Optional class defining default implementation
* of interface members (equivalent to defining
* a set of interface member ITDs for the
* public methods of the interface).
*
* @return define the default implementation of interface members (should always be specified)
*/
Class defaultImpl() default DeclareParents.class;
// note - a default of "null" is not allowed,
// hence the strange default given above.
}