@@ -22,26 +22,6 @@ type Prepared struct {
2222 Conn * Connection
2323}
2424
25- func fillPrepare (enc * msgpack.Encoder , expr string ) error {
26- enc .EncodeMapLen (1 )
27- enc .EncodeUint (uint64 (iproto .IPROTO_SQL_TEXT ))
28- return enc .EncodeString (expr )
29- }
30-
31- func fillUnprepare (enc * msgpack.Encoder , stmt Prepared ) error {
32- enc .EncodeMapLen (1 )
33- enc .EncodeUint (uint64 (iproto .IPROTO_STMT_ID ))
34- return enc .EncodeUint (uint64 (stmt .StatementID ))
35- }
36-
37- func fillExecutePrepared (enc * msgpack.Encoder , stmt Prepared , args interface {}) error {
38- enc .EncodeMapLen (2 )
39- enc .EncodeUint (uint64 (iproto .IPROTO_STMT_ID ))
40- enc .EncodeUint (uint64 (stmt .StatementID ))
41- enc .EncodeUint (uint64 (iproto .IPROTO_SQL_BIND ))
42- return encodeSQLBind (enc , args )
43- }
44-
4525// NewPreparedFromResponse constructs a Prepared object.
4626func NewPreparedFromResponse (conn * Connection , resp Response ) (* Prepared , error ) {
4727 if resp == nil {
@@ -81,8 +61,16 @@ func NewPrepareRequest(expr string) *PrepareRequest {
8161}
8262
8363// Body fills an msgpack.Encoder with the execute request body.
84- func (req * PrepareRequest ) Body (res SchemaResolver , enc * msgpack.Encoder ) error {
85- return fillPrepare (enc , req .expr )
64+ func (req * PrepareRequest ) Body (_ SchemaResolver , enc * msgpack.Encoder ) error {
65+ if err := enc .EncodeMapLen (1 ); err != nil {
66+ return err
67+ }
68+
69+ if err := enc .EncodeUint (uint64 (iproto .IPROTO_SQL_TEXT )); err != nil {
70+ return err
71+ }
72+
73+ return enc .EncodeString (req .expr )
8674}
8775
8876// Context sets a passed context to the request.
@@ -126,8 +114,16 @@ func (req *UnprepareRequest) Conn() *Connection {
126114}
127115
128116// Body fills an msgpack.Encoder with the execute request body.
129- func (req * UnprepareRequest ) Body (res SchemaResolver , enc * msgpack.Encoder ) error {
130- return fillUnprepare (enc , * req .stmt )
117+ func (req * UnprepareRequest ) Body (_ SchemaResolver , enc * msgpack.Encoder ) error {
118+ if err := enc .EncodeMapLen (1 ); err != nil {
119+ return err
120+ }
121+
122+ if err := enc .EncodeUint (uint64 (iproto .IPROTO_STMT_ID )); err != nil {
123+ return err
124+ }
125+
126+ return enc .EncodeUint (uint64 (req .stmt .StatementID ))
131127}
132128
133129// Context sets a passed context to the request.
@@ -171,8 +167,24 @@ func (req *ExecutePreparedRequest) Args(args interface{}) *ExecutePreparedReques
171167}
172168
173169// Body fills an msgpack.Encoder with the execute request body.
174- func (req * ExecutePreparedRequest ) Body (res SchemaResolver , enc * msgpack.Encoder ) error {
175- return fillExecutePrepared (enc , * req .stmt , req .args )
170+ func (req * ExecutePreparedRequest ) Body (_ SchemaResolver , enc * msgpack.Encoder ) error {
171+ if err := enc .EncodeMapLen (2 ); err != nil {
172+ return err
173+ }
174+
175+ if err := enc .EncodeUint (uint64 (iproto .IPROTO_STMT_ID )); err != nil {
176+ return err
177+ }
178+
179+ if err := enc .EncodeUint (uint64 (req .stmt .StatementID )); err != nil {
180+ return err
181+ }
182+
183+ if err := enc .EncodeUint (uint64 (iproto .IPROTO_SQL_BIND )); err != nil {
184+ return err
185+ }
186+
187+ return encodeSQLBind (enc , req .args )
176188}
177189
178190// Context sets a passed context to the request.
0 commit comments