Skip to main content

Primitive

Trait Primitive 

Source
pub trait Primitive: Sized {
    // Required methods
    fn value_json(&self) -> Result<Option<Value>, EncodeError>;
    fn element_json(&self) -> Result<Option<Value>, EncodeError>;
    fn from_json_parts(
        value: Option<&Value>,
        element: Option<&Value>,
        path: &mut Path,
    ) -> Result<Self, DecodeError>;
    fn has_value(&self) -> bool;
    fn has_element(&self) -> bool;
    fn serialize_value<S: Serializer>(
        &self,
        serializer: S,
    ) -> Result<S::Ok, S::Error>;
    fn serialize_element<S: Serializer>(
        &self,
        serializer: S,
    ) -> Result<S::Ok, S::Error>;
}
Expand description

A FHIR primitive: a JSON value plus an optional element object.

Required Methods§

Source

fn value_json(&self) -> Result<Option<Value>, EncodeError>

The JSON value, None when only id or extension are present.

§Errors

Returns EncodeError when the held value has no JSON form.

Source

fn element_json(&self) -> Result<Option<Value>, EncodeError>

The _name object, None when the primitive has no id or extension.

§Errors

Returns EncodeError when an extension value has no JSON form.

Source

fn from_json_parts( value: Option<&Value>, element: Option<&Value>, path: &mut Path, ) -> Result<Self, DecodeError>

Decodes the value and its _name sibling.

§Errors

Returns DecodeError when both parts are absent or either is malformed.

Source

fn has_value(&self) -> bool

Whether the primitive carries a value.

Source

fn has_element(&self) -> bool

Whether the primitive carries an id or an extension.

Source

fn serialize_value<S: Serializer>( &self, serializer: S, ) -> Result<S::Ok, S::Error>

Writes the value, null when the primitive carries none.

§Errors

Returns the serializer’s error, which for a decimal includes a lexical form that is no JSON number.

Source

fn serialize_element<S: Serializer>( &self, serializer: S, ) -> Result<S::Ok, S::Error>

Writes the _name object, null when the primitive carries no id and no extension.

§Errors

Returns the serializer’s error.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementors§

Source§

impl Primitive for fhir_types::r4::primitives::Base64Binary

Source§

impl Primitive for fhir_types::r4b::primitives::Base64Binary

Source§

impl Primitive for fhir_types::r5::primitives::Base64Binary

Source§

impl Primitive for fhir_types::r6::primitives::Base64Binary

Source§

impl Primitive for fhir_types::stu3::primitives::Base64Binary

Source§

impl Primitive for fhir_types::r4::primitives::Boolean

Source§

impl Primitive for fhir_types::r4b::primitives::Boolean

Source§

impl Primitive for fhir_types::r5::primitives::Boolean

Source§

impl Primitive for fhir_types::r6::primitives::Boolean

Source§

impl Primitive for fhir_types::stu3::primitives::Boolean

Source§

impl Primitive for fhir_types::r4::primitives::Canonical

Source§

impl Primitive for fhir_types::r4b::primitives::Canonical

Source§

impl Primitive for fhir_types::r5::primitives::Canonical

Source§

impl Primitive for fhir_types::r6::primitives::Canonical

Source§

impl Primitive for fhir_types::r4::primitives::Code

Source§

impl Primitive for fhir_types::r4b::primitives::Code

Source§

impl Primitive for fhir_types::r5::primitives::Code

Source§

impl Primitive for fhir_types::r6::primitives::Code

Source§

impl Primitive for fhir_types::stu3::primitives::Code

Source§

impl Primitive for fhir_types::r4::primitives::Date

Source§

impl Primitive for fhir_types::r4b::primitives::Date

Source§

impl Primitive for fhir_types::r5::primitives::Date

Source§

impl Primitive for fhir_types::r6::primitives::Date

Source§

impl Primitive for fhir_types::stu3::primitives::Date

Source§

impl Primitive for fhir_types::r4::primitives::DateTime

Source§

impl Primitive for fhir_types::r4b::primitives::DateTime

Source§

impl Primitive for fhir_types::r5::primitives::DateTime

Source§

impl Primitive for fhir_types::r6::primitives::DateTime

Source§

impl Primitive for fhir_types::stu3::primitives::DateTime

Source§

impl Primitive for fhir_types::r4::primitives::Decimal

Source§

impl Primitive for fhir_types::r4b::primitives::Decimal

Source§

impl Primitive for fhir_types::r5::primitives::Decimal

Source§

impl Primitive for fhir_types::r6::primitives::Decimal

Source§

impl Primitive for fhir_types::stu3::primitives::Decimal

Source§

impl Primitive for fhir_types::r4::primitives::Id

