#[non_exhaustive]pub struct Range<T: RangeElement> {
pub start: Option<T>,
pub end: Option<T>,
}Expand description
Represents a BigQuery RANGE value.
§Example
use google_cloud_bigquery::client::BigQuery;
use google_cloud_bigquery::datatypes::Range;
use google_cloud_type::model::Date;
let client = BigQuery::builder()
.with_project_id("my-project-id")
.build()
.await?;
let mut rows = client
.query("SELECT RANGE(DATE '2024-01-01', DATE '2024-12-31') AS date_range")
.until_done()
.await?
.read();
if let Some(row) = rows.next().await.transpose()? {
let date_range: Range<Date> = row.get("date_range")?;
println!("Start: {:?}, End: {:?}", date_range.start, date_range.end);
}Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.start: Option<T>The inclusive start of the range (or None if unbounded).
end: Option<T>The exclusive end of the range (or None if unbounded).
Implementations§
Source§impl<T: RangeElement> Range<T>
impl<T: RangeElement> Range<T>
Sourcepub fn set_or_clear_start(self, v: Option<T>) -> Self
pub fn set_or_clear_start(self, v: Option<T>) -> Self
Sets or clears the value of start.
Sourcepub fn set_or_clear_end(self, v: Option<T>) -> Self
pub fn set_or_clear_end(self, v: Option<T>) -> Self
Sets or clears the value of end.
Trait Implementations§
Source§impl<T: RangeElement> Default for Range<T>
impl<T: RangeElement> Default for Range<T>
Source§impl<T: RangeElement> FromSql for Range<T>
impl<T: RangeElement> FromSql for Range<T>
Source§fn from_value(value: SqlValue) -> Result<Self, ConvertError>
fn from_value(value: SqlValue) -> Result<Self, ConvertError>
Converts a BigQuery
SqlValue into the implementing type.impl<T: PartialEq + RangeElement> StructuralPartialEq for Range<T>
Auto Trait Implementations§
impl<T> Freeze for Range<T>
impl<T> RefUnwindSafe for Range<T>where
Option<T>: RefUnwindSafe,
impl<T> Send for Range<T>
impl<T> Sync for Range<T>
impl<T> Unpin for Range<T>
impl<T> UnsafeUnpin for Range<T>where
Option<T>: UnsafeUnpin,
impl<T> UnwindSafe for Range<T>where
Option<T>: UnwindSafe,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
Source§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request