sqlx_core/mssql/protocol/
sql_batch.rs

1use crate::io::Encode;
2use crate::mssql::io::MssqlBufMutExt;
3use crate::mssql::protocol::header::{AllHeaders, Header};
4
5#[derive(Debug)]
6pub(crate) struct SqlBatch<'a> {
7    pub(crate) transaction_descriptor: u64,
8    pub(crate) sql: &'a str,
9}
10
11impl Encode<'_> for SqlBatch<'_> {
12    fn encode_with(&self, buf: &mut Vec<u8>, _: ()) {
13        AllHeaders(&[Header::TransactionDescriptor {
14            outstanding_request_count: 1,
15            transaction_descriptor: self.transaction_descriptor,
16        }])
17        .encode(buf);
18
19        // SQLText
20        buf.put_utf16_str(self.sql);
21    }
22}