org.eclipse.xtext.util
Class PolymorphicDispatcher<RT>
java.lang.Object
   org.eclipse.xtext.util.PolymorphicDispatcher<RT>
org.eclipse.xtext.util.PolymorphicDispatcher<RT>
- public class PolymorphicDispatcher<RT> 
- extends java.lang.Object
- Author:
- Sven Efftinge - Initial contribution and API
 
| Constructor Summary | 
| PolymorphicDispatcher(java.util.List<? extends java.lang.Object> targets,
                      com.google.common.base.Predicate<java.lang.reflect.Method> methodFilter)
 | 
| PolymorphicDispatcher(java.util.List<? extends java.lang.Object> targets,
                      com.google.common.base.Predicate<java.lang.reflect.Method> methodFilter,
                      PolymorphicDispatcher.ErrorHandler<RT> handler)
 | 
| PolymorphicDispatcher(java.lang.String methodName,
                      int minParams,
                      int maxParams,
                      java.util.List<? extends java.lang.Object> targets)
 | 
| PolymorphicDispatcher(java.lang.String methodName,
                      int minParams,
                      int maxParams,
                      java.util.List<? extends java.lang.Object> targets,
                      PolymorphicDispatcher.ErrorHandler<RT> handler)
 | 
| PolymorphicDispatcher(java.lang.String methodName,
                      java.util.List<? extends java.lang.Object> targets)
 | 
 
 
| Methods inherited from class java.lang.Object | 
| clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | 
 
PolymorphicDispatcher
public PolymorphicDispatcher(java.lang.String methodName,
                             java.util.List<? extends java.lang.Object> targets)
PolymorphicDispatcher
public PolymorphicDispatcher(java.lang.String methodName,
                             int minParams,
                             int maxParams,
                             java.util.List<? extends java.lang.Object> targets)
PolymorphicDispatcher
public PolymorphicDispatcher(java.lang.String methodName,
                             int minParams,
                             int maxParams,
                             java.util.List<? extends java.lang.Object> targets,
                             PolymorphicDispatcher.ErrorHandler<RT> handler)
PolymorphicDispatcher
public PolymorphicDispatcher(java.util.List<? extends java.lang.Object> targets,
                             com.google.common.base.Predicate<java.lang.reflect.Method> methodFilter)
PolymorphicDispatcher
public PolymorphicDispatcher(java.util.List<? extends java.lang.Object> targets,
                             com.google.common.base.Predicate<java.lang.reflect.Method> methodFilter,
                             PolymorphicDispatcher.ErrorHandler<RT> handler)
createForSingleTarget
public static <T> PolymorphicDispatcher<T> createForSingleTarget(java.lang.String methodName,
                                                                 java.lang.Object singleTarget)
- 
 
createForSingleTarget
public static <T> PolymorphicDispatcher<T> createForSingleTarget(java.lang.String methodName,
                                                                 int min,
                                                                 int max,
                                                                 java.lang.Object singleTarget)
- 
 
createForSingleTarget
public static <T> PolymorphicDispatcher<T> createForSingleTarget(com.google.common.base.Predicate<java.lang.reflect.Method> methodFilter,
                                                                 java.lang.Object singleTarget)
- 
 
createForVarTarget
public static <T> PolymorphicDispatcher<T> createForVarTarget(java.lang.String methodName,
                                                              java.lang.Object... targets)
- 
 
compare
protected int compare(PolymorphicDispatcher.MethodDesc o1,
                      PolymorphicDispatcher.MethodDesc o2)
- 
 
invoke
public RT invoke(java.lang.Object... params)
- 
 
handleNoSuchMethod
protected RT handleNoSuchMethod(java.lang.Object... params)
- 
 
handleAmbigousMethods
protected RT handleAmbigousMethods(java.util.List<PolymorphicDispatcher.MethodDesc> result,
                                   java.lang.Object... params)
- 
 
getDefaultClass
protected java.lang.Class<?> getDefaultClass(int paramIndex)
- 
- Returns:
 
createMethodDesc
protected PolymorphicDispatcher.MethodDesc createMethodDesc(java.lang.Object target,
                                                            java.lang.reflect.Method method)
-