org.aspectj.lang.annotation

## Annotation Type DeclareMixin

    @Retention(value=RUNTIME)
     @Target(value=METHOD)
    public @interface DeclareMixin

DeclareMixin annotation - see design and usage in https://bugs.eclipse.org/bugs/show_bug.cgi?id=266552

Attached to a factory method, this annotation indicates that any types matching the pattern specified in the annotation value will have new methods mixed in. The methods will be selected based on a combination of the return type of the factory method, possibly sub-setted by any list of interfaces specified in the interfaces annotation value.

### Required Element Summary

Required Elements
`java.lang.String` `value` The target types expression

### Optional Element Summary

Optional Elements
`java.lang.Class[]` `interfaces` Array of interfaces that are to be mixed in.

### Element Detail

#### value

    public abstract java.lang.String value

The target types expression

#### interfaces

    public abstract java.lang.Class[] interfaces

Array of interfaces that are to be mixed in. This is optional and if not specified the return type of the annotated method will be used to determine the interface to mix in.

Default:
  java.lang.Object.class