Mercurial > projects > dwt2
comparison base/src/java/util/LinkedList.d @ 27:1bf55a6eb092
Renamed java tree to base
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Sat, 21 Mar 2009 11:33:57 +0100 |
parents | java/src/java/util/LinkedList.d@9b96950f2c3c |
children | fcf926c91ca4 |
comparison
equal
deleted
inserted
replaced
26:f589fc20a5f9 | 27:1bf55a6eb092 |
---|---|
1 module java.util.LinkedList; | |
2 | |
3 import java.lang.all; | |
4 import java.util.List; | |
5 import java.util.Iterator; | |
6 import java.util.ListIterator; | |
7 import java.util.Collection; | |
8 | |
9 version(Tango){ | |
10 static import tango.util.container.CircularList; | |
11 } else { // Phobos | |
12 } | |
13 | |
14 class LinkedList : List { | |
15 version(Tango){ | |
16 alias tango.util.container.CircularList.CircularList!(Object) ListType; | |
17 private ListType list; | |
18 } else { // Phobos | |
19 } | |
20 | |
21 this(){ | |
22 version(Tango){ | |
23 list = new ListType(); | |
24 } else { // Phobos | |
25 implMissing( __FILE__, __LINE__ ); | |
26 } | |
27 } | |
28 this( Collection c ){ | |
29 this(); | |
30 addAll(c); | |
31 } | |
32 void add(int index, Object element){ | |
33 version(Tango){ | |
34 list.addAt(index,element); | |
35 return true; | |
36 } else { // Phobos | |
37 implMissing( __FILE__, __LINE__ ); | |
38 } | |
39 } | |
40 bool add(Object o){ | |
41 version(Tango){ | |
42 list.add(o); | |
43 return true; | |
44 } else { // Phobos | |
45 implMissing( __FILE__, __LINE__ ); | |
46 return false; | |
47 } | |
48 } | |
49 public bool add(String o){ | |
50 return add(stringcast(o)); | |
51 } | |
52 bool addAll(Collection c){ | |
53 if( c is null ) throw new NullPointerException(); | |
54 bool res = false; | |
55 foreach( o; c ){ | |
56 res |= add( o ); | |
57 } | |
58 return res; | |
59 } | |
60 bool addAll(int index, Collection c){ | |
61 implMissing( __FILE__, __LINE__ ); | |
62 return false; | |
63 } | |
64 void addFirst(Object o){ | |
65 version(Tango){ | |
66 list.prepend( o ); | |
67 } else { // Phobos | |
68 implMissing( __FILE__, __LINE__ ); | |
69 } | |
70 } | |
71 void addLast(Object o){ | |
72 version(Tango){ | |
73 list.append( o ); | |
74 } else { // Phobos | |
75 implMissing( __FILE__, __LINE__ ); | |
76 } | |
77 } | |
78 // void addElement(Object obj){ | |
79 // implMissing( __FILE__, __LINE__ ); | |
80 // } | |
81 int capacity(){ | |
82 implMissing( __FILE__, __LINE__ ); | |
83 return 0; | |
84 } | |
85 void clear(){ | |
86 version(Tango){ | |
87 list.clear(); | |
88 } else { // Phobos | |
89 implMissing( __FILE__, __LINE__ ); | |
90 return false; | |
91 } | |
92 } | |
93 Object clone(){ | |
94 implMissing( __FILE__, __LINE__ ); | |
95 return null; | |
96 } | |
97 bool contains(Object elem){ | |
98 version(Tango){ | |
99 return list.contains(elem); | |
100 } else { // Phobos | |
101 implMissing( __FILE__, __LINE__ ); | |
102 return false; | |
103 } | |
104 } | |
105 bool contains(String elem){ | |
106 return contains(stringcast(elem)); | |
107 } | |
108 bool containsAll(Collection c){ | |
109 version(Tango){ | |
110 foreach(o; c){ | |
111 if( !list.contains(o)) return false; | |
112 } | |
113 return true; | |
114 } else { // Phobos | |
115 implMissing( __FILE__, __LINE__ ); | |
116 return false; | |
117 } | |
118 } | |
119 void copyInto(Object[] anArray){ | |
120 implMissing( __FILE__, __LINE__ ); | |
121 } | |
122 Object elementAt(int index){ | |
123 version(Tango){ | |
124 return list.get(index); | |
125 } else { // Phobos | |
126 implMissing( __FILE__, __LINE__ ); | |
127 return null; | |
128 } | |
129 } | |
130 // Enumeration elements(){ | |
131 // implMissing( __FILE__, __LINE__ ); | |
132 // return null; | |
133 // } | |
134 void ensureCapacity(int minCapacity){ | |
135 implMissing( __FILE__, __LINE__ ); | |
136 } | |
137 equals_t opEquals(Object o){ | |
138 implMissing( __FILE__, __LINE__ ); | |
139 return false; | |
140 } | |
141 Object firstElement(){ | |
142 implMissing( __FILE__, __LINE__ ); | |
143 return null; | |
144 } | |
145 Object get(int index){ | |
146 version(Tango){ | |
147 return list.get(index); | |
148 } else { // Phobos | |
149 implMissing( __FILE__, __LINE__ ); | |
150 return null; | |
151 } | |
152 } | |
153 Object getFirst(){ | |
154 version(Tango){ | |
155 return list.get(0); | |
156 } else { // Phobos | |
157 implMissing( __FILE__, __LINE__ ); | |
158 return null; | |
159 } | |
160 } | |
161 Object getLast(){ | |
162 version(Tango){ | |
163 return list.get(list.size()-1); | |
164 } else { // Phobos | |
165 implMissing( __FILE__, __LINE__ ); | |
166 return null; | |
167 } | |
168 } | |
169 hash_t toHash(){ | |
170 implMissing( __FILE__, __LINE__ ); | |
171 return 0; | |
172 } | |
173 int indexOf(Object elem){ | |
174 implMissing( __FILE__, __LINE__ ); | |
175 return 0; | |
176 } | |
177 int indexOf(Object elem, int index){ | |
178 implMissing( __FILE__, __LINE__ ); | |
179 return 0; | |
180 } | |
181 void insertElementAt(Object obj, int index){ | |
182 implMissing( __FILE__, __LINE__ ); | |
183 } | |
184 bool isEmpty(){ | |
185 version(Tango){ | |
186 return list.isEmpty(); | |
187 } else { // Phobos | |
188 implMissing( __FILE__, __LINE__ ); | |
189 return false; | |
190 } | |
191 } | |
192 Iterator iterator(){ | |
193 implMissing( __FILE__, __LINE__ ); | |
194 return null; | |
195 } | |
196 Object lastElement(){ | |
197 implMissing( __FILE__, __LINE__ ); | |
198 return null; | |
199 } | |
200 int lastIndexOf(Object elem){ | |
201 implMissing( __FILE__, __LINE__ ); | |
202 return 0; | |
203 } | |
204 int lastIndexOf(Object elem, int index){ | |
205 implMissing( __FILE__, __LINE__ ); | |
206 return 0; | |
207 } | |
208 ListIterator listIterator(){ | |
209 implMissing( __FILE__, __LINE__ ); | |
210 return null; | |
211 } | |
212 ListIterator listIterator(int index){ | |
213 implMissing( __FILE__, __LINE__ ); | |
214 return null; | |
215 } | |
216 Object remove(int index){ | |
217 implMissing( __FILE__, __LINE__ ); | |
218 return null; | |
219 } | |
220 bool remove(Object o){ | |
221 version(Tango){ | |
222 return list.remove(o,false) !is 0; | |
223 } else { // Phobos | |
224 implMissing( __FILE__, __LINE__ ); | |
225 return false; | |
226 } | |
227 } | |
228 public bool remove(String key){ | |
229 return remove(stringcast(key)); | |
230 } | |
231 bool removeAll(Collection c){ | |
232 version(Tango){ | |
233 bool res = false; | |
234 foreach( o; c){ | |
235 res |= list.remove(o,false) !is 0; | |
236 } | |
237 return res; | |
238 } else { // Phobos | |
239 implMissing( __FILE__, __LINE__ ); | |
240 return false; | |
241 } | |
242 } | |
243 void removeAllElements(){ | |
244 implMissing( __FILE__, __LINE__ ); | |
245 } | |
246 Object removeFirst(){ | |
247 implMissing( __FILE__, __LINE__ ); | |
248 return null; | |
249 } | |
250 Object removeLast(){ | |
251 implMissing( __FILE__, __LINE__ ); | |
252 return null; | |
253 } | |
254 bool removeElement(Object obj){ | |
255 implMissing( __FILE__, __LINE__ ); | |
256 return false; | |
257 } | |
258 void removeElementAt(int index){ | |
259 implMissing( __FILE__, __LINE__ ); | |
260 } | |
261 protected void removeRange(int fromIndex, int toIndex){ | |
262 implMissing( __FILE__, __LINE__ ); | |
263 } | |
264 bool retainAll(Collection c){ | |
265 implMissing( __FILE__, __LINE__ ); | |
266 return false; | |
267 } | |
268 Object set(int index, Object element){ | |
269 implMissing( __FILE__, __LINE__ ); | |
270 return null; | |
271 } | |
272 void setElementAt(Object obj, int index){ | |
273 implMissing( __FILE__, __LINE__ ); | |
274 } | |
275 void setSize(int newSize){ | |
276 implMissing( __FILE__, __LINE__ ); | |
277 } | |
278 int size(){ | |
279 version(Tango){ | |
280 return list.size(); | |
281 } else { // Phobos | |
282 implMissing( __FILE__, __LINE__ ); | |
283 return 0; | |
284 } | |
285 } | |
286 List subList(int fromIndex, int toIndex){ | |
287 implMissing( __FILE__, __LINE__ ); | |
288 return null; | |
289 } | |
290 Object[] toArray(){ | |
291 version(Tango){ | |
292 if( list.size() is 0 ) return null; // workaround tango ticket 1237 | |
293 return list.toArray(); | |
294 } else { // Phobos | |
295 implMissing( __FILE__, __LINE__ ); | |
296 return null; | |
297 } | |
298 } | |
299 Object[] toArray(Object[] a){ | |
300 version(Tango){ | |
301 if( list.size() is 0 ) return a[0 .. 0]; // workaround tango ticket 1237 | |
302 return list.toArray( a ); | |
303 } else { // Phobos | |
304 implMissing( __FILE__, __LINE__ ); | |
305 return null; | |
306 } | |
307 } | |
308 String toString(){ | |
309 implMissing( __FILE__, __LINE__ ); | |
310 return null; | |
311 } | |
312 void trimToSize(){ | |
313 implMissing( __FILE__, __LINE__ ); | |
314 } | |
315 | |
316 // only for D | |
317 public int opApply (int delegate(ref Object value) dg){ | |
318 implMissing( __FILE__, __LINE__ ); | |
319 return 0; | |
320 } | |
321 | |
322 } | |
323 |