async def dump_varint_t(writer, type_or, pv):
width = int_mark_to_size(type_or)<EOL>n = (pv << <NUM_LIT:2>) | type_or<EOL>buffer = _UINT_BUFFER<EOL>for _ in range(width):<EOL><INDENT>buffer[<NUM_LIT:0>] = n & <NUM_LIT><EOL>await writer.awrite(buffer)<EOL>n >>= <NUM_LIT:8><EOL><DEDENT>return width<EOL>
Binary dump of the integer of given type

:param writer:
:param type_or:
:param pv:
:return: