package speiger.src.collections.example.functions; import java.util.Objects; import java.util.function.Consumer; public interface CONSUMER extends Consumer, JAVA_CONSUMER { void accept(KEY_TYPE t); default void accept(CLASS_TYPE t) { accept(OBJ_TO_KEY(t)); } @Override default CONSUMER andThen(Consumer after) { Objects.requireNonNull(after); return T -> {accept(T); after.accept(T);}; } default CONSUMER andThen(CONSUMER after) { Objects.requireNonNull(after); return T -> {accept(T); after.accept(T);}; } }