Get name of functions called inside another function

4 ビュー (過去 30 日間)
M
M 2017 年 11 月 10 日
コメント済み: Walter Roberson 2017 年 11 月 10 日
Let's say I have a function defined as :
function output = mainFunction(input1, input2)
a=calledFunction1(input1,input2);
b=calledFunction2(input1);
output= a + b ;
end
Is there a way to get the name of the functions that are called inside the mainFunction ? Such that it would return something like :
calledFunctions(mainFunction)
ans =
calledFunction1
calledFunction2
I did not find any existing function that does it.

採用された回答

Walter Roberson
Walter Roberson 2017 年 11 月 10 日
Because function references can constructed from strings at run time, probably the best way is to use the profiler.
There used to be depfun (or was it dfun), which has been replaced by a long command string that is difficult to remember
  2 件のコメント
M
M 2017 年 11 月 10 日
Thank you. Actually, using profiler in this way
profile on
mainFunction
p=profile('info');
and then accessing
p.FunctionTable.FunctionName
gives the expected result.
Walter Roberson
Walter Roberson 2017 年 11 月 10 日
In a deleted answer, Stephen Cobeldick pointed to https://www.mathworks.com/help/matlab/ref/matlab.codetools.requiredfilesandproducts.html for static analysis (not run-time analysis)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCharacters and Strings についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by