20 package org.matsim.core.utils.misc;
22 import java.util.HashSet;
24 import java.util.Stack;
40 public static Set<Class<?>>
getAllTypes(
final Class<?> klass) {
41 Set<Class<?>>
set =
new HashSet<Class<?>>();
42 Stack<Class<?>> stack =
new Stack<Class<?>>();
45 while (!stack.isEmpty()) {
46 Class<?> c = stack.pop();
48 for (Class<?> k : c.getInterfaces()) {
51 if (c.getSuperclass() != null) {
52 stack.push(c.getSuperclass());
60 Set<Class<?>> intfs =
new HashSet<Class<?>>();
61 for (Class<?> intf : klass.getInterfaces()) {
65 if (!klass.isInterface()) {
66 Class<?> superclass = klass.getSuperclass();
67 while (superclass != Object.class) {
69 superclass = superclass.getSuperclass();
static Set< Class<?> > getAllTypes(final Class<?> klass)
static Set< Class<?> > getAllInterfaces(final Class<?> klass)