package net.minecraft.commands.execution; import javax.annotation.Nullable; import net.minecraft.commands.ExecutionCommandSource; public interface ExecutionControl { void queueNext(EntryAction p_309475_); void tracer(@Nullable TraceCallbacks p_309557_); @Nullable TraceCallbacks tracer(); Frame currentFrame(); static > ExecutionControl create(final ExecutionContext p_310088_, final Frame p_312154_) { return new ExecutionControl() { @Override public void queueNext(EntryAction p_311389_) { p_310088_.queueNext(new CommandQueueEntry<>(p_312154_, p_311389_)); } @Override public void tracer(@Nullable TraceCallbacks p_313185_) { p_310088_.tracer(p_313185_); } @Nullable @Override public TraceCallbacks tracer() { return p_310088_.tracer(); } @Override public Frame currentFrame() { return p_312154_; } }; } }