root/tags/lgt293/library/class_hierarchyp.lgt

Revision 2, 3.2 KB (checked in by pmoura, 7 years ago)

Initial revision

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1
2:- protocol(class_hierarchyp,
3    extends(hierarchyp)).
4
5
6    :- info([
7        version is 1.0,
8        authors is 'Paulo Moura',
9        date is 2000/7/24,
10        comment is 'Class hierarchy protocol.']).
11
12
13    :- public(class/1).
14
15    :- mode(class(?object), zero_or_more).
16
17    :- info(class/1, [
18        comment is 'Returns, by backtracking, all object classes.',
19        argnames is ['Class']]).
20
21
22    :- public(classes/1).
23
24    :- mode(classes(-list), one).
25
26    :- info(classes/1, [
27        comment is 'List of all object classes.',
28        argnames is ['Classes']]).
29
30
31    :- public(instance/1).
32
33    :- mode(instance(?object), zero_or_more).
34
35    :- info(instance/1, [
36        comment is 'Returns, by backtracking, all class instances.',
37        argnames is ['Instance']]).
38
39
40    :- public(instances/1).
41
42    :- mode(instances(-list), one).
43
44    :- info(instances/1, [
45        comment is 'List of all class instances.',
46        argnames is ['Instances']]).
47
48
49    :- public(subclass/1).
50
51    :- mode(subclass(?object), zero_or_more).
52
53    :- info(subclass/1, [
54        comment is 'Returns, by backtracking, all class subclasses.',
55        argnames is ['Subclass']]).
56
57
58    :- public(subclasses/1).
59
60    :- mode(subclasses(-list), one).
61
62    :- info(subclasses/1, [
63        comment is 'List of all class subclasses.',
64        argnames is ['Subclasses']]).
65
66
67    :- public(superclass/1).
68
69    :- mode(superclass(?object), zero_or_more).
70
71    :- info(superclass/1, [
72        comment is 'Returns, by backtracking, all class superclasses.',
73        argnames is ['Superclass']]).
74
75
76    :- public(superclasses/1).
77
78    :- mode(superclasses(-list), one).
79
80    :- info(superclasses/1, [
81        comment is 'List of all class superclasses.',
82        argnames is ['Superclasses']]).
83
84
85    :- public(leaf_instance/1).
86
87    :- mode(leaf_instance(?object), zero_or_more).
88
89    :- info(leaf_instance/1, [
90        comment is 'Returns, by backtracking, all class leaf instances.',
91        argnames is ['Leaf']]).
92
93
94    :- public(leaf_instances/1).
95
96    :- mode(leaf_instances(-list), one).
97
98    :- info(leaf_instances/1, [
99        comment is 'List of all class leaf instances.',
100        argnames is ['Leaves']]).
101
102
103    :- public(leaf_class/1).
104
105    :- mode(leaf_class(?object), zero_or_more).
106
107    :- info(leaf_class/1, [
108        comment is 'Returns, by backtracking, all class leaf subclasses.',
109        argnames is ['Leaf']]).
110
111
112    :- public(leaf_classes/1).
113
114    :- mode(leaf_classes(-list), one).
115
116    :- info(leaf_classes/1, [
117        comment is 'List of all class leaf leaf subclasses.',
118        argnames is ['Leaves']]).
119
120
121    :- public(descendant_instance/1).
122
123    :- mode(descendant_instance(?object), zero_or_more).
124
125    :- info(descendant_instance/1, [
126        comment is 'Returns, by backtracking, all class descendant instances.',
127        argnames is ['Descendant']]).
128
129
130    :- public(descendant_instances/1).
131
132    :- mode(descendant_instances(-list), one).
133
134    :- info(descendant_instances/1, [
135        comment is 'List of all class descendant instances.',
136        argnames is ['Descendants']]).
137
138
139    :- public(descendant_class/1).
140
141    :- mode(descendant_class(?object), zero_or_more).
142
143    :- info(descendant_class/1, [
144        comment is 'Returns, by backtracking, all class descendant subclasses.',
145        argnames is ['Descendant']]).
146
147
148    :- public(descendant_classes/1).
149
150    :- mode(descendant_classes(-list), one).
151
152    :- info(descendant_classes/1, [
153        comment is 'List of all class descendant subclasses.',
154        argnames is ['Descendants']]).
155
156
157:- end_protocol.
Note: See TracBrowser for help on using the browser.