Is there a way to give method/property access to all classes in a package without typing them all in manually?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
So I am writing a rather large application in appdesigner, and so I put a lot of the callbacks used by the app in a seperate class file where they are all accessed as static methods. I want these methods to be able to obviously access the private methods and private properties of the app object. For the properties of the app, I have something like this:
properties (Access = {?libs.callbacks.kinetics.Data, ...
?libs.callbacks.kinetics.Processes, ...
?libs.callbacks.kinetics.Figures})
Right now this is not a big deal, however, as I add more callbacks, this is going to get more and more annoying. I tried to just do:
properties (Access = ?libs.callbacks)
But this does not work (I am actually unsure what this even does, because it doesn't return an error or anything it just doesn't give access to any of the classes). Is there a way to give access to all the classes in a package without manually writing them all in into a class list?
0 comentarios
Respuestas (1)
Image Analyst
el 30 de Jun. de 2022
I don't know what that "Access=" stuff is, but I know if you have an instance of a class or a static class you can do
methods(className)
properties(className)
and it will list them all. For example, with the attached class:
methods(Excel_utils);
properties(Excel_utils)
2 comentarios
Image Analyst
el 6 de Jul. de 2022
You could easily write a script that looks at all m-files in a folder and determine which are class definitions by reading in the m-files line-by-line and then, for class files, find out what the methods and properties are. I'd be surprised if there is not something in the File Exchange already that does that. If there is not, and you can't figure out how to write the simple code to do it, write back and I'll do it if I find the time.
Ver también
Categorías
Más información sobre Software Development Tools en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!