root/org.axdt.axdoc.model/src/org/axdt/axdoc/model/AXIndexNode.java @ 5c182b6e475d5851c54cdb2117f25af21723b62a

Revision 5c182b6e475d5851c54cdb2117f25af21723b62a, 6.2 KB (checked in by mb0 <mb0@…>, 15 months ago)

memory clean up ! (and several minor fixes)

  • merged symboltablevisitor and indexingvisitor together with some basic syntax checks to form as3analysis
  • index0r can now be used to request details on demand.
  • axdoc parser ignores whitespace textnodes and now parses the member code span
  • axdoc model: moved level property to indexnode and changed it to be persisted
  • changed axlevel literals
  • discover memory leak  http://bugs.eclipse.org/281790, cleaned up with editor service.
  • moved usefull generally useful methods out of as3 content proposer into as3 source helper
  • when no index exists for a source folder the project will be built and cached.
  • builder does not cache anymore instead builds two times. the first time to index. the second time to resolve.
  • lexer helper error detection fixed ater working through the sparce documentation on lpgs deterministic parser.
  • moved top level symbol table to the program ast node
  • some minor parser changed
  • Property mode set to 100644
Line 
1/**
2 * EPL - axdt.org
3 * created by martin schnabel - mb0
4 *
5 * $Id$
6 */
7package org.axdt.axdoc.model;
8
9import org.eclipse.emf.common.util.EList;
10import org.eclipse.emf.ecore.EObject;
11
12/**
13 * <!-- begin-user-doc -->
14 * A representation of the model object '<em><b>AX Index Node</b></em>'.
15 * <!-- end-user-doc -->
16 *
17 * <p>
18 * The following features are supported:
19 * <ul>
20 *   <li>{@link org.axdt.axdoc.model.AXIndexNode#getName <em>Name</em>}</li>
21 *   <li>{@link org.axdt.axdoc.model.AXIndexNode#getEntries <em>Entries</em>}</li>
22 *   <li>{@link org.axdt.axdoc.model.AXIndexNode#getId <em>Id</em>}</li>
23 *   <li>{@link org.axdt.axdoc.model.AXIndexNode#getBasicParent <em>Basic Parent</em>}</li>
24 *   <li>{@link org.axdt.axdoc.model.AXIndexNode#getLevel <em>Level</em>}</li>
25 * </ul>
26 * </p>
27 *
28 * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode()
29 * @model abstract="true"
30 * @generated
31 */
32public interface AXIndexNode extends EObject {
33        /**
34         * Returns the value of the '<em><b>Name</b></em>' attribute.
35         * <!-- begin-user-doc -->
36         * <p>
37         * If the meaning of the '<em>Name</em>' attribute isn't clear,
38         * there really should be more of a description here...
39         * </p>
40         * <!-- end-user-doc -->
41         * @return the value of the '<em>Name</em>' attribute.
42         * @see #setName(String)
43         * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode_Name()
44         * @model required="true"
45         * @generated
46         */
47        String getName();
48
49        /**
50         * Sets the value of the '{@link org.axdt.axdoc.model.AXIndexNode#getName <em>Name</em>}' attribute.
51         * <!-- begin-user-doc -->
52         * <!-- end-user-doc -->
53         * @param value the new value of the '<em>Name</em>' attribute.
54         * @see #getName()
55         * @generated
56         */
57        void setName(String value);
58
59        /**
60         * Returns the value of the '<em><b>Entries</b></em>' containment reference list.
61         * The list contents are of type {@link org.axdt.axdoc.model.AXEntry}.
62         * It is bidirectional and its opposite is '{@link org.axdt.axdoc.model.AXEntry#getParent <em>Parent</em>}'.
63         * <!-- begin-user-doc -->
64         * <p>
65         * If the meaning of the '<em>Entries</em>' containment reference list isn't clear,
66         * there really should be more of a description here...
67         * </p>
68         * <!-- end-user-doc -->
69         * @return the value of the '<em>Entries</em>' containment reference list.
70         * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode_Entries()
71         * @see org.axdt.axdoc.model.AXEntry#getParent
72         * @model opposite="parent" containment="true" keys="id"
73         * @generated
74         */
75        EList<AXEntry> getEntries();
76
77        /**
78         * Returns the value of the '<em><b>Id</b></em>' attribute.
79         * <!-- begin-user-doc -->
80         * <p>
81         * If the meaning of the '<em>Id</em>' attribute isn't clear,
82         * there really should be more of a description here...
83         * </p>
84         * <!-- end-user-doc -->
85         * @return the value of the '<em>Id</em>' attribute.
86         * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode_Id()
87         * @model id="true" transient="true" changeable="false" derived="true"
88         * @generated
89         */
90        String getId();
91
92        /**
93         * Returns the value of the '<em><b>Basic Parent</b></em>' reference.
94         * <!-- begin-user-doc -->
95         * <p>
96         * If the meaning of the '<em>Basic Parent</em>' reference isn't clear,
97         * there really should be more of a description here...
98         * </p>
99         * <!-- end-user-doc -->
100         * @return the value of the '<em>Basic Parent</em>' reference.
101         * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode_BasicParent()
102         * @model transient="true" changeable="false" volatile="true"
103         * @generated
104         */
105        AXIndexNode getBasicParent();
106
107        /**
108         * Returns the value of the '<em><b>Level</b></em>' attribute.
109         * The literals are from the enumeration {@link org.axdt.axdoc.model.AXLevel}.
110         * <!-- begin-user-doc -->
111         * <p>
112         * If the meaning of the '<em>Level</em>' attribute isn't clear,
113         * there really should be more of a description here...
114         * </p>
115         * <!-- end-user-doc -->
116         * @return the value of the '<em>Level</em>' attribute.
117         * @see org.axdt.axdoc.model.AXLevel
118         * @see #setLevel(AXLevel)
119         * @see org.axdt.axdoc.model.AXDocPackage#getAXIndexNode_Level()
120         * @model
121         * @generated
122         */
123        AXLevel getLevel();
124
125        /**
126         * Sets the value of the '{@link org.axdt.axdoc.model.AXIndexNode#getLevel <em>Level</em>}' attribute.
127         * <!-- begin-user-doc -->
128         * <!-- end-user-doc -->
129         * @param value the new value of the '<em>Level</em>' attribute.
130         * @see org.axdt.axdoc.model.AXLevel
131         * @see #getLevel()
132         * @generated
133         */
134        void setLevel(AXLevel value);
135
136        /**
137         * <!-- begin-user-doc -->
138         * <!-- end-user-doc -->
139         * @model kind="operation"
140         * @generated
141         */
142        AXRoot getRoot();
143
144        /**
145         * <!-- begin-user-doc -->
146         * <!-- end-user-doc -->
147         * @model
148         * @generated
149         */
150        String fullUrl();
151
152        /**
153         * <!-- begin-user-doc -->
154         * <!-- end-user-doc -->
155         * @model
156         * @generated
157         */
158        EList<AXEntry> localEntry(String part);
159
160        /**
161         * <!-- begin-user-doc -->
162         * <!-- end-user-doc -->
163         * @model
164         * @generated
165         */
166        AXEntry localEntry(String part, boolean member);
167
168        /**
169         * <!-- begin-user-doc -->
170         * <!-- end-user-doc -->
171         * @model
172         * @generated
173         */
174        AXEntry createEntry(String part, AXEntryType type);
175
176        /**
177         * <!-- begin-user-doc -->
178         * <!-- end-user-doc -->
179         * @model kind="operation"
180         * @generated
181         */
182        AXNode getOrCreateReference();
183
184        /**
185         * <!-- begin-user-doc -->
186         * <!-- end-user-doc -->
187         * @model kind="operation"
188         * @generated
189         */
190        AXNode getReference();
191
192        /**
193         * <!-- begin-user-doc -->
194         * <!-- end-user-doc -->
195         * @model kind="operation"
196         * @generated
197         */
198        EList<AXEntry> getAllEntries();
199
200        /**
201         * <!-- begin-user-doc -->
202         * <!-- end-user-doc -->
203         * @model kind="operation"
204         * @generated
205         */
206        EList<AXEntry> getAllTypes();
207
208        /**
209         * <!-- begin-user-doc -->
210         * <!-- end-user-doc -->
211         * @model kind="operation"
212         * @generated
213         */
214        EList<AXEntry> getAllMembers();
215
216        /**
217         * <!-- begin-user-doc -->
218         * <!-- end-user-doc -->
219         * @model
220         * @generated
221         */
222        AXEntry localMember(String part);
223
224        /**
225         * <!-- begin-user-doc -->
226         * <!-- end-user-doc -->
227         * @model
228         * @generated
229         */
230        AXEntry localType(String part);
231
232        /**
233         * <!-- begin-user-doc -->
234         * <!-- end-user-doc -->
235         * @model kind="operation"
236         * @generated
237         */
238        EList<AXEntry> getMembers();
239
240        /**
241         * <!-- begin-user-doc -->
242         * <!-- end-user-doc -->
243         * @model kind="operation"
244         * @generated
245         */
246        EList<AXEntry> getTypes();
247
248} // AXIndexNode
Note: See TracBrowser for help on using the browser.