isPush
Checks if this input channel uses push semantics.
Uses a smart cast contract so type checkers understand the type after this check.
Return
true if this is a push channel, false if it is a pull channel
Checks if this output channel uses push semantics.
Uses a smart cast contract so type checkers understand the type after this check.
Return
true if this is a push channel, false if it is a pull channel