@Override
public void visitClassDef(GroovySourceAST t, int visit) {
if (visit == OPENING_VISIT) {
SimpleGroovyClassDoc parent = getCurrentClassDoc();
String shortName = getIdentFor(t);
String className = shortName;
if (parent != null && isNested() && !insideAnonymousInnerClass()) {
className = parent.name() + "." + className;
} else {
foundClasses = new LinkedHashMap<String, SimpleGroovyClassDoc>();
}
SimpleGroovyClassDoc current = (SimpleGroovyClassDoc) classDocs.get(packagePath + FS + className);
if (current == null) {
current = new SimpleGroovyClassDoc(importedClassesAndPackages, aliases, className, links);
current.setGroovy(isGroovy);
}
current.setRawCommentText(getJavaDocCommentsBeforeNode(t));
current.setFullPathName(packagePath + FS + current.name());
current.setTokenType(t.getType());
current.setNameWithTypeArgs(getIdentPlusTypeArgsFor(t));
processAnnotations(t, current);
processModifiers(t, current);
classDocs.put(current.getFullPathName(), current);
foundClasses.put(shortName, current);
if (parent != null) {
parent.addNested(current);
current.setOuter(parent);
}
}
}