pub fn encode_call<T>(
    stream: &mut impl Write,
    function_name: &str,
    args: &T
) -> Result<(), Error>
where T: ToTupleBuffer + ?Sized,