diff options
author | Rich Hickey <richhickey@gmail.com> | 2008-09-15 22:29:00 +0000 |
---|---|---|
committer | Rich Hickey <richhickey@gmail.com> | 2008-09-15 22:29:00 +0000 |
commit | f73bf9542f09528ab913da76b6bff661f3583e04 (patch) | |
tree | b3e346da74af0a07a1c69ac8b018381b3c119a73 /src | |
parent | c72a12488f0a65bc13f9b31fee73dc43ea33a70d (diff) |
switched to isSynthetic in getMethods
Diffstat (limited to 'src')
-rw-r--r-- | src/jvm/clojure/lang/Reflector.java | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/src/jvm/clojure/lang/Reflector.java b/src/jvm/clojure/lang/Reflector.java index 13c9125d..100fc226 100644 --- a/src/jvm/clojure/lang/Reflector.java +++ b/src/jvm/clojure/lang/Reflector.java @@ -291,21 +291,13 @@ static public List getMethods(Class c, int arity, String name, boolean getStatic ArrayList methods = new ArrayList(); for(int i = 0; i < allmethods.length; i++) { - try + final Method method = allmethods[i]; + if(name.equals(method.getName()) + && Modifier.isStatic(method.getModifiers()) == getStatics + && method.getParameterTypes().length == arity + && !method.isSynthetic()) { - if(name.equals(allmethods[i].getName()) - && Modifier.isStatic(allmethods[i].getModifiers()) == getStatics - && allmethods[i].getParameterTypes().length == arity - && (!Modifier.isVolatile(allmethods[i].getModifiers()) - || c.getMethod(allmethods[i].getName(), allmethods[i].getParameterTypes()) - .equals(allmethods[i]))) - { - methods.add(allmethods[i]); - } - } - catch(NoSuchMethodException e) - { - throw new RuntimeException(e); + methods.add(method); } } if(!getStatics && c.isInterface()) |