pub struct Out<'a, T>(pub &'a mut T);
Expand description
Use this to warp a mutable reference to an OutputParameter
. This will cause the argument to
be considered an output parameter only. Without this wrapper it would be considered an input
parameter. You can use InOut
if you want to indicate that the argument is an input and an
output parameter.
§Example
use odbc_api::{Environment, Out, InOut, Nullable, ConnectionOptions};
let env = Environment::new()?;
let mut conn = env.connect(
"YourDatabase", "SA", "My@Test@Password1",
ConnectionOptions::default(),
)?;
let mut ret = Nullable::<i32>::null();
let mut param = Nullable::new(7);
conn.execute(
"{? = call TestParam(?)}",
(Out(&mut ret), InOut(&mut param)))?;
Tuple Fields§
§0: &'a mut T
Trait Implementations§
Source§impl<'a, T> ParameterTupleElement for Out<'a, T>where
T: OutputParameter,
impl<'a, T> ParameterTupleElement for Out<'a, T>where
T: OutputParameter,
Mutable references wrapped in Out
are bound as output parameters.
Auto Trait Implementations§
impl<'a, T> Freeze for Out<'a, T>
impl<'a, T> RefUnwindSafe for Out<'a, T>where
T: RefUnwindSafe,
impl<'a, T> Send for Out<'a, T>where
T: Send,
impl<'a, T> Sync for Out<'a, T>where
T: Sync,
impl<'a, T> Unpin for Out<'a, T>
impl<'a, T> !UnwindSafe for Out<'a, T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more