Skip to main content

ViewDefinitionSelect

Struct ViewDefinitionSelect 

Source
pub struct ViewDefinitionSelect {
    pub id: Option<String>,
    pub extension: Option<Vec<Extension>>,
    pub modifierExtension: Option<Vec<Extension>>,
    pub column: Option<Vec<ViewDefinitionSelectColumn>>,
    pub select: Option<Vec<ViewDefinitionSelect>>,
    pub forEach: Option<Box<FHIRString>>,
    pub forEachOrNull: Option<Box<FHIRString>>,
    pub repeat: Option<Vec<FHIRString>>,
    pub unionAll: Option<Vec<ViewDefinitionSelect>>,
}
Expand description

The select structure defines the columns to be used in the resulting view. These are expressed in the column structure below, or in nested selects for nested resources.

Fields§

§id: Option<String>

Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.

§extension: Option<Vec<Extension>>

May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.

§modifierExtension: Option<Vec<Extension>>

May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained and/or the understanding of the containing element’s descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.

Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).

§column: Option<Vec<ViewDefinitionSelectColumn>>

A column to be produced in the resulting table. The column is relative to the select structure that contains it.

§select: Option<Vec<ViewDefinitionSelect>>

Nested select relative to a parent expression. If the parent select has a forEach or forEachOrNull, this child select will apply for each item in that expression.

§forEach: Option<Box<FHIRString>>

A FHIRPath expression to retrieve the parent element(s) used in the containing select, relative to the root resource or parent select, if applicable. forEach will produce a row for each element selected in the expression. For example, using forEach on address in Patient will generate a new row for each address, with columns defined in the corresponding column structure.

§forEachOrNull: Option<Box<FHIRString>>

Same as forEach, but produces a single row with null values in the nested expression if the collection is empty. For example, with a Patient resource, a forEachOrNull on address will produce a row for each patient even if there are no addresses; it will simply set the address columns to null.

§repeat: Option<Vec<FHIRString>>

A list of FHIRPath expressions that define paths to recursively traverse. The view runner will recursively follow each path to any depth, collecting results from all levels. All results are combined using a union operation.

§unionAll: Option<Vec<ViewDefinitionSelect>>

A unionAll combines the results of multiple selection structures. Each structure under the unionAll must produce the same column names and types. The results from each nested selection will then have their own row.

Implementations§

Trait Implementations§

Source§

impl Clone for ViewDefinitionSelect

Source§

fn clone(&self) -> ViewDefinitionSelect

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 Debug for ViewDefinitionSelect

Source§

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

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

impl Default for ViewDefinitionSelect

Source§

fn default() -> ViewDefinitionSelect

Returns the “default value” for a type. Read more
Source§

impl<'de> Deserialize<'de> for ViewDefinitionSelect

Source§

fn deserialize<D: Deserializer<'de>>(d: D) -> Result<Self, D::Error>

Deserialize this value from the given Serde deserializer. Read more
Source§

impl MetaValue for ViewDefinitionSelect

Source§

fn fields(&self) -> Vec<&'static str>

Source§

fn get_field<'a>(&'a self, field: &str) -> Option<&'a dyn MetaValue>

Source§

fn get_field_mut<'a>(&'a mut self, field: &str) -> Option<&'a mut dyn MetaValue>

Source§

fn get_index_mut<'a>( &'a mut self, _index: usize, ) -> Option<&'a mut dyn MetaValue>

Source§

fn get_index<'a>(&'a self, _index: usize) -> Option<&'a dyn MetaValue>

Source§

fn fhir_type(&self) -> &'static str

Source§

fn as_any(&self) -> &dyn Any

Source§

fn flatten(&self) -> Vec<&dyn MetaValue>

Source§

fn is_many(&self) -> bool

Source§

impl Serialize for ViewDefinitionSelect

Source§

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

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

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
§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
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> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
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 = Infallible

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

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more