Struct tidb_query_datatype::expr::ctx::EvalContext [−][src]
Some global variables needed in an evaluation.
Fields
cfg: Arc<EvalConfig>
warnings: EvalWarnings
Implementations
impl EvalContext
[src][−]
pub fn new(cfg: Arc<EvalConfig>) -> EvalContext
[src]
pub fn handle_truncate(&mut self, is_truncated: bool) -> Result<()>
[src]
pub fn handle_truncate_err(&mut self, err: Error) -> Result<()>
[src]
pub fn handle_overflow_err(&mut self, err: Error) -> Result<()>
[src][−]
handle_overflow treats ErrOverflow as warnings or returns the error based on the cfg.handle_overflow state.
pub fn handle_division_by_zero(&mut self) -> Result<()>
[src]
pub fn handle_invalid_time_error(&mut self, err: Error) -> Result<()>
[src]
pub fn overflow_from_cast_str_as_int(
&mut self,
bytes: &[u8],
orig_err: Error,
negative: bool
) -> Result<i64>
[src]
&mut self,
bytes: &[u8],
orig_err: Error,
negative: bool
) -> Result<i64>
pub fn take_warnings(&mut self) -> EvalWarnings
[src]
pub fn should_clip_to_zero(&self) -> bool
[src][−]
Indicates whether values less than 0 should be clipped to 0 for unsigned
integer types. This is the case for insert
, update
, alter table
and
load data infile
statements, when not in strict SQL mode.
see https://dev.mysql.com/doc/refman/5.7/en/out-of-range-and-overflow.html
Trait Implementations
impl Debug for EvalContext
[src][+]
impl Default for EvalContext
[src][+]
Auto Trait Implementations
impl RefUnwindSafe for EvalContext
impl Send for EvalContext
impl Sync for EvalContext
impl Unpin for EvalContext
impl UnwindSafe for EvalContext
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src][+]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src][+]
T: ?Sized,
impl<V, W> ConvertFrom<W> for V where
W: ConvertTo<V>,
[src][+]
W: ConvertTo<V>,
impl<T> From<T> for T
[src][+]
impl<T> Instrument for T
[src][+]
impl<T, U> Into<U> for T where
U: From<T>,
[src][+]
U: From<T>,
impl<T> Pointable for T
[src][+]
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self
impl<T> Sealed<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> SendSyncUnwindSafe for T where
T: Send + Sync + UnwindSafe + ?Sized,
[src]
T: Send + Sync + UnwindSafe + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src][+]
U: Into<T>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src][+]
U: TryFrom<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
[src][+]
V: MultiLane<T>,