01: /*
02: * All content copyright (c) 2003-2006 Terracotta, Inc., except as may otherwise be noted in a separate copyright notice. All rights reserved.
03: */
04: package com.tc.aspectwerkz.reflect;
05:
06: /**
07: * Interface for the method info implementations.
08: *
09: * @author <a href="mailto:jboner@codehaus.org">Jonas BonŽr </a>
10: */
11: public interface MethodInfo extends MemberInfo {
12: /**
13: * Returns the return type.
14: *
15: * @return the return type
16: */
17: ClassInfo getReturnType();
18:
19: /**
20: * Returns the parameter types.
21: *
22: * @return the parameter types
23: */
24: ClassInfo[] getParameterTypes();
25:
26: /**
27: * Returns the parameter names as they appear in the source code.
28: * This information is available only when class are compiled with javac -g (debug info), but is required
29: * for Aspect that are using args() and target()/this() bindings.
30: * <p/>
31: * It returns null if not available.
32: *
33: * @return
34: */
35: String[] getParameterNames();
36:
37: /**
38: * Returns the exception types.
39: *
40: * @return the exception types
41: */
42: ClassInfo[] getExceptionTypes();
43:
44: }
|