Is it possible to have private folders in packages?

17 visualizzazioni (ultimi 30 giorni)
Jette
Jette il 7 Dic 2017
Commentato: Jan il 2 Ago 2018
I have organized my code in packages and would like to save some small helper functions in a private directory. However, if I save my functions in +package/private/*.m, I can't get my code to "see" them.
Is this somehow possible?
I am using R2015b.
  1 Commento
Adam
Adam il 7 Dic 2017
I also found the same problem when trying to put subfolders in a package (I can't remember off-hand if it was the private folder, but I think I did try this once), but it did not work because there is no option to add subfolders of a package to the path, which is required, even for private folders, as far as I am aware, in order for the functions to be seen even in the folder containing the private folder

Accedi per commentare.

Risposte (2)

Jan
Jan il 7 Dic 2017
Functions stored inside folder/+package/private/ should be visible for M-files in folder/+package/, but for no other functions. If you observe something else, consider, that there might be a different problem. How did you try to make you code seeing the files in the private folder?
  6 Commenti
Timothy Stewart
Timothy Stewart il 1 Ago 2018
Modificato: Timothy Stewart il 1 Ago 2018
@Jan I'm trying to use private folders within /+package/@class/private to organize my directory of class methods.
Is this supported?
Furthermore, perhaps /+package/@class/protected and/or /+package/@class/public would be useful too.
V.R.
Tim
Jan
Jan il 2 Ago 2018
@Thimothy: I'm not sure about this, but I'd simply try it.

Accedi per commentare.


Lockywolf
Lockywolf il 8 Mag 2018
A private folder in a package works fine in my Matlab 2013a.
What doesn't work, however is non-private package subfolders.
That is, I have a package +pack and inside this package I have a function 'packfun.n' and two folders: 'private' and 'notprivate'.
The function 'privfun.m' from the 'private' folder is accessible. Whereas the function 'nonpriv.m' from the 'nonprivate' folder I didn't manage to run no matter how I tried.

Categorie

Scopri di più su Programming in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by