Source§

impl Primitive for fhir_types::r4b::primitives::Id

Source§

impl Primitive for fhir_types::r5::primitives::Id

Source§

impl Primitive for fhir_types::r6::primitives::Id

Source§

impl Primitive for fhir_types::stu3::primitives::Id

Source§

impl Primitive for fhir_types::r4::primitives::Instant

Source§

impl Primitive for fhir_types::r4b::primitives::Instant

Source§

impl Primitive for fhir_types::r5::primitives::Instant

Source§

impl Primitive for fhir_types::r6::primitives::Instant

Source§

impl Primitive for fhir_types::stu3::primitives::Instant

Source§

impl Primitive for fhir_types::r4::primitives::Integer

Source§

impl Primitive for fhir_types::r4b::primitives::Integer

Source§

impl Primitive for fhir_types::r5::primitives::Integer

Source§

impl Primitive for fhir_types::r6::primitives::Integer

Source§

impl Primitive for fhir_types::stu3::primitives::Integer

Source§

impl Primitive for fhir_types::r5::primitives::Integer64

Source§

impl Primitive for fhir_types::r6::primitives::Integer64

Source§

impl Primitive for fhir_types::r4::primitives::Markdown

Source§

impl Primitive for fhir_types::r4b::primitives::Markdown

Source§

impl Primitive for fhir_types::r5::primitives::Markdown

Source§

impl Primitive for fhir_types::r6::primitives::Markdown

Source§

impl Primitive for fhir_types::stu3::primitives::Markdown

Source§

impl Primitive for fhir_types::r4::primitives::Oid

Source§

impl Primitive for fhir_types::r4b::primitives::Oid

Source§

impl Primitive for fhir_types::r5::primitives::Oid

Source§

impl Primitive for fhir_types::r6::primitives::Oid

Source§

impl Primitive for fhir_types::stu3::primitives::Oid

Source§

impl Primitive for fhir_types::r4::primitives::PositiveInt

Source§

impl Primitive for fhir_types::r4b::primitives::PositiveInt

Source§

impl Primitive for fhir_types::r5::primitives::PositiveInt

Source§

impl Primitive for fhir_types::r6::primitives::PositiveInt

Source§

impl Primitive for fhir_types::stu3::primitives::PositiveInt

Source§

impl Primitive for fhir_types::r4::primitives::String

Source§

impl Primitive for fhir_types::r4b::primitives::String

Source§

impl Primitive for fhir_types::r5::primitives::String

Source§

impl Primitive for fhir_types::r6::primitives::String

Source§

impl Primitive for fhir_types::stu3::primitives::String

Source§

impl Primitive for fhir_types::r4::primitives::Time

Source§

impl Primitive for fhir_types::r4b::primitives::Time

Source§

impl Primitive for fhir_types::r5::primitives::Time

Source§

impl Primitive for fhir_types::r6::primitives::Time

Source§

impl Primitive for fhir_types::stu3::primitives::Time

Source§

impl Primitive for fhir_types::r4::primitives::UnsignedInt

Source§

impl Primitive for fhir_types::r4b::primitives::UnsignedInt

Source§

impl Primitive for fhir_types::r5::primitives::UnsignedInt

Source§

impl Primitive for fhir_types::r6::primitives::UnsignedInt

Source§

impl Primitive for fhir_types::stu3::primitives::UnsignedInt

Source§

impl Primitive for fhir_types::r4::primitives::Uri

Source§

impl Primitive for fhir_types::r4b::primitives::Uri

Source§

impl Primitive for fhir_types::r5::primitives::Uri

Source§

impl Primitive for fhir_types::r6::primitives::Uri

Source§

impl Primitive for fhir_types::stu3::primitives::Uri

Source§

impl Primitive for fhir_types::r4::primitives::Url

Source§

impl Primitive for fhir_types::r4b::primitives::Url

Source§

impl Primitive for fhir_types::r5::primitives::Url

Source§

impl Primitive for fhir_types::r6::primitives::Url

Source§

impl Primitive for fhir_types::r4::primitives::Uuid

Source§

impl Primitive for fhir_types::r4b::primitives::Uuid

Source§

impl Primitive for fhir_types::r5::primitives::Uuid

Source§

impl Primitive for fhir_types::r6::primitives::Uuid

Source§

impl Primitive for fhir_types::r4::primitives::Xhtml

Source§

impl Primitive for fhir_types::r4b::primitives::Xhtml

Source§

impl Primitive for fhir_types::r5::primitives::Xhtml

Source§

impl Primitive for fhir_types::r6::primitives::Xhtml

Source§

impl Primitive for fhir_types::stu3::primitives::Xhtml