001package Torello.HTML.NodeSearch;
002
003import java.util.Vector;
004import java.util.regex.Pattern;
005import java.util.function.Predicate;
006
007import Torello.HTML.*;
008import Torello.HTML.NodeSearch.searchLoops.ITGetIncl;
009import Torello.Java.LV;
010
011/**
012 * Searches for {@link TagNode} matches using exactly the same criteria offered by class
013 * {@link InnerTagGet}, but also retrieves the corresponding Closing-Tag from the {@code Vector},
014 * and return a new HTML-{@code Vector} containing this sublist.
015 * 
016 * <EMBED CLASS="external-html" DATA-FILE-ID=InnerTagGetInclusive> 
017 */
018@Torello.HTML.Tools.JavaDoc.JDHeaderBackgroundImg
019@Torello.HTML.Tools.JavaDoc.StaticFunctional
020public class InnerTagGetInclusive
021{
022    private InnerTagGetInclusive() { }
023
024    // ********************************************************************************************
025    // GET-FIRST METHODS
026    // ********************************************************************************************
027
028    // **** Get-First, CRITERIA: htmlTag, sPos, ePos
029    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag)
030    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
031
032    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
033    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
034
035    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Pattern p)
036    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
037
038    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
039    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
040
041    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p, String... htmlTags)
042    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), p, ARGCHECK.htmlTags(htmlTags)); }
043
044
045    // **** Get-First, CRITERIA: htmlTag
046    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String htmlTag, String innerTag)
047    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
048
049    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
050    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
051
052    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Pattern p)
053    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
054
055    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
056    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
057
058    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, Predicate<TagNode> p, String... htmlTags)
059    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), p, ARGCHECK.htmlTags(htmlTags)); }
060
061
062    // **** Get-First, CRITERIA: sPos, ePos
063    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag)
064    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
065
066    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, TextComparitor tc, String... compareStr)
067    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
068
069    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Pattern p)
070    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
071
072    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Predicate<String> attributeValuePred)
073    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
074
075    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p)
076    { return ITGetIncl.NTH(html, 1, new LV(html, sPos, ePos), p); }
077
078
079    // **** Get-First, ALL-CRITERIA-NULL
080    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String innerTag)
081    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
082
083    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String innerTag, TextComparitor tc, String... compareStr)
084    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
085
086    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String innerTag, Pattern p)
087    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
088
089    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, String innerTag, Predicate<String> attributeValuePred)
090    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
091
092    public static Vector<HTMLNode> first(Vector<? extends HTMLNode> html, Predicate<TagNode> p)
093    { return ITGetIncl.NTH(html, 1, new LV(html, 0, -1), p); }
094
095    // ********************************************************************************************
096    // GET-NTH METHODS
097    // ********************************************************************************************
098
099    // **** Get-Nth, CRITERIA: htmlTag, sPos, ePos
100    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag)
101    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
102
103    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
104    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
105
106    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, Pattern p)
107    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
108
109    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
110    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
111
112    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<TagNode> p, String... htmlTags)
113    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), p, ARGCHECK.htmlTags(htmlTags)); }
114
115
116    // **** Get-Nth, CRITERIA: htmlTag
117    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag)
118    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
119
120    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
121    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
122
123    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, Pattern p)
124    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
125
126    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
127    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
128
129    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, Predicate<TagNode> p, String... htmlTags)
130    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), p, ARGCHECK.htmlTags(htmlTags)); }
131
132
133    // **** Get-Nth, CRITERIA: sPos, ePos
134    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag)
135    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
136
137    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, TextComparitor tc, String... compareStr)
138    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
139
140    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, Pattern p)
141    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
142
143    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, Predicate<String> attributeValuePred)
144    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
145
146    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<TagNode> p)
147    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), p); }
148
149
150    // **** Get-Nth, ALL-CRITERIA-NULL
151    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String innerTag)
152    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
153
154    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String innerTag, TextComparitor tc, String... compareStr)
155    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
156
157    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String innerTag, Pattern p)
158    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
159
160    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, String innerTag, Predicate<String> attributeValuePred)
161    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
162
163    public static Vector<HTMLNode> nth(Vector<? extends HTMLNode> html, int nth, Predicate<TagNode> p)
164    { return ITGetIncl.NTH(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), p); }
165
166    // ********************************************************************************************
167    // GET-LAST METHODS
168    // ********************************************************************************************
169
170    // **** Get-Last, CRITERIA: htmlTag, sPos, ePos
171    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag)
172    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
173
174    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
175    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
176
177    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Pattern p)
178    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
179
180    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
181    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
182
183    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p, String... htmlTags)
184    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), p, ARGCHECK.htmlTags(htmlTags)); }
185
186
187    // **** Get-Last, CRITERIA: htmlTag
188    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String htmlTag, String innerTag)
189    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
190
191    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
192    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
193
194    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Pattern p)
195    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
196
197    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
198    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
199
200    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, Predicate<TagNode> p, String... htmlTags)
201    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), p, ARGCHECK.htmlTags(htmlTags)); }
202
203
204    // **** Get-Last, CRITERIA: sPos, ePos
205    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag)
206    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
207
208    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, TextComparitor tc, String... compareStr)
209    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
210
211    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Pattern p)
212    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
213
214    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Predicate<String> attributeValuePred)
215    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
216
217    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p)
218    { return ITGetIncl.NTHFE(html, 1, new LV(html, sPos, ePos), p); }
219
220
221    // **** Get-Last, ALL-CRITERIA-NULL
222    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String innerTag)
223    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
224
225    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String innerTag, TextComparitor tc, String... compareStr)
226    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
227
228    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String innerTag, Pattern p)
229    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
230
231    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, String innerTag, Predicate<String> attributeValuePred)
232    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }    
233
234    public static Vector<HTMLNode> last(Vector<? extends HTMLNode> html, Predicate<TagNode> p)
235    { return ITGetIncl.NTHFE(html, 1, new LV(html, 0, -1), p); }    
236
237    // ********************************************************************************************
238    // GET-NTH-FROM-END METHODS
239    // ********************************************************************************************
240
241    // **** Get-Nth-From-End, CRITERIA: htmlTag, sPos, ePos
242    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag)
243    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
244
245    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
246    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
247
248    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, Pattern p)
249    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
250
251    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
252    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
253
254    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<TagNode> p, String... htmlTags)
255    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), p, ARGCHECK.htmlTags(htmlTags)); }
256
257
258    // **** Get-Nth-From-End, CRITERIA: htmlTag
259    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag)
260    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
261
262    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
263    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
264
265    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, Pattern p)
266    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
267
268    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
269    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
270
271    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, Predicate<TagNode> p, String... htmlTags)
272    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), p, ARGCHECK.htmlTags(htmlTags)); }
273
274
275    // **** Get-Nth-From-End, CRITERIA: sPos, ePos
276    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag)
277    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
278
279    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, TextComparitor tc, String... compareStr)
280    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
281
282    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, Pattern p)
283    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
284
285    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, String innerTag, Predicate<String> attributeValuePred)
286    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
287
288    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, int sPos, int ePos, Predicate<TagNode> p)
289    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, sPos, ePos), p); }
290
291
292    // **** Get-Nth-From-End, ALL-CRITERIA-NULL
293    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String innerTag)
294    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
295
296    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String innerTag, TextComparitor tc, String... compareStr)
297    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
298
299    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String innerTag, Pattern p)
300    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
301
302    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, String innerTag, Predicate<String> attributeValuePred)
303    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }    
304
305    public static Vector<HTMLNode> nthFromEnd(Vector<? extends HTMLNode> html, int nth, Predicate<TagNode> p)
306    { return ITGetIncl.NTHFE(html, ARGCHECK.n(nth, html), new LV(html, 0, -1), p); }    
307
308
309    // ********************************************************************************************
310    // GET-ALL METHODS
311    // ********************************************************************************************
312
313    // **** Get-All, CRITERIA: htmlTag, sPos, ePos
314    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag)
315    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
316
317    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
318    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
319
320    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Pattern p)
321    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
322
323    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
324    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
325
326    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p, String... htmlTags)
327    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), p, ARGCHECK.htmlTags(htmlTags)); }
328
329
330    // **** Get-All, CRITERIA: htmlTag
331    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String htmlTag, String innerTag)
332    { return ITGetIncl.ALL(html, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
333
334    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, TextComparitor tc, String... compareStr)
335    { return ITGetIncl.ALL(html, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
336
337    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Pattern p)
338    { return ITGetIncl.ALL(html, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
339
340    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String htmlTag, String innerTag, Predicate<String> attributeValuePred)
341    { return ITGetIncl.ALL(html, new LV(html, 0, -1), ARGCHECK.htmlTag(htmlTag), ARGCHECK.innerTag(innerTag), attributeValuePred); }
342
343    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, Predicate<TagNode> p, String... htmlTags)
344    { return ITGetIncl.ALL(html, new LV(html, 0, -1), p, ARGCHECK.htmlTags(htmlTags)); }
345
346
347    // **** Get-All, CRITERIA: sPos, ePos
348    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag)
349    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
350
351    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, TextComparitor tc, String... compareStr)
352    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
353
354    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Pattern p)
355    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
356
357    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, String innerTag, Predicate<String> attributeValuePred)
358    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
359
360    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, int sPos, int ePos, Predicate<TagNode> p)
361    { return ITGetIncl.ALL(html, new LV(html, sPos, ePos), p); }
362
363
364    // **** Get-All, ALL-CRITERIA-NULL
365    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String innerTag)
366    { return ITGetIncl.ALL(html, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TRUE); }
367
368    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String innerTag, TextComparitor tc, String... compareStr)
369    { return ITGetIncl.ALL(html, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.TC(tc, compareStr)); }
370
371    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String innerTag, Pattern p)
372    { return ITGetIncl.ALL(html, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), ARGCHECK.REGEX(p)); }
373
374    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, String innerTag, Predicate<String> attributeValuePred)
375    { return ITGetIncl.ALL(html, new LV(html, 0, -1), null, ARGCHECK.innerTag(innerTag), attributeValuePred); }
376
377    public static Vector<Vector<HTMLNode>> all(Vector<? extends HTMLNode> html, Predicate<TagNode> p)
378    { return ITGetIncl.ALL(html, new LV(html, 0, -1), p); }
379}