Skip to main content

Statement

Struct Statement 

Source
pub struct Statement<'a> { /* private fields */ }
Expand description

One statement out of a script, and where it started.

The text runs from the first token to the last, so it excludes the semicolon and any comment that sat before or after the statement, and it keeps a comment that sat inside one. That is the only split that lets the offset mean anything, and a comment between two tokens is something the parser skips anyway. The offset is kept so that a span coming back from the binder can be moved back into the coordinates of the whole script, which is what a shell needs in order to point at the right line.

Implementations§

Source§

impl<'a> Statement<'a>

Source

pub fn sql(&self) -> &'a str

The statement, without its terminator.

Source

pub fn offset(&self) -> usize

The byte offset of the statement in the script it came from.

Trait Implementations§

Source§

impl<'a> Clone for Statement<'a>

Source§

fn clone(&self) -> Statement<'a>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<'a> Copy for Statement<'a>

Source§

impl<'a> Debug for Statement<'a>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a> Eq for Statement<'a>

Source§

impl<'a> PartialEq for Statement<'a>

Source§

fn eq(&self, other: &Statement<'a>) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl<'a> StructuralPartialEq for Statement<'a>

Auto Trait Implementations§

§

impl<'a> Freeze for Statement<'a>

§

impl<'a> RefUnwindSafe for Statement<'a>

§

impl<'a> Send for Statement<'a>

§

impl<'a> Sync for Statement<'a>

§

impl<'a> Unpin for Statement<'a>

§

impl<'a> UnsafeUnpin for Statement<'a>

§

impl<'a> UnwindSafe for Statement<'a>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.