superclasses — Return visible superclass names for a class or object.
superclasses(objOrClass) returns the visible superclass names for a registered class or object as a cell row of character vectors.
Syntax
s = superclasses(obj_or_class)Inputs
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
obj_or_class | Any | Yes | — | Object instance or class name string/character vector. |
Returns
| Name | Type | Description |
|---|---|---|
s | Any | Cell row of visible superclass names as character vectors. |
Errors
| Identifier | When | Message |
|---|---|---|
RunMat:SuperclassesClassInvalid | The argument is neither an object nor a class-name string scalar/row character vector. | superclasses: input must be an object or class name |
RunMat:SuperclassesClassUnknown | The requested class is not present in RunMat class metadata. | superclasses: class metadata not found |
How superclasses works
- Class-name character vectors, string scalars, and 1x1 string arrays are interpreted as class names.
- Object and handle-object inputs are resolved through their runtime class names.
- ClassRef inputs query the referenced class.
- gpuArray inputs query the
gpuArrayclass metadata without gathering provider buffers. - Superclass names are returned nearest-parent first, then continuing toward the root.
- Classes with no registered visible superclasses return a 1x0 cell array.
- RunMat currently models a single parent link per class. Multiple inheritance and hidden-superclass filtering are not represented until the broader metadata object model lands.
- Unknown class names raise
RunMat:SuperclassesClassUnknown; nonobject, nontext inputs raiseRunMat:SuperclassesClassInvalid.
Examples
Get superclass names from an object
obj = Circle();
s = superclasses(obj)Expected output:
s = {'Shape'}Get superclass names from a class name
s = superclasses('Circle')Expected output:
s = {'Shape'}Class with no superclass
s = superclasses('Point')Expected output:
s = 1x0 cell arrayUsing superclasses with coding agents
Open a RunMat example with live inputs, then ask the agent to explain how superclasses changes the result.
Run a small superclasses example, explain the result, then change one input and compare the output.
FAQ
Does superclasses return strings?⌄
No. MATLAB returns a cell array of character vectors, and RunMat follows that shape.
Does it inspect full metadata objects?⌄
It uses the current RunMat class registry parent chain. Full matlab.metadata.Class object lists and hidden-class filtering are still tracked separately.
Related Introspection functions
addprop · class · clear · clearAllMemoizedCaches · clearCache · clearvars · dbclear · dbstack · dbstatus · dbtype · evalc · findprop · getcallinfo · inputParser · isa · ischar · isdeployed · iskeyword · ismethod · isobject · isstring · isUnderlyingType · keyboard · matlab.metadata.DynamicProperty.delete · memoize · metaclass · mislocked · mlock · munlock · namelengthmax · onCleanup · stats · underlyingType · verLessThan · version · which · who · whos
Open-source implementation
Unlike proprietary runtimes, every RunMat function is open-source. Read exactly how superclasses is executed, line by line, in Rust.
- View the source for superclasses in Rust on GitHub
- Learn how the RunMat runtime works
- Found a bug? Open an issue with a minimal reproduction.
About RunMat
RunMat is an open-source runtime that executes MATLAB-syntax code blazing on any GPU. It is licensed under the Apache 2.0 license.
- RunMat automatically optimizes your math for GPU execution on Apple, Nvidia, and AMD hardware. No code changes needed. Simulations that took hours now take minutes.
- Start running code in seconds. RunMat runs in the browser, on the desktop, or from the CLI. No license server, no IT ticket.