Not logged in.  Login/Logout/Register | List snippets | | Create snippet | Upload image | Upload data

50
LINES

< > BotCompany Repo | #1003524 // filter

JavaX fragment (include) [tags: use-pretranspiled]

Transpiled version (2188L) is out of date.

static <A> L<A> filter(Iterable<A> c, O pred) {
  if (pred instanceof F1) ret filter(c, (F1<A, Bool>) pred);

  ifdef filter_debug
    print("Slow filter called");
  endifdef
  new L x;
  if (c != null) for (O o : c)
    if (isTrue(callF(pred, o)))
      x.add(o);
  ret x;
}

static L filter(O pred, Iterable c) {
  ret filter(c, pred);
}

static <A, B extends A> L<B> filter(Iterable<B> c, F1<A, Bool> pred) {
  new L x;
  if (c != null) for (B o : c)
    if (pred.get(o))
      x.add(o);
  ret x;
}

static <A, B extends A> L<B> filter(F1<A, Bool> pred, Iterable<B> c) {
  ret filter(c, pred);
}

//ifclass IF1
static <A, B extends A> L<B> filter(Iterable<B> c, IF1<A, Bool> pred) {
  new L x;
  if (c != null) for (B o : c)
    if (pred.get(o))
      x.add(o);
  ret x;
}

static <A, B extends A> L<B> filter(B[] c, IF1<A, Bool> pred) {
  new L x;
  if (c != null) for (B o : c)
    if (pred.get(o))
      x.add(o);
  ret x;
}

static <A, B extends A> L<B> lambdaMapLike filter(IF1<A, Bool> pred, Iterable<B> c) {
  ret filter(c, pred);
}
//endif

download  show line numbers  debug dex  old transpilations   

Travelled to 19 computer(s): aoiabmzegqzx, bhatertpkbcr, cbybwowwnfue, cfunsshuasjs, ddnzoavkxhuk, dpqxeycirhfy, ekrmjmnbrukm, gwrvuhgaqvyk, ishqpsrjomds, lpdgvwnxivlt, mqqgnosmbjvj, pyentgdyhuwx, pzhvpgtvlbxg, qsqiayxyrbia, tslmcundralx, tvejysmllsmz, vouqrxazstgt, whxojlpjdney, xrpafgyirdlv

No comments. add comment

Snippet ID: #1003524
Snippet name: filter
Eternal ID of this version: #1003524/14
Text MD5: 6e1397387b45c2d0486067a06b4d39e6
Author: stefan
Category: javax
Type: JavaX fragment (include)
Public (visible to everyone): Yes
Archived (hidden from active list): No
Created/modified: 2020-06-16 01:47:27
Source code size: 1099 bytes / 50 lines
Pitched / IR pitched: No / No
Views / Downloads: 780 / 1016
Version history: 13 change(s)
Referenced in: #1004071 - rejectWhere
#1004349 - nfilter - count objects in collection that match a predicate
#1006654 - Standard functions list 2 (LIVE, continuation of #761)
#1015937 - filterOrNull
#1017203 - antiFilter - drop where predicate matches
#1018894 - filter_pcall - default to false
#1021399 - filterCISet
#1023844 - filterPairB - filter pairs according to predicate on b
#1025873 - filter_lambda
#1026679 - filterToLines
#1030040 - safeFilter