=begin pod

=TITLE class X::Proc::Async::CharsOrBytes

=SUBTITLE Error due to tapping the same L<Proc::Async> stream for both text and binary reading

    class X::Proc::Async::CharsOrBytes is Exception { ... }

A L<Proc::Async> object allows subscription to the output or error stream
either for bytes (L<Blob|/type/Blob>) or for text data (L<Str|/type/Str>), but
not for both. If you do try both, it throws an exception of type
C<X::Proc::Async::CharsOrBytes>.

    my $proc = Proc::Async.new('echo');
    $proc.stdout.tap(&print);
    $proc.stdout(:bin).tap(&print); # dies with
                                    # Can only tap one of chars or bytes supply for stdout

=head1 Methods

=head2 method handle

    method handle(X::Proc::Async::CharsOrBytes:D:) returns Str:D

Returns the name of the handle that was accessed both for text and for binary
data, C<stdout> or C<stderr>.

=end pod
