/**
  * @param function
  * @return the Definition object for the function.
  */
 private Definition getFunctionDefinition(Node function) {
   DefinitionSite definitionSite = defFinder.getDefinitionForFunction(function);
   Preconditions.checkNotNull(definitionSite);
   Definition definition = definitionSite.definition;
   Preconditions.checkState(!definitionSite.inExterns);
   Preconditions.checkState(definition.getRValue() == function);
   return definition;
 }