Mercurial > projects > dwt2
annotate base/src/java/util/AbstractMap.d @ 99:5d5bd660917f
build some databind snippets
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 22 Apr 2009 18:59:26 +0200 |
parents | 48d4ee626868 |
children |
rev | line source |
---|---|
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
1 module java.util.AbstractMap; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
2 |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
3 import java.lang.all; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
4 import java.util.Map; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
5 import java.util.Collection; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
6 import java.util.Set; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
7 |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
8 abstract class AbstractMap : Map { |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
9 public this(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
10 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
11 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
12 void clear(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
13 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
14 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
15 protected Object clone(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
16 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
17 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
18 } |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
19 bool containsKey(String key){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
20 return containsKey(stringcast(key)); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
21 } |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
22 bool containsKey(Object key){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
23 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
24 return false; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
25 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
26 bool containsValue(Object value){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
27 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
28 return false; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
29 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
30 abstract Set entrySet(); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
31 |
21
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
10
diff
changeset
|
32 public override equals_t opEquals(Object o){ |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
33 if( Map other = cast(Map)o){ |
21
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
10
diff
changeset
|
34 return cast(equals_t)entrySet().opEquals( cast(Object) other.entrySet() ); |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
35 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
36 return false; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
37 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
38 |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
39 Object get(String key){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
40 return get(stringcast(key)); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
41 } |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
42 Object get(Object key){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
43 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
44 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
45 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
46 public override hash_t toHash(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
47 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
48 return 0; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
49 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
50 bool isEmpty(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
51 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
52 return false; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
53 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
54 Set keySet(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
55 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
56 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
57 } |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
58 Object put(String key, String value){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
59 return put(stringcast(key),stringcast(value)); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
60 } |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
61 Object put(Object key, String value){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
62 return put(key,stringcast(value)); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
63 } |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
64 Object put(String key, Object value){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
65 return put(stringcast(key),value); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
66 } |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
67 Object put(Object key, Object value){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
68 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
69 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
70 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
71 void putAll(Map t){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
72 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
73 } |
98
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
74 Object remove(String key){ |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
75 return remove(stringcast(key)); |
48d4ee626868
rm databinding.observable seems to be duplicate, databinding.beans now building
Frank Benoit <benoit@tionex.de>
parents:
27
diff
changeset
|
76 } |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
77 Object remove(Object key){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
78 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
79 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
80 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
81 int size(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
82 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
83 return 0; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
84 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
85 String toString(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
86 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
87 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
88 } |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
89 Collection values(){ |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
90 implMissing( __FILE__, __LINE__ ); |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
91 return null; |
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
92 } |
99
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
93 public int opApply (int delegate(ref Object value) dg){ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
94 foreach( entry; entrySet() ){ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
95 auto me = cast(Map.Entry)entry; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
96 auto v = me.getValue(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
97 int res = dg( v ); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
98 if( res ) return res; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
99 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
100 return 0; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
101 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
102 public int opApply (int delegate(ref Object key, ref Object value) dg){ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
103 foreach( entry; entrySet() ){ |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
104 auto me = cast(Map.Entry)entry; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
105 auto k = me.getKey(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
106 auto v = me.getValue(); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
107 int res = dg( k, v ); |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
108 if( res ) return res; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
109 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
110 return 0; |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
111 } |
5d5bd660917f
build some databind snippets
Frank Benoit <benoit@tionex.de>
parents:
98
diff
changeset
|
112 } |
10
eb8ff453285d
Added java.util collection classes.
Frank Benoit <benoit@tionex.de>
parents:
diff
changeset
|
113 |