-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbaseclasses.m
More file actions
32 lines (27 loc) · 774 Bytes
/
baseclasses.m
File metadata and controls
32 lines (27 loc) · 774 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
function baseclasses(someclass)
%Display the type hierarchy of a given class. The argument can
%be either the meta class object of the class or an instance of the class.
% usage:
% baseclasses(?myclass);
% baseclasses(gca);
%
% see also:
% metaclass
%
if strcmp(class(someclass), 'meta.class')
meta = someclass;
else
meta = metaclass(someclass);
end
fprintf('\nbase classes of %s: \n', meta.Name);
recurse(meta, 0);
end
function recurse(meta, level)
indent = repmat(' ', 1, level);
for super = meta.SuperclassList'
fprintf('%s %s\n', indent, super.Name);
if ~isempty(super.SuperclassList)
recurse(super, level+1);
end
end
end