123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- /* *******************************************************************
- * Copyright (c) 2002-2010
- * All rights reserved.
- * This program and the accompanying materials are made available
- * under the terms of the Eclipse Public License v 2.0
- * which accompanies this distribution and is available at
- * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
- * ******************************************************************/
- package org.aspectj.weaver;
-
- import java.util.Collection;
-
- /**
- * Abstract representation of a member (field/constructor/method) within a type.
- *
- * @author PARC
- * @author Adrian Colyer
- * @author Andy Clement
- */
- public interface Member extends Comparable<Member> {
-
- Member[] NONE = new Member[0];
-
- MemberKind METHOD = new MemberKind("METHOD", 1);
- MemberKind FIELD = new MemberKind("FIELD", 2);
- MemberKind CONSTRUCTOR = new MemberKind("CONSTRUCTOR", 3);
- MemberKind STATIC_INITIALIZATION = new MemberKind("STATIC_INITIALIZATION", 4);
- MemberKind POINTCUT = new MemberKind("POINTCUT", 5);
- MemberKind ADVICE = new MemberKind("ADVICE", 6);
- MemberKind HANDLER = new MemberKind("HANDLER", 7);
- MemberKind MONITORENTER = new MemberKind("MONITORENTER", 8);
- MemberKind MONITOREXIT = new MemberKind("MONITOREXIT", 9);
-
- AnnotationAJ[][] NO_PARAMETER_ANNOTATIONXS = new AnnotationAJ[][] {};
- ResolvedType[][] NO_PARAMETER_ANNOTATION_TYPES = new ResolvedType[][] {};
-
- /**
- * @return the kind of member from those listed as MemberKind instances
- */
- MemberKind getKind();
-
- String getName();
-
- UnresolvedType getDeclaringType();
-
- UnresolvedType[] getParameterTypes();
-
- UnresolvedType[] getGenericParameterTypes();
-
- UnresolvedType getType();
-
- UnresolvedType getReturnType();
-
- UnresolvedType getGenericReturnType();
-
- /**
- * Return full signature, including return type, e.g. "()LFastCar;". For a signature without the return type, use
- * getParameterSignature() - it is important to choose the right one in the face of covariance.
- */
- String getSignature();
-
- JoinPointSignatureIterator getJoinPointSignatures(World world);
-
- int getArity();
-
- /**
- * Return signature without return type, e.g. "()" for a signature *with* the return type, use getSignature() - it is important
- * to choose the right one in the face of covariance.
- */
- String getParameterSignature();
-
- int getModifiers(World world);
-
- int getModifiers();
-
- /**
- * Returns true iff the member is generic (NOT parameterized)
- */
- boolean canBeParameterized();
-
- AnnotationAJ[] getAnnotations();
-
- Collection<ResolvedType> getDeclaringTypes(World world);
-
- String[] getParameterNames(World world);
-
- UnresolvedType[] getExceptions(World world);
-
- ResolvedMember resolve(World world);
-
- int compareTo(Member other);
-
- }
|