How to access and change variables in workspace
4 ビュー (過去 30 日間)
古いコメントを表示
I need to access variables in a workspace which are in a workspace down the stack. And I need to do this in a function - Thus, start the debugger, select the workspace manually and change the variable is not the thing I want to do. Thus, I need to do something like
evalin( 'caller', evalin( 'caller', evalin( ..., variablename) ) ... ).
I am open for hacky solutions too.
Furthermore: Please do not tell me any of the following: "Do not use eval", "Do not use global variables", "Don't do this" etc.. I am not a novice programmer (and hate that in similar questions the answer is never given, but only told that one should not do it).
7 件のコメント
Steven Lord
2020 年 11 月 30 日
This is for a testing framework, in particular for testing legacy code.
How exactly is retrieving data from workspaces lower in the stack going to help with your testing framework? Your test functions are going to call the software under test. For it to have access to variables from the subfunctions you'd have to have the test function executing at the same time as the subfunction and have that test function access the callee's workspace not the caller's.
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Testing Frameworks についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!