Matlab R2018b cannot check whether builtin function 'addvars.m' exist
2 views (last 30 days)
Show older comments
Hi, I found that Matlab R2018b cannot check whether the builtin function 'addvars.m' exist. On my machine:
>> exist('addvars.m')
ans =
0
>> exist('addvars')
ans =
0
>> exist('plot')
ans =
5
However, if I type:
edit addvars
It can open this builtin function (C:\Program Files\MATLAB\R2018b\toolbox\matlab\datatypes\@tabular\addvars.m). I need to check whether it exists to make my code backward compatitable. What is the reason for this issue?
Edit: A screenshot
0 Comments
Answers (3)
madhan ravi
on 25 Dec 2018
https://www.mathworks.com/help/matlab/ref/exist.html#description - reason is given.
P.S - I received the same answer as you(2018b).
0 Comments
Walter Roberson
on 25 Dec 2018
The inside of @ directories are not considered to be on the search path. When exist() is passed a file name, it only examines the search path. When exist() is passed the name of a function, it only examines the search path.
The addvars that exist() is finding is considered a method of class tabular
0 Comments
Steven Lord
on 25 Dec 2018
Instead of checking the existence of a particular file, I recommend using the verLessThan function to determine if the MATLAB session you're using is sufficiently new to have a particular piece of functionality. This avoids false positives where your user may create a script, function, or class file named addvars in a release earlier than its introduction as a method for table and timetable arrays in release R2018a.
0 Comments
See Also
Categories
Find more on Software Development Tools 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!