예제 #1
0
func NewDecoder(rd io.Reader) *Decoder {
	brd, ok := rd.(bufReader)
	if !ok {
		brd = bufio.NewReader(rd)
	}
	return &Decoder{
		R:             brd,
		DecodeMapFunc: decodeMap,
	}
}
예제 #2
0
파일: pool.go 프로젝트: umisama/redis
func newConnFunc(dial func() (net.Conn, error)) func() (*conn, error) {
	return func() (*conn, error) {
		netcn, err := dial()
		if err != nil {
			return nil, err
		}

		cn := &conn{
			cn: netcn,
		}
		cn.rd = bufio.NewReader(cn)
		return cn, nil
	}
}
예제 #3
0
파일: conn.go 프로젝트: rsrsps/pg
func newConnFunc(opt *Options) func() (*conn, error) {
	return func() (*conn, error) {
		netcn, err := dial(opt)
		if err != nil {
			return nil, err
		}
		cn := &conn{
			opt: opt,
			cn:  netcn,
			buf: newBuffer(),
		}
		cn.br = bufio.NewReader(cn)
		if err := cn.Startup(); err != nil {
			return nil, err
		}
		return cn, nil
	}
}