pub struct Context<'a> { /* private fields */ }
Expand description
feature = "functions"
Context is a wrapper for the SQLite function
evaluation context.
Implementations§
Source§impl Context<'_>
impl Context<'_>
Sourcepub fn get<T: FromSql>(&self, idx: usize) -> Result<T>
pub fn get<T: FromSql>(&self, idx: usize) -> Result<T>
Returns the idx
th argument as a T
.
§Failure
Will panic if idx
is greater than or equal to self.len()
.
Will return Err if the underlying SQLite type cannot be converted to a
T
.
Sourcepub fn get_raw(&self, idx: usize) -> ValueRef<'_>
pub fn get_raw(&self, idx: usize) -> ValueRef<'_>
Returns the idx
th argument as a ValueRef
.
§Failure
Will panic if idx
is greater than or equal to self.len()
.
Sourcepub fn get_or_create_aux<T, E, F>(&self, arg: c_int, func: F) -> Result<Arc<T>>
pub fn get_or_create_aux<T, E, F>(&self, arg: c_int, func: F) -> Result<Arc<T>>
Fetch or insert the auxilliary data associated with a particular
parameter. This is intended to be an easier-to-use way of fetching it
compared to calling get_aux
and set_aux
separately.
See https://www.sqlite.org/c3ref/get_auxdata.html
for a discussion of
this feature, or the unit tests of this module for an example.
Sourcepub fn set_aux<T: Send + Sync + 'static>(
&self,
arg: c_int,
value: T,
) -> Result<Arc<T>>
pub fn set_aux<T: Send + Sync + 'static>( &self, arg: c_int, value: T, ) -> Result<Arc<T>>
Sets the auxilliary data associated with a particular parameter. See
https://www.sqlite.org/c3ref/get_auxdata.html
for a discussion of
this feature, or the unit tests of this module for an example.
Sourcepub fn get_aux<T: Send + Sync + 'static>(
&self,
arg: c_int,
) -> Result<Option<Arc<T>>>
pub fn get_aux<T: Send + Sync + 'static>( &self, arg: c_int, ) -> Result<Option<Arc<T>>>
Gets the auxilliary data that was associated with a given parameter via
set_aux
. Returns Ok(None)
if no data has been associated, and
Ok(Some(v)) if it has. Returns an error if the requested type does not
match.
Sourcepub unsafe fn get_connection(&self) -> Result<ConnectionRef<'_>>
pub unsafe fn get_connection(&self) -> Result<ConnectionRef<'_>>
Get the db connection handle via sqlite3_context_db_handle
§Safety
This function is marked unsafe because there is a potential for other references to the connection to be sent across threads, see this comment.