Effacer les filtres
Effacer les filtres

how do I find where a function is defined (equivalent of "which" command in bash)

1 vue (au cours des 30 derniers jours)
When I start Matlab on one of my work machines, I get the message:
"Warning: Function count has the same name as a MATLAB builtin.."
I know exactly what the message means, but I do not know how to fix it, because I can not find where I have defined the function "count". If this was in a bash shell I would type the command "which count". Is there a Matlab equivalent, which shows me where the function "count" has been redefined?
  1 commentaire
PeterB
PeterB le 14 Juil 2021
Modifié(e) : PeterB le 14 Juil 2021
Thanks everyone. I feel a bit silly not trying all permutations. I tried:
which(count)
but not
which count
or
which("count")
which both worked. I was just a bit disoriented not being at my normal desk and without my glasses!

Connectez-vous pour commenter.

Réponse acceptée

Cris LaPierre
Cris LaPierre le 14 Juil 2021
Modifié(e) : Cris LaPierre le 14 Juil 2021
Yes, there is a which command in MATLAB. Note that count is an overloaded function, meaning it exists in several toolboxes. Here are the results in R2021a.
which -all count
built-in (/MATLAB/toolbox/matlab/strfun/count) count is a built-in method % Shadowed string method /MATLAB/toolbox/matlab/codetools/@mtree/count.m % Shadowed mtree method /MATLAB/toolbox/matlab/bigdata/@tall/count.m % Shadowed tall method /MATLAB/toolbox/parallel/parallel/@codistributed/count.m % Shadowed codistributed method
  3 commentaires
Walter Roberson
Walter Roberson le 14 Juil 2021
Yes, the user will always see that message on startup.
C:\Program Files\MATLAB\R2020a\toolbox\local\count.m
What is the point of that? It is shadowed with the current path settings, so it will not be invoked -- the strfun\count version will be invoked for datatypes other than the ones listed as having @ .
If the intent is to have it be active only for a particular data type, you should build it into the class for that datatype.
PeterB
PeterB le 14 Juil 2021
Modifié(e) : PeterB le 14 Juil 2021
I didn't create it so I don't know what the intention was. (It's not the computer I usually use.) But thank you: now I know why it is giving the warning, and why I am getting a warning for the "count" function and not for anything else.

Connectez-vous pour commenter.

Plus de réponses (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov le 14 Juil 2021
  1 commentaire
PeterB
PeterB le 14 Juil 2021
Thanks. I feel a bit silly now. See my comment below the question.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Historical Contests dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by