Is it possible to have private folders in packages?

17 vues (au cours des 30 derniers jours)
Jette
Jette le 7 Déc 2017
Commenté : Jan le 2 Août 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 commentaire
Adam
Adam le 7 Déc 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

Connectez-vous pour commenter.

Réponses (2)

Jan
Jan le 7 Déc 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 commentaires
Timothy Stewart
Timothy Stewart le 1 Août 2018
Modifié(e) : Timothy Stewart le 1 Août 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 le 2 Août 2018
@Thimothy: I'm not sure about this, but I'd simply try it.

Connectez-vous pour commenter.


Lockywolf
Lockywolf le 8 Mai 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.

Catégories

En savoir plus sur Programming dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by