Javolution 6.0.0 java
MappedCollectionImpl.java
Go to the documentation of this file.
1
/*
2
* Javolution - Java(TM) Solution for Real-Time and Embedded Systems
3
* Copyright (C) 2012 - Javolution (http://javolution.org/)
4
* All rights reserved.
5
*
6
* Permission to use, copy, modify, and distribute this software is
7
* freely granted, provided that this notice is preserved.
8
*/
9
package
javolution.util.internal.collection;
10
11
import
java.util.Iterator;
12
13
import
javolution
.
util
.
function
.
Equalities
;
14
import
javolution
.
util
.
function
.
Equality
;
15
import
javolution
.
util
.
function
.
Function
;
16
import
javolution
.
util
.
service
.
CollectionService
;
17
21
public
class
MappedCollectionImpl
<E, R>
extends
CollectionView
<R> {
22
24
private
class
IteratorImpl
implements
Iterator<R> {
25
private
final
Iterator<E>
targetIterator
;
26
27
@SuppressWarnings(
"unchecked"
)
28
public
IteratorImpl
() {
29
targetIterator
= (Iterator<E>)
target
().iterator();
30
}
31
32
@Override
33
public
boolean
hasNext
() {
34
return
targetIterator
.hasNext();
35
}
36
37
@Override
38
public
R
next
() {
39
return
function
.apply(
targetIterator
.next());
40
}
41
42
@Override
43
public
void
remove
() {
44
targetIterator
.remove();
45
}
46
47
}
48
49
private
static
final
long
serialVersionUID
= 0x600L;
// Version.
50
protected
final
Function<? super E, ? extends R>
function
;
51
52
@SuppressWarnings(
"unchecked"
)
53
public
MappedCollectionImpl
(
CollectionService
<E>
target
,
54
Function
<? super E, ? extends R>
function
) {
55
super((
CollectionService<R>
)
target
);
// Beware target is of type <E>
56
this.
function
=
function
;
57
}
58
59
@Override
60
public
boolean
add
(R element) {
61
throw
new
UnsupportedOperationException(
62
"New elements cannot be added to mapped views"
);
63
}
64
65
@Override
66
public
void
clear
() {
67
target
().clear();
68
}
69
70
@Override
71
public
Equality<? super R>
comparator
() {
72
return
Equalities
.
STANDARD
;
73
}
74
75
@Override
76
public
boolean
isEmpty
() {
77
return
target
().isEmpty();
78
}
79
80
@Override
81
public
Iterator<R>
iterator
() {
82
return
new
IteratorImpl();
83
}
84
85
@Override
86
public
int
size
() {
87
return
target
().size();
88
}
89
90
}
javolution.util.function.Equalities.STANDARD
static final Equality< Object > STANDARD
Definition:
Equalities.java:31
javolution
javolution.util.service
Definition:
BitSetService.java:9
javolution.util.internal.collection.CollectionView
Definition:
CollectionView.java:29
javolution.util.internal.collection.MappedCollectionImpl.function
final Function<? super E, ? extends R > function
Definition:
MappedCollectionImpl.java:50
javolution.util.internal.collection.MappedCollectionImpl
Definition:
MappedCollectionImpl.java:21
javolution.util.internal.collection.MappedCollectionImpl.isEmpty
boolean isEmpty()
Definition:
MappedCollectionImpl.java:76
javolution.util.internal.collection.MappedCollectionImpl.IteratorImpl
Definition:
MappedCollectionImpl.java:24
javolution.util.service.CollectionService
Definition:
CollectionService.java:25
javolution.util.internal.collection.MappedCollectionImpl.serialVersionUID
static final long serialVersionUID
Definition:
MappedCollectionImpl.java:49
javolution.util.internal.collection.MappedCollectionImpl.add
boolean add(R element)
Definition:
MappedCollectionImpl.java:60
javolution.util.internal.collection.MappedCollectionImpl.clear
void clear()
Definition:
MappedCollectionImpl.java:66
javolution.util.function.Equality
Definition:
Equality.java:39
javolution.util.function.Equalities
Definition:
Equalities.java:20
javolution.util.internal.collection.MappedCollectionImpl.IteratorImpl.targetIterator
final Iterator< E > targetIterator
Definition:
MappedCollectionImpl.java:25
javolution.util.internal.collection.CollectionView< R >::target
CollectionService< E > target
Definition:
CollectionView.java:33
javolution.util.internal.collection.MappedCollectionImpl.iterator
Iterator< R > iterator()
Definition:
MappedCollectionImpl.java:81
javolution.util.function
Definition:
Consumer.java:9
javolution.util.internal.collection.MappedCollectionImpl.IteratorImpl.hasNext
boolean hasNext()
Definition:
MappedCollectionImpl.java:33
javolution.util.internal.collection.MappedCollectionImpl.size
int size()
Definition:
MappedCollectionImpl.java:86
javolution.util.internal.collection.MappedCollectionImpl.IteratorImpl.next
R next()
Definition:
MappedCollectionImpl.java:38
javolution.util.function.Function
Definition:
Function.java:22
javolution.util.internal.collection.MappedCollectionImpl.comparator
Equality<? super R > comparator()
Definition:
MappedCollectionImpl.java:71
javolution.util
Definition:
FastBitSet.java:9
core-java
src
main
java
javolution
util
internal
collection
MappedCollectionImpl.java
Generated by
1.8.18