def _unpack_command(self, given_buffer):
        assert self._is_client_side is not None, "Ambiguous connection state"

        if not given_buffer:
            cmd_type = None
            cmd_args = None
            cmd_len = 0
        elif given_buffer[0] == NULL_CHAR:
            # We'll be expecting a response if we know we're a client side command
            is_response = bool(self._is_client_side)
            cmd_type, cmd_args, cmd_len = parse_binary_command(given_buffer, is_response=is_response)
        else:
            cmd_type, cmd_args, cmd_len = parse_text_command(given_buffer)

        if _DEBUG_MODE_ and cmd_type is not None:
            gearman_logger.debug('%s - Recv - %s - %r', hex(id(self)), get_command_name(cmd_type), cmd_args)

        return cmd_type, cmd_args, cmd_len
defer to subcommands.  If you don't want subcommands, override this
dataset/ETHPy150Open YelpArchive/python-gearman/gearman/connection.py/GearmanConnection._unpack_command--crossover with--dataset/ETHPy150Open mpdehaan/interfacer/lib/interfacer/base_module.py/BaseModule.run