Azzera filtri
Azzera filtri

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

1 visualizzazione (ultimi 30 giorni)
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 Commento
PeterB
PeterB il 14 Lug 2021
Modificato: PeterB il 14 Lug 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!

Accedi per commentare.

Risposta accettata

Cris LaPierre
Cris LaPierre il 14 Lug 2021
Modificato: Cris LaPierre il 14 Lug 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 Commenti
Walter Roberson
Walter Roberson il 14 Lug 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 il 14 Lug 2021
Modificato: PeterB il 14 Lug 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.

Accedi per commentare.

Più risposte (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov il 14 Lug 2021
which count

Categorie

Scopri di più su Historical Contests in Help Center e File Exchange

Prodotti


Release

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by