Trait compose_yml::v2::MergeOverride [] [src]

pub trait MergeOverride: Clone + Sized {
    fn merge_override(&self, ovr: &Self) -> Self { ... }
}

This trait is implemented by types that can be merged

Provided Methods

Given this value and an override value, merge the override value into this one, producing a new value.

The default implementation just ignores the original value in favor of ovr, so it's appropriate for simple scalar types. More complex types will require a custom implementation.

Implementations on Foreign Types

impl MergeOverride for i16
[src]

[src]

impl MergeOverride for u16
[src]

[src]

impl MergeOverride for u32
[src]

[src]

impl MergeOverride for bool
[src]

[src]

impl MergeOverride for String
[src]

[src]

impl MergeOverride for ()
[src]

[src]

impl<T: MergeOverride> MergeOverride for Option<T>
[src]

[src]

If both option values are present, call merge_override recursively. If only one value is present, use that one. If neither is present, return None.

impl<T: MergeOverride> MergeOverride for Vec<T>
[src]

[src]

Appends ovr to self, creating a new list.

impl<K: Ord + Clone, T: MergeOverride> MergeOverride for BTreeMap<K, T>
[src]

[src]

Merges ovr into self, recursively merging values if present in both, and returns a new BTreeMap.

Implementors