Skip to content
This repository was archived by the owner on Nov 23, 2023. It is now read-only.

Commit dc94347

Browse files
authored
Merge pull request #30 from alexengrig/fix/20
Fixes #20
2 parents 0c3f3e5 + 01f7f54 commit dc94347

File tree

1 file changed

+203
-4
lines changed
  • src/main/java/io/github/alexengrig/lambdax/collection

1 file changed

+203
-4
lines changed

src/main/java/io/github/alexengrig/lambdax/collection/DequeX.java

+203-4
Original file line numberDiff line numberDiff line change
@@ -21,86 +21,285 @@
2121
import java.util.function.Predicate;
2222

2323
/**
24-
* This utility class contains useful lambdas for {@link Deque}
24+
* This utility class contains useful lambdas for {@link java.util.Deque}.
2525
*
2626
* @author Grig Alex
27-
* @see Deque
28-
* @see Consumer
29-
* @see Predicate
27+
* @version 0.1.1
28+
* @see java.util.Deque
29+
* @see java.util.function.Consumer
30+
* @see java.util.function.Predicate
3031
* @since 0.1.0
3132
*/
3233
public final class DequeX {
3334
private DequeX() {
3435
}
3536

37+
/**
38+
* <p>Returns the carrying of {@link java.util.Deque#contains(Object)}:
39+
* item -&gt; deque -&gt; deque.contains(item).</p>
40+
*
41+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#contains(Object)}
42+
* @param <E> a type of elements in a deque.
43+
* @return a {@link java.util.function.Predicate}.
44+
* @see java.util.Deque#contains(Object)
45+
* @see java.util.function.Predicate
46+
* @since 0.1.0
47+
*/
3648
public static <E> Predicate<Deque<? super E>> contains(E item) {
3749
return d -> d.contains(item);
3850
}
3951

52+
/**
53+
* <p>Returns the carrying of {@link java.util.Deque#add(Object)}:
54+
* item -&gt; deque -&gt; deque.add(item).</p>
55+
*
56+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#add(Object)}
57+
* @param <E> a type of elements in a deque.
58+
* @return a {@link java.util.function.Predicate}.
59+
* @see java.util.Deque#add(Object)
60+
* @see java.util.function.Predicate
61+
* @since 0.1.0
62+
*/
4063
public static <E> Predicate<Deque<? super E>> add(E item) {
4164
return d -> d.add(item);
4265
}
4366

67+
/**
68+
* <p>Returns the carrying of {@link java.util.Deque#add(Object)}:
69+
* item -&gt; deque -&gt; deque.add(item).</p>
70+
*
71+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#add(Object)}
72+
* @param <E> a type of elements in a deque.
73+
* @return a {@link java.util.function.Consumer}.
74+
* @see java.util.Deque#add(Object)
75+
* @see java.util.function.Consumer
76+
* @since 0.1.0
77+
*/
4478
public static <E> Consumer<Deque<? super E>> onlyAdd(E item) {
4579
return d -> d.add(item);
4680
}
4781

82+
/**
83+
* <p>Returns the carrying of {@link java.util.Deque#addFirst(Object)}:
84+
* item -&gt; deque -&gt; deque.addFirst(item).</p>
85+
*
86+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#addFirst(Object)}
87+
* @param <E> a type of elements in a deque.
88+
* @return a {@link java.util.function.Consumer}.
89+
* @see java.util.Deque#addFirst(Object)
90+
* @see java.util.function.Consumer
91+
* @since 0.1.0
92+
*/
4893
public static <E> Consumer<Deque<? super E>> addFirst(E item) {
4994
return d -> d.addFirst(item);
5095
}
5196

97+
/**
98+
* <p>Returns the carrying of {@link java.util.Deque#addLast(Object)}:
99+
* item -&gt; deque -&gt; deque.addLast(item).</p>
100+
*
101+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#addLast(Object)}
102+
* @param <E> a type of elements in a deque.
103+
* @return a {@link java.util.function.Consumer}.
104+
* @see java.util.Deque#addLast(Object)
105+
* @see java.util.function.Consumer
106+
* @since 0.1.0
107+
*/
52108
public static <E> Consumer<Deque<? super E>> addLast(E item) {
53109
return d -> d.addLast(item);
54110
}
55111

112+
/**
113+
* <p>Returns the carrying of {@link java.util.Deque#offer(Object)}:
114+
* item -&gt; deque -&gt; deque.offer(item).</p>
115+
*
116+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offer(Object)}
117+
* @param <E> a type of elements in a deque.
118+
* @return a {@link java.util.function.Predicate}.
119+
* @see java.util.Deque#offer(Object)
120+
* @see java.util.function.Predicate
121+
* @since 0.1.0
122+
*/
56123
public static <E> Predicate<Deque<? super E>> offer(E item) {
57124
return d -> d.offer(item);
58125
}
59126

127+
/**
128+
* <p>Returns the carrying of {@link java.util.Deque#offer(Object)}:
129+
* item -&gt; deque -&gt; deque.offer(item).</p>
130+
*
131+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offer(Object)}
132+
* @param <E> a type of elements in a deque.
133+
* @return a {@link java.util.function.Consumer}.
134+
* @see java.util.Deque#offer(Object)
135+
* @see java.util.function.Consumer
136+
* @since 0.1.0
137+
*/
60138
public static <E> Consumer<Deque<? super E>> onlyOffer(E item) {
61139
return d -> d.offer(item);
62140
}
63141

142+
/**
143+
* <p>Returns the carrying of {@link java.util.Deque#offerFirst(Object)}:
144+
* item -&gt; deque -&gt; deque.offerFirst(item).</p>
145+
*
146+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offerFirst(Object)}
147+
* @param <E> a type of elements in a deque.
148+
* @return a {@link java.util.function.Predicate}.
149+
* @see java.util.Deque#offerFirst(Object)
150+
* @see java.util.function.Predicate
151+
* @since 0.1.0
152+
*/
64153
public static <E> Predicate<Deque<? super E>> offerFirst(E item) {
65154
return d -> d.offerFirst(item);
66155
}
67156

157+
/**
158+
* <p>Returns the carrying of {@link java.util.Deque#offerFirst(Object)}:
159+
* item -&gt; deque -&gt; deque.offerFirst(item).</p>
160+
*
161+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offerFirst(Object)}
162+
* @param <E> a type of elements in a deque.
163+
* @return a {@link java.util.function.Consumer}.
164+
* @see java.util.Deque#offerFirst(Object)
165+
* @see java.util.function.Consumer
166+
* @since 0.1.0
167+
*/
68168
public static <E> Consumer<Deque<? super E>> onlyOfferFirst(E item) {
69169
return d -> d.offerFirst(item);
70170
}
71171

172+
/**
173+
* <p>Returns the carrying of {@link java.util.Deque#offerLast(Object)}:
174+
* item -&gt; deque -&gt; deque.offerLast(item).</p>
175+
*
176+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offerLast(Object)}
177+
* @param <E> a type of elements in a deque.
178+
* @return a {@link java.util.function.Predicate}.
179+
* @see java.util.Deque#offerLast(Object)
180+
* @see java.util.function.Predicate
181+
* @since 0.1.0
182+
*/
72183
public static <E> Predicate<Deque<? super E>> offerLast(E item) {
73184
return d -> d.offerLast(item);
74185
}
75186

187+
/**
188+
* <p>Returns the carrying of {@link java.util.Deque#offerLast(Object)}:
189+
* item -&gt; deque -&gt; deque.offerLast(item).</p>
190+
*
191+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#offerLast(Object)}
192+
* @param <E> a type of elements in a deque.
193+
* @return a {@link java.util.function.Consumer}.
194+
* @see java.util.Deque#offerLast(Object)
195+
* @see java.util.function.Consumer
196+
* @since 0.1.0
197+
*/
76198
public static <E> Consumer<Deque<? super E>> onlyOfferLast(E item) {
77199
return d -> d.offerLast(item);
78200
}
79201

202+
/**
203+
* <p>Returns the carrying of {@link java.util.Deque#push(Object)}:
204+
* item -&gt; deque -&gt; deque.push(item).</p>
205+
*
206+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#push(Object)}
207+
* @param <E> a type of elements in a deque.
208+
* @return a {@link java.util.function.Consumer}.
209+
* @see java.util.Deque#push(Object)
210+
* @see java.util.function.Consumer
211+
* @since 0.1.0
212+
*/
80213
public static <E> Consumer<Deque<? super E>> push(E item) {
81214
return d -> d.push(item);
82215
}
83216

217+
/**
218+
* <p>Returns the carrying of {@link java.util.Deque#remove(Object)}:
219+
* item -&gt; deque -&gt; deque.remove(item).</p>
220+
*
221+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#remove(Object)}
222+
* @param <E> a type of elements in a deque.
223+
* @return a {@link java.util.function.Predicate}.
224+
* @see java.util.Deque#remove(Object)
225+
* @see java.util.function.Predicate
226+
* @since 0.1.0
227+
*/
84228
public static <E> Predicate<Deque<? super E>> remove(E item) {
85229
return d -> d.remove(item);
86230
}
87231

232+
/**
233+
* <p>Returns the carrying of {@link java.util.Deque#remove(Object)}:
234+
* item -&gt; deque -&gt; deque.remove(item).</p>
235+
*
236+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#remove(Object)}
237+
* @param <E> a type of elements in a deque.
238+
* @return a {@link java.util.function.Consumer}.
239+
* @see java.util.Deque#remove(Object)
240+
* @see java.util.function.Consumer
241+
* @since 0.1.0
242+
*/
88243
public static <E> Consumer<Deque<? super E>> onlyRemove(E item) {
89244
return d -> d.remove(item);
90245
}
91246

247+
/**
248+
* <p>Returns the carrying of {@link java.util.Deque#removeFirstOccurrence(Object)}:
249+
* item -&gt; deque -&gt; deque.removeFirstOccurrence(item).</p>
250+
*
251+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#removeFirstOccurrence(Object)}
252+
* @param <E> a type of elements in a deque.
253+
* @return a {@link java.util.function.Predicate}.
254+
* @see java.util.Deque#removeFirstOccurrence(Object)
255+
* @see java.util.function.Predicate
256+
* @since 0.1.0
257+
*/
92258
public static <E> Predicate<Deque<? super E>> removeFirstOccurrence(E item) {
93259
return d -> d.removeFirstOccurrence(item);
94260
}
95261

262+
/**
263+
* <p>Returns the carrying of {@link java.util.Deque#removeFirstOccurrence(Object)}:
264+
* item -&gt; deque -&gt; deque.removeFirstOccurrence(item).</p>
265+
*
266+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#removeFirstOccurrence(Object)}
267+
* @param <E> a type of elements in a deque.
268+
* @return a {@link java.util.function.Consumer}.
269+
* @see java.util.Deque#removeFirstOccurrence(Object)
270+
* @see java.util.function.Consumer
271+
* @since 0.1.0
272+
*/
96273
public static <E> Consumer<Deque<? super E>> onlyRemoveFirstOccurrence(E item) {
97274
return d -> d.removeFirstOccurrence(item);
98275
}
99276

277+
/**
278+
* <p>Returns the carrying of {@link java.util.Deque#removeLastOccurrence(Object)}:
279+
* item -&gt; deque -&gt; deque.removeLastOccurrence(item).</p>
280+
*
281+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#removeLastOccurrence(Object)}
282+
* @param <E> a type of elements in a deque.
283+
* @return a {@link java.util.function.Predicate}.
284+
* @see java.util.Deque#removeLastOccurrence(Object)
285+
* @see java.util.function.Predicate
286+
* @since 0.1.0
287+
*/
100288
public static <E> Predicate<Deque<? super E>> removeLastOccurrence(E item) {
101289
return d -> d.removeLastOccurrence(item);
102290
}
103291

292+
/**
293+
* <p>Returns the carrying of {@link java.util.Deque#removeLastOccurrence(Object)}:
294+
* item -&gt; deque -&gt; deque.removeLastOccurrence(item).</p>
295+
*
296+
* @param item an element of {@link E} that is passed as the argument to {@link java.util.Deque#removeLastOccurrence(Object)}
297+
* @param <E> a type of elements in a deque.
298+
* @return a {@link java.util.function.Consumer}.
299+
* @see java.util.Deque#removeLastOccurrence(Object)
300+
* @see java.util.function.Consumer
301+
* @since 0.1.0
302+
*/
104303
public static <E> Consumer<Deque<? super E>> onlyRemoveLastOccurrence(E item) {
105304
return d -> d.removeLastOccurrence(item);
106305
}

0 commit comments

Comments
 (0)