misc (TokyoTyrant::RDB)

    # File tokyotyrant.rb, line 835
        def misc(name, args = [], opts = 0)
          name = _argstr(name)
          args = Array::new if !args.is_a?(Array)
          opts = _argnum(opts)
          if !@sock
            @ecode = EINVALID
            return nil
          end
          sbuf = [0xC8, 0x90, name.length, opts, args.size].pack("CCNNN")
          sbuf += name
          args.each do |arg|
            arg = _argstr(arg)
            sbuf += [arg.length].pack("N") + arg
          end
          if !_send(sbuf)
            @ecode = ESEND
            return nil
          end
          code = _recvcode
          rnum = _recvint32
          if code == -1
            @ecode = ERECV
            return nil
          end
          if code != 0
            @ecode = EMISC
            return nil
          end
          res = Array::new
          for i in 1..rnum
            esiz = _recvint32
            if esiz < 0
              @ecode = ERECV
              return nil
            end
            ebuf = _recv(esiz)
            if !ebuf
              @ecode = ERECV
              return nil
            end
            res.push(_retstr(ebuf))
          end
          return res
        end