servicetalk-concurrent-api/src/testFixtures/java/io/servicetalk/concurrent/api/CollectingCompletableSubscriber.java [49:90]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Nullable
    public TerminalNotification terminal() {
        return terminal;
    }

    @Nullable
    public TerminalNotification takeTerminal() {
        TerminalNotification terminal = this.terminal;
        this.terminal = null;
        return terminal;
    }

    @Nullable
    public Throwable error() {
        final TerminalNotification terminal = this.terminal;
        if (terminal == null) {
            return null;
        }
        return terminal == complete() ? null : terminal.cause();
    }

    @Nullable
    public Throwable takeError() {
        final Throwable error = error();
        this.terminal = null;
        return error;
    }

    public boolean isCompleted() {
        return terminal == complete();
    }

    public boolean isErrored() {
        final TerminalNotification terminal = this.terminal;
        return terminal != null && terminal != complete();
    }

    public boolean isTerminated() {
        return terminal != null;
    }

    @Override
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



servicetalk-concurrent-api/src/testFixtures/java/io/servicetalk/concurrent/api/CollectingPublisherSubscriber.java [56:97]:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    @Nullable
    public TerminalNotification terminal() {
        return terminal;
    }

    @Nullable
    public TerminalNotification takeTerminal() {
        TerminalNotification terminal = this.terminal;
        this.terminal = null;
        return terminal;
    }

    @Nullable
    public Throwable error() {
        final TerminalNotification terminal = this.terminal;
        if (terminal == null) {
            return null;
        }
        return terminal == complete() ? null : terminal.cause();
    }

    @Nullable
    public Throwable takeError() {
        final Throwable error = error();
        this.terminal = null;
        return error;
    }

    public boolean isCompleted() {
        return terminal == complete();
    }

    public boolean isErrored() {
        final TerminalNotification terminal = this.terminal;
        return terminal != null && terminal != complete();
    }

    public boolean isTerminated() {
        return terminal != null;
    }

    @Override
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -



