ensuringArgumentIsInputChannel

Same as ensuringArgumentIsChannel, additionally requiring the resolved channel to be an InputChannel, as required by predicates reading from a stream (e.g. get_char/2, read/2).

Throws

(stream_type, i.e. permission_error(input, stream, _)-like) if the channel resolves to an OutputChannel instead.