Locate path of .m file that creates the specified object

5 views (last 30 days)
Hello,
Assume that I have the custom classdef defined. While calling the class constructor, I want to add a propery that contains the full path to the script or function that called the classdef .m file. I do not want to add this manually every time the object of this class is being created. I tried to use mfilename (gives the path to classdef file) and dbstack, but I want to have only one variable, that unambiguously says where the certain object has been created within all project scritps.
Thanks for help.
  5 Comments
Steven Lord
Steven Lord on 5 Feb 2023
dbstack also wouldn't work if the object was created at the Command Window prompt.
>> d = dbstack
d =
0×1 empty struct array with fields:
file
name
line
If you tried running dbstack in MATLAB Answers you'll actually get information about the infrastructure used to run the code.
Grzegorz Diaczek
Grzegorz Diaczek on 5 Feb 2023
I checked it one more time, your're right, I see the path to the function that called the classdef file, looks like I omitted some stacks before. Thanks for help.

Sign in to comment.

Answers (0)

Categories

Find more on Class File Organization in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!