Can I specify a package of classes as allowable subclasses?

When defining a class and specifying allowable subclasses (AllowedSubclasses = ?ClassName), can I specify a package instead? For example:
classdef SuperClass (AllowedSubclasses = ?PackageName)
...
or
classdef SuperClass (AllowedSubclasses = ?PackageName.*)
...
Thanks!
--Ryan

 Réponse acceptée

Shruti Sapre
Shruti Sapre le 31 Août 2015
Hello Sean,
I understand that you want to use “AllowedSubclasses” function but with package names.
However, there isn’t a way of specifying that in MATLAB because the “AllowedSubclasses” parameter accepts only fully qualified class name while referencing a class name.
You can specify multiple classes in the “classdef” of your super class using the “AllowedSubclasses” parameter using a cell array of meta.class objects to define more than one allowed subclass:
classdef (AllowedSubclasses = {?ClassName1,?ClassName2,...?ClassNameN}) MySuperClass ... end
Please refer to the below link for more details on the same:
Hope this helps!
-Shruti

1 commentaire

Shruti,
The key in your answer is when you say that the AllowedSubclasses parameter only accepts qualified class names.
I just wish I could specify an entire package of classes, rather than just individual classes.
Thanks!
--Ryan

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Construct and Work with Object Arrays dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by