|
|
@@ -7,20 +7,21 @@
|
|
|
|
|
|
package net.ranides.assira.reflection.impl;
|
|
|
|
|
|
-import java.lang.invoke.MethodHandle;
|
|
|
-import java.lang.invoke.MethodHandles;
|
|
|
-import java.lang.reflect.Method;
|
|
|
-import java.util.Arrays;
|
|
|
-import java.util.List;
|
|
|
-import java.util.Set;
|
|
|
-import java.util.function.Supplier;
|
|
|
import net.ranides.assira.collection.lists.ListUtils;
|
|
|
+import net.ranides.assira.collection.query.CQueryBuilder;
|
|
|
import net.ranides.assira.generic.LazyReference;
|
|
|
import net.ranides.assira.reflection.*;
|
|
|
import net.ranides.assira.reflection.util.MethodUtils;
|
|
|
import net.ranides.assira.reflection.util.ReflectUtils;
|
|
|
import net.ranides.assira.trace.ExceptionUtils;
|
|
|
-import net.ranides.assira.collection.query.CQueryBuilder;
|
|
|
+
|
|
|
+import java.lang.invoke.MethodHandle;
|
|
|
+import java.lang.invoke.MethodHandles;
|
|
|
+import java.lang.reflect.Method;
|
|
|
+import java.util.Arrays;
|
|
|
+import java.util.List;
|
|
|
+import java.util.function.Supplier;
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
@@ -59,6 +60,12 @@ public class RMethod extends AMethod implements IMethod {
|
|
|
return FClass.newClass(c, method.getGenericReturnType(), method.getAnnotatedReturnType());
|
|
|
}
|
|
|
|
|
|
+ @Override
|
|
|
+ public List<IClass<?>> exceptions() {
|
|
|
+ IContext c = context();
|
|
|
+ return Arrays.stream(method.getExceptionTypes()).map(v -> FClass.newClass(c, v)).collect(Collectors.toList());
|
|
|
+ }
|
|
|
+
|
|
|
@Override
|
|
|
public IArguments arguments() {
|
|
|
IContext c = context();
|