// 
// Decompiled by Procyon v0.6.0
// 

package it.unimi.dsi.fastutil.shorts;

import java.util.Objects;
import it.unimi.dsi.fastutil.SafeMath;
import java.util.function.IntConsumer;
import java.util.function.Consumer;

@FunctionalInterface
public interface ShortConsumer extends Consumer<Short>, IntConsumer
{
    void accept(final short p0);
    
    @Deprecated
    default void accept(final int t) {
        this.accept(SafeMath.safeIntToShort(t));
    }
    
    @Deprecated
    default void accept(final Short t) {
        this.accept((short)t);
    }
    
    default ShortConsumer andThen(final ShortConsumer after) {
        Objects.requireNonNull(after);
        return t -> {
            this.accept(t);
            after.accept(t);
        };
    }
    
    default ShortConsumer andThen(final IntConsumer after) {
        ShortConsumer after2;
        if (after instanceof ShortConsumer) {
            after2 = (ShortConsumer)after;
        }
        else {
            Objects.requireNonNull(after);
            after2 = after::accept;
        }
        return this.andThen(after2);
    }
    
    @Deprecated
    default Consumer<Short> andThen(final Consumer<? super Short> after) {
        return super.andThen(after);
    }
}
