blob: 5b7aa287eedecb90cc022f7efa7caf01b3b588a2 [file] [log] [blame]
Stephan Herrmann01664412010-04-01 20:28:43 +00001<html>
2 <head>
3 <meta name="copyright" content="Copyright Technical University Berlin and others 2004, 2010. This page is made available under the Eclipse Public License v1.0. For full details see" />
4 <link rel=stylesheet type="text/css" href="../css/book.css">
5 <title>Object Teams Type Hierarchy</title>
6 <META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
7 <style type="text/css">
8 h2 {color: blue}
9 h3 {color: green}
10 </style>
11 </head>
12 <body>
13 <h1>Object Teams Type Hierarchy</h1>
14 The <b>Object Teams type hierarchy</b> provides the following features
15 (in addition to the features of the standard JDT
16 <a href="/help/topic/org.eclipse.jdt.doc.user/reference/ref-type-hierarchy.htm">
17 type hierarchy view</a>):
18 <h3>Type hierarchy tree:</h3>
19 <ul>
20 <li>shows <b>supertype/subtype hierarchy</b> of Object Teams types (team classes,
21 role classes)
22 </li>
23 <li>shows full <b>role type hierarchy</b> incl. <b>implicit inheritance</b></li>
24 <li>displays <b>Object Teams specific icons</b> for team classes, role classes and
25 method bindings
26 </li>
27 </ul>
28 <h3>Member list (method viewer):</h3>
29 <ul>
30 <li>shows <b>methods</b> in hierachy</li>
31 <li>shows <b>implicitly inherited methods</b></li>
32 <li>shows <b>method bindings</b></li>
33 <li>shows <b>inherited method bindings</b></li>
34 </ul>
36 <h2>Opening a type hierarchy on the current text selection</h2>
37 To open a type hierarchy on a text selection, select the name of an Object Teams element
38 or Java element in the editor or package explorer and do one of the following:
39 <ul>
40 <li>Press <b>F4</b></li>
41 <li>select <b>Open Type Hierarchy</b> from the package explorer's pop-up menu</li>
42 </ul>
43 <b>Note</b>: If the selected Object Teams element or Java element is not a type or a
44 compilation unit, the hierarchy opens on the type enclosing the current selection.
45 <p>
46 <strong>Type hierarchy</strong>:<br>
47 <img src="images/screenshots/typeHierarchy.jpg"
48 styles="left" alt="Object Teams type hierarchy view">
49 </p>
50 <p>
51 <strong>Role hierarchy</strong>:<br>
52 <img src="images/screenshots/implicitRoleHierarchy.jpg"
53 styles="bottom" alt="Object Teams implicit role hierarchy view">
54 </p>
55 Note, that for roles, the super types are not restricted to a linear chain, but due to combination
56 of explicit and implicit inheritance (<a href="otjld/def/s1.html#s1.3.1">OTJLD &sect;1.3.1 </a>)
57 a role may have multiple supers. E.g., in the picture, <code>HierarchyDisplayImpl.CompositeNode</code>
58 explicitly inherits from <code>HierarchyDisplayImpl.Node</code> and implicitly
59 inherits from <code>HierarchyDisplay.CompositeNode</code>.
60 </body>