pub struct Jsonb { /* private fields */ }
Expand description
An owned JSON value backed by a Row
.
Similar to serde_json::Value
, but the conversion to Row
is free.
All numbers are represented as f64
s. It is not possible to construct a
Jsonb
from a JSON object that contains integers that cannot be represented
exactly as f64
s.
Implementations§
source§impl Jsonb
impl Jsonb
sourcepub fn from_serde_json(val: Value) -> Result<Self, Error>
pub fn from_serde_json(val: Value) -> Result<Self, Error>
Constructs a new Jsonb
from a serde_json::Value
.
Errors if any of the contained integers cannot be represented exactly as
an f64
.
sourcepub fn from_slice(buf: &[u8]) -> Result<Jsonb, Error>
pub fn from_slice(buf: &[u8]) -> Result<Jsonb, Error>
Parses a Jsonb
from a byte slice buf
.
Errors if the slice is not valid JSON or if any of the contained
integers cannot be represented exactly as an f64
.
sourcepub fn as_ref(&self) -> JsonbRef<'_>
pub fn as_ref(&self) -> JsonbRef<'_>
Constructs a JsonbRef
that references the JSON in this Jsonb
.
Trait Implementations§
source§impl AsColumnType for Jsonb
impl AsColumnType for Jsonb
source§fn as_column_type() -> ColumnType
fn as_column_type() -> ColumnType
The SQL column type of this Rust type
source§impl DatumToPersist for Jsonb
impl DatumToPersist for Jsonb
§type Data = <ProtoDatumToPersist as DatumToPersist>::Data
type Data = <ProtoDatumToPersist as DatumToPersist>::Data
The persist columnar type we’re mapping to/from.
§type Cfg = ()
type Cfg = ()
Any information, in addition to the type of
Self::Data
, that is
necessary to derive the columnar schema of this type. E.g. for
ScalarType::Record, this will be the schema of the record.const CFG: Self::Cfg = ()
source§fn encode(col: &mut <Self::Data as Data>::Mut, datum: Datum<'_>)
fn encode(col: &mut <Self::Data as Data>::Mut, datum: Datum<'_>)
Encodes and pushes the given Datum into the persist column. Read more
source§impl<'a, E> DatumType<'a, E> for Jsonb
impl<'a, E> DatumType<'a, E> for Jsonb
source§impl Ord for Jsonb
impl Ord for Jsonb
source§impl PartialEq for Jsonb
impl PartialEq for Jsonb
source§impl PartialOrd for Jsonb
impl PartialOrd for Jsonb
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for
self
and other
) and is used by the <=
operator. Read moreimpl Eq for Jsonb
impl StructuralPartialEq for Jsonb
Auto Trait Implementations§
impl RefUnwindSafe for Jsonb
impl Send for Jsonb
impl Sync for Jsonb
impl Unpin for Jsonb
impl UnwindSafe for Jsonb
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
source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
source§impl<R, O, T> CopyOnto<ConsecutiveOffsetPairs<R, O>> for T
impl<R, O, T> CopyOnto<ConsecutiveOffsetPairs<R, O>> for T
source§fn copy_onto(
self,
target: &mut ConsecutiveOffsetPairs<R, O>
) -> <ConsecutiveOffsetPairs<R, O> as Region>::Index
fn copy_onto( self, target: &mut ConsecutiveOffsetPairs<R, O> ) -> <ConsecutiveOffsetPairs<R, O> as Region>::Index
Copy self into the target container, returning an index that allows to
look up the corresponding read item.
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.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
source§impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
impl<T, U> OverrideFrom<Option<&T>> for Uwhere
U: OverrideFrom<T>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> PreferredContainer for T
impl<T> PreferredContainer for T
source§impl<T> ProgressEventTimestamp for T
impl<T> ProgressEventTimestamp for T
source§impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
impl<P, R> ProtoType<R> for Pwhere
R: RustType<P>,
source§fn into_rust(self) -> Result<R, TryFromProtoError>
fn into_rust(self) -> Result<R, TryFromProtoError>
See
RustType::from_proto
.source§fn from_rust(rust: &R) -> P
fn from_rust(rust: &R) -> P
See
RustType::into_proto
.