1 | public Iterator<Object> iterator(EStructuralFeature feature)↵ | | 1 | public Iterator<Object> iterator(EStructuralFeature feature)↵
|
2 | {↵ | | 2 | {↵
|
3 | return ↵ | | 3 | return ↵
|
4 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵ | | 4 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵
|
5 | new ResolvingFeatureEIterator<Object>(feature, this) :↵ | | 5 | new ResolvingFeatureEIterator<Object>(feature, this) :↵
|
6 | new FeatureEIterator<Object>(feature, this);↵ | | 6 | new FeatureEIterator<Object>(feature, this);↵
|
7 | }↵ | | 7 | }↵
|
|
8 | public ListIterator<Object> listIterator(EStructuralFeature feature)↵ | | 8 | public ListIterator<Object> listIterator(EStructuralFeature feature)↵
|
9 | {↵ | | 9 | {↵
|
10 | return ↵ | | 10 | return ↵
|
11 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵ | | 11 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵
|
12 | new ResolvingFeatureEIterator<Object>(feature, this) :↵ | | 12 | new ResolvingFeatureEIterator<Object>(feature, this) :↵
|
13 | new FeatureEIterator<Object>(feature, this);↵ | | 13 | new FeatureEIterator<Object>(feature, this);↵
|
14 | }↵ | | 14 | }↵
|
|
15 | public ListIterator<Object> listIterator(EStructuralFeature feature, int index)↵ | | 15 | public ListIterator<Object> listIterator(EStructuralFeature feature, int index)↵
|
16 | {↵ | | 16 | {↵
|
17 | ListIterator<Object> result =↵ | | 17 | ListIterator<Object> result =↵
|
18 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵ | | 18 | feature instanceof EReference && ((EReference)feature).isResolveProxies() ?↵
|
19 | new ResolvingFeatureEIterator<Object>(feature, this) :↵ | | 19 | new ResolvingFeatureEIterator<Object>(feature, this) :↵
|
20 | new FeatureEIterator<Object>(feature, this);↵ | | 20 | new FeatureEIterator<Object>(feature, this);↵
|
21 | for (int i = 0; i < index; ++i)↵ | | 21 | for (int i = 0; i < index; ++i)↵
|
22 | {↵ | | 22 | {↵
|
23 | result.next();↵ | | 23 | result.next();↵
|
24 | }↵ | | 24 | }↵
|
25 | return result;↵ | | 25 | return result;↵
|
26 | }↵ | | 26 | }↵
|
|
27 | public ValueListIterator<Object> valueListIterator()↵ | | 27 | public ValueListIterator<Object> valueListIterator()↵
|
28 | {↵ | | 28 | {↵
|
29 | return new ValueListIteratorImpl<Object>();↵ | | 29 | return new ValueListIteratorImpl<Object>();↵
|
30 | }↵ | | 30 | }↵
|
31 | ↵ | | 31 | ↵
|
32 | public ValueListIterator<Object> valueListIterator(int index)↵ | | 32 | public ValueListIterator<Object> valueListIterator(int index)↵
|
33 | {↵ | | 33 | {↵
|
34 | return new ValueListIteratorImpl<Object>(index);↵ | | 34 | return new ValueListIteratorImpl<Object>(index);↵
|
35 | }↵ | | 35 | }↵
|
36 | ↵ | | 36 | ↵
|
37 | protected class ValueListIteratorImpl<E1> extends EListIterator<E1> implements ValueListIterator<E1>↵ | | 37 | protected class ValueListIteratorImpl<E> extends EListIterator<E> implements ValueListIterator<E>↵
|
38 | {↵ | | 38 | {↵
|
39 | public ValueListIteratorImpl()↵ | | 39 | public ValueListIteratorImpl()↵
|
40 | {↵ | | 40 | {↵
|
41 | super();↵ | | 41 | super();↵
|
42 | }↵ | | 42 | }↵
|
43 | ↵ | | 43 | ↵
|
44 | public ValueListIteratorImpl(int index)↵ | | 44 | public ValueListIteratorImpl(int index)↵
|
45 | {↵ | | 45 | {↵
|
46 | super(index);↵ | | 46 | super(index);↵
|
47 | }↵ | | 47 | }↵
|
48 | ↵ | | 48 | ↵
|
49 | public EStructuralFeature feature()↵ | | 49 | public EStructuralFeature feature()↵
|
50 | {↵ | | 50 | {↵
|
51 | if (lastCursor == -1)↵ | | 51 | if (lastCursor == -1)↵
|
52 | {↵ | | 52 | {↵
|
53 | throw new IllegalStateException();↵ | | 53 | throw new IllegalStateException();↵
|
54 | }↵ | | 54 | }↵
|
55 | return getEStructuralFeature(lastCursor);↵ | | 55 | return getEStructuralFeature(lastCursor);↵
|
56 | }↵ | | 56 | }↵
|
57 | ↵ | | 57 | ↵
|
58 | @SuppressWarnings("unchecked")↵ | | 58 | @SuppressWarnings("unchecked")↵
|
59 | @Override↵ | | 59 | @Override↵
|
60 | public E1 next()↵ | | 60 | public E next()↵
|
61 | {↵ | | 61 | {↵
|
62 | return (E1)doNext().getValue();↵ | | 62 | return (E)doNext().getValue();↵
|
63 | }↵ | | 63 | }↵
|
64 | ↵ | | 64 | ↵
|
65 | @SuppressWarnings("unchecked")↵ | | 65 | @SuppressWarnings("unchecked")↵
|
66 | @Override↵ | | 66 | @Override↵
|
67 | public E1 previous()↵ | | 67 | public E previous()↵
|
68 | {↵ | | 68 | {↵
|
69 | return (E1)doPrevious().getValue();↵ | | 69 | return (E)doPrevious().getValue();↵
|
70 | }↵ | | 70 | }↵
|
|
71 | @Override↵ | | 71 | @Override↵
|
72 | public void add(E1 value)↵ | | 72 | public void add(E value)↵
|
73 | {↵ | | 73 | {↵
|
74 | doAdd(FeatureMapUtil.createEntry(feature(), value));↵ | | 74 | doAdd(FeatureMapUtil.createEntry(feature(), value));↵
|
75 | }↵ | | 75 | }↵
|
76 | ↵ | | 76 | ↵
|
77 | public void add(EStructuralFeature eStructuralFeature, Object value)↵ | | 77 | public void add(EStructuralFeature eStructuralFeature, Object value)↵
|
78 | {↵ | | 78 | {↵
|
79 | doAdd(FeatureMapUtil.createEntry(eStructuralFeature, value));↵ | | 79 | doAdd(FeatureMapUtil.createEntry(eStructuralFeature, value));↵
|
80 | }↵ | | 80 | }↵
|
81 | }↵ | | 81 | }↵
|
82 | ↵ | | |
|
83 | /*↵ | | 82 | /*↵
|
84 | public List subList(EStructuralFeature feature, int from, int to)↵ | | 83 | public List subList(EStructuralFeature feature, int from, int to)↵
|
85 | {↵ | | 84 | {↵
|
86 | return null;↵ | | 85 | return null;↵
|
87 | }↵ | | 86 | }↵
|
88 | */↵ | | 87 | */↵
|
|
89 | @SuppressWarnings("unchecked")↵ | | 88 | @SuppressWarnings("unchecked")↵
|
90 | public <T> EList<T> list(EStructuralFeature feature)↵ | | 89 | public <T> EList<T> list(EStructuralFeature feature)↵
|
91 | {↵ | | 90 | {↵
|
92 | return ↵ | | 91 | return↵
|
93 | FeatureMapUtil.isFeatureMap(feature) ? ↵ | | 92 | FeatureMapUtil.isFeatureMap(feature) ?↵
|
94 | (EList<T>)new FeatureMapUtil.FeatureFeatureMap(feature, this):↵ | | 93 | (EList<T>)new FeatureMapUtil.FeatureFeatureMap(feature, this) :↵
|
95 | new FeatureMapUtil.FeatureEList<T>(feature, this);↵ | | 94 | new FeatureMapUtil.FeatureEList<T>(feature, this);↵
|
96 | }↵ | | 95 | }↵
|
|
97 | public EStructuralFeature.Setting setting(EStructuralFeature feature)↵ | | 96 | public EStructuralFeature.Setting setting(EStructuralFeature feature)↵
|
98 | {↵ | | 97 | {↵
|
99 | return ↵ | | 98 | return ↵
|
100 | isMany(feature) ?↵ | | 99 | isMany(feature) ?↵
|
101 | (EStructuralFeature.Setting)list(feature) :↵ | | 100 | (EStructuralFeature.Setting)list(feature) :↵
|
102 | (EStructuralFeature.Setting)new FeatureMapUtil.FeatureValue(feature, this);↵ | | 101 | (EStructuralFeature.Setting)new FeatureMapUtil.FeatureValue(feature, this);↵
|
103 | }↵ | | 102 | }↵
|
|
104 | public List<Object> basicList(final EStructuralFeature feature)↵ | | 103 | public List<Object> basicList(EStructuralFeature feature)↵
|
105 | {↵ | | 104 | {↵
|
106 | return new FeatureMapUtil.FeatureEList.Basic<Object>(feature, this);↵ | | 105 | return new FeatureMapUtil.FeatureEList.Basic<Object>(feature, this);↵
|
107 | }↵ | | 106 | }↵
|
|
108 | public Iterator<Object> basicIterator(EStructuralFeature feature)↵ | | 107 | public Iterator<Object> basicIterator(EStructuralFeature feature)↵
|
109 | {↵ | | 108 | {↵
|
110 | return new FeatureEIterator<Object>(feature, this);↵ | | 109 | return new FeatureEIterator<Object>(feature, this);↵
|
111 | }↵ | | 110 | }↵
|
|
112 | public ListIterator<Object> basicListIterator(EStructuralFeature feature)↵ | | 111 | public ListIterator<Object> basicListIterator(EStructuralFeature feature)↵
|
113 | {↵ | | 112 | {↵
|
114 | return new FeatureEIterator<Object>(feature, this);↵ | | 113 | return new FeatureEIterator<Object>(feature, this);↵
|
115 | }↵ | | 114 | }↵
|
|
116 | public ListIterator<Object> basicListIterator(EStructuralFeature feature, int index)↵ | | 115 | public ListIterator<Object> basicListIterator(EStructuralFeature feature, int index)↵
|
117 | {↵ | | 116 | {↵
|
118 | ListIterator<Object> result = new FeatureEIterator<Object>(feature, this);↵ | | 117 | ListIterator<Object> result = new FeatureEIterator<Object>(feature, this);↵
|
119 | for (int i = 0; i < index; ++i)↵ | | 118 | for (int i = 0; i < index; ++i)↵
|
120 | {↵ | | 119 | {↵
|
121 | result.next();↵ | | 120 | result.next();↵
|
122 | }↵ | | 121 | }↵
|
123 | return result;↵ | | 122 | return result;↵
|
124 | }↵ | | 123 | }↵
|
|
125 | public Object[] toArray(EStructuralFeature feature)↵ | | 124 | public Object[] toArray(EStructuralFeature feature)↵
|
126 | {↵ | | 125 | {↵
|
127 | return toArray(feature, isResolveProxies(feature));↵ | | 126 | return toArray(feature, isResolveProxies(feature));↵
|
128 | }↵ | | 127 | }↵
|
|
129 | public Object[] basicToArray(EStructuralFeature feature)↵ | | 128 | public Object[] basicToArray(EStructuralFeature feature)↵
|
130 | {↵ | | 129 | {↵
|
131 | return toArray(feature, false); | | 130 | return toArray(feature, false);
|