X-Git-Url: https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=blobdiff_plain;f=bundles%2Forg.simantics.scl.runtime%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fruntime%2FLists.java;h=99c19d6b951cbe26c140d13b3ed8dcbc2aefbf06;hp=5259ce6315a38b5b9b1ab64f94ce452cb82930ca;hb=e65cd7676f6e843e34a8501afc57f56cbc8602d3;hpb=3d043320cdee8dda92758f4ea1c324a82c7d9094 diff --git a/bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/Lists.java b/bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/Lists.java index 5259ce631..99c19d6b9 100644 --- a/bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/Lists.java +++ b/bundles/org.simantics.scl.runtime/src/org/simantics/scl/runtime/Lists.java @@ -240,7 +240,19 @@ public class Lists { } }; } - + + public static Function indexSet(List l) { + THashSet set = new THashSet(l.size()); + for(Object obj : l) + set.add(obj); + return new FunctionImpl1() { + @Override + public Object apply(Object p0) { + return set.contains(p0); + } + }; + } + public static Function indexBy(Function f, List l) { THashMap map = new THashMap(l.size()); for(Object o : l)