Struct git_config::file::SectionMut  
source · [−]pub struct SectionMut<'a, 'event> { /* private fields */ }Expand description
A opaque type that represents a mutable reference to a section.
Implementations
sourceimpl<'a, 'event> SectionMut<'a, 'event>
 
impl<'a, 'event> SectionMut<'a, 'event>
Mutating methods.
sourcepub fn push<'b>(&mut self, key: Key<'event>, value: Option<&'b BStr>)
 
pub fn push<'b>(&mut self, key: Key<'event>, value: Option<&'b BStr>)
Adds an entry to the end of this section name key and value. If value is None`, no equal sign will be written leaving
just the key. This is useful for boolean values which are true if merely the key exists.
sourcepub fn pop(&mut self) -> Option<(Key<'_>, Cow<'event, BStr>)>
 
pub fn pop(&mut self) -> Option<(Key<'_>, Cow<'event, BStr>)>
Removes all events until a key value pair is removed. This will also remove the whitespace preceding the key value pair, if any is found.
sourcepub fn set<'b>(
    &mut self,
    key: Key<'event>,
    value: impl Into<&'b BStr>
) -> Option<Cow<'event, BStr>>
 
pub fn set<'b>(
    &mut self,
    key: Key<'event>,
    value: impl Into<&'b BStr>
) -> Option<Cow<'event, BStr>>
Sets the last key value pair if it exists, or adds the new value. Returns the previous value if it replaced a value, or None if it adds the value.
sourcepub fn remove(&mut self, key: impl AsRef<str>) -> Option<Cow<'event, BStr>>
 
pub fn remove(&mut self, key: impl AsRef<str>) -> Option<Cow<'event, BStr>>
Removes the latest value by key and returns it, if it exists.
sourcepub fn push_newline(&mut self)
 
pub fn push_newline(&mut self)
Adds a new line event. Note that you don’t need to call this unless you’ve disabled implicit newlines.
sourcepub fn newline(&self) -> &BStr
 
pub fn newline(&self) -> &BStr
Return the newline used when calling push_newline().
sourcepub fn set_implicit_newline(&mut self, on: bool)
 
pub fn set_implicit_newline(&mut self, on: bool)
Enables or disables automatically adding newline events after adding a value. This is enabled by default.
sourcepub fn set_leading_whitespace(&mut self, whitespace: Option<Cow<'event, BStr>>)
 
pub fn set_leading_whitespace(&mut self, whitespace: Option<Cow<'event, BStr>>)
Sets the exact whitespace to use before each newly created key-value pair, with only whitespace characters being permissible.
The default is 2 tabs.
Set to None to disable adding whitespace before a key value.
Panics
If non-whitespace characters are used. This makes the method only suitable for validated or known input.
sourcepub fn leading_whitespace(&self) -> Option<&BStr>
 
pub fn leading_whitespace(&self) -> Option<&BStr>
Returns the whitespace this section will insert before the beginning of a key, if any.
Methods from Deref<Target = Section<'event>>
sourcepub fn to_bstring(&self) -> BString
 
pub fn to_bstring(&self) -> BString
Serialize this type into a BString for convenience.
Note that to_string() can also be used, but might not be lossless.
Methods from Deref<Target = Body<'a>>
sourcepub fn value(&self, key: impl AsRef<str>) -> Option<Cow<'_, BStr>>
 
pub fn value(&self, key: impl AsRef<str>) -> Option<Cow<'_, BStr>>
Retrieves the last matching value in a section with the given key, if present.
Note that we consider values without key separator = non-existing.
sourcepub fn values(&self, key: impl AsRef<str>) -> Vec<Cow<'_, BStr>>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
    A: Allocator,
 
pub fn values(&self, key: impl AsRef<str>) -> Vec<Cow<'_, BStr>>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A>where
    A: Allocator,
A: Allocator,
Retrieves all values that have the provided key name. This may return an empty vec, which implies there were no values with the provided key.
sourcepub fn keys(&self) -> impl Iterator<Item = &Key<'event>>
 
pub fn keys(&self) -> impl Iterator<Item = &Key<'event>>
Returns an iterator visiting all keys in order.
sourcepub fn contains_key(&self, key: impl AsRef<str>) -> bool
 
pub fn contains_key(&self, key: impl AsRef<str>) -> bool
Returns true if the section containss the provided key.
sourcepub fn num_values(&self) -> usize
 
pub fn num_values(&self) -> usize
Returns the number of values in the section.
sourcepub fn is_void(&self) -> bool
 
pub fn is_void(&self) -> bool
Returns if the section is empty.
Note that this may count whitespace, see num_values() for
another way to determine semantic emptiness.
Trait Implementations
sourceimpl<'a, 'event> Debug for SectionMut<'a, 'event>
 
impl<'a, 'event> Debug for SectionMut<'a, 'event>
sourceimpl<'event> Deref for SectionMut<'_, 'event>
 
impl<'event> Deref for SectionMut<'_, 'event>
sourceimpl<'a, 'event> Hash for SectionMut<'a, 'event>
 
impl<'a, 'event> Hash for SectionMut<'a, 'event>
sourceimpl<'a, 'event> Ord for SectionMut<'a, 'event>
 
impl<'a, 'event> Ord for SectionMut<'a, 'event>
sourcefn cmp(&self, other: &SectionMut<'a, 'event>) -> Ordering
 
fn cmp(&self, other: &SectionMut<'a, 'event>) -> Ordering
1.21.0 · sourcefn max(self, other: Self) -> Self
 
fn max(self, other: Self) -> Self
1.21.0 · sourcefn min(self, other: Self) -> Self
 
fn min(self, other: Self) -> Self
1.50.0 · sourcefn clamp(self, min: Self, max: Self) -> Selfwhere
    Self: PartialOrd<Self>,
 
fn clamp(self, min: Self, max: Self) -> Selfwhere
    Self: PartialOrd<Self>,
sourceimpl<'a, 'event> PartialEq<SectionMut<'a, 'event>> for SectionMut<'a, 'event>
 
impl<'a, 'event> PartialEq<SectionMut<'a, 'event>> for SectionMut<'a, 'event>
sourcefn eq(&self, other: &SectionMut<'a, 'event>) -> bool
 
fn eq(&self, other: &SectionMut<'a, 'event>) -> bool
sourceimpl<'a, 'event> PartialOrd<SectionMut<'a, 'event>> for SectionMut<'a, 'event>
 
impl<'a, 'event> PartialOrd<SectionMut<'a, 'event>> for SectionMut<'a, 'event>
sourcefn partial_cmp(&self, other: &SectionMut<'a, 'event>) -> Option<Ordering>
 
fn partial_cmp(&self, other: &SectionMut<'a, 'event>) -> Option<Ordering>
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
 
fn le(&self, other: &Rhs) -> bool
self and other) and is used by the <=
operator. Read more