public static string[] FindNames(FunctionDefinition function) {
var parameters = function.Parameters;
if (parameters.Count > 0) {
SelfNameFinder finder = new SelfNameFinder(function, parameters[0]);
function.Body.Walk(finder);
return ArrayUtils.ToArray(finder._names.Keys);
} else {
// no point analyzing function with no parameters
return ArrayUtils.EmptyStrings;
}
}