return null;
}
@Override
public Void visitFunctionDeclaration(FunctionDeclaration node) {
ExecutableElement functionElement = node.getElement();
Scope outerScope = nameScope;
try {
if (functionElement == null) {
AnalysisEngine.getInstance().getLogger().logInformation(
"Missing element for top-level function " + node.getName().getName() + " in "
+ getDefiningLibrary().getSource().getFullName(),
new Exception());
} else {
nameScope = new FunctionScope(nameScope, functionElement);
}
super.visitFunctionDeclaration(node);
} finally {
nameScope = outerScope;
}
if (functionElement != null
&& !(functionElement.getEnclosingElement() instanceof CompilationUnitElement)) {
nameScope.define(functionElement);
}
return null;
}