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