package org.warp.commonutils.functional; import java.util.function.Function; public class Unchecked implements Function { private final UncheckedConsumer uncheckedConsumer; public Unchecked(UncheckedConsumer uncheckedConsumer) { this.uncheckedConsumer = uncheckedConsumer; } public static Unchecked wrap(UncheckedConsumer uncheckedConsumer) { return new Unchecked<>(uncheckedConsumer); } @Override public UncheckedResult apply(T t) { try { uncheckedConsumer.consume(t); return new UncheckedResult(); } catch (Exception e) { return new UncheckedResult(e); } } public interface UncheckedConsumer { public void consume(T value) throws Exception; } }