pub struct DocumentMut { /* private fields */ }
Expand description
Type representing a TOML document
Implementations§
Source§impl DocumentMut
impl DocumentMut
Sourcepub fn as_item_mut(&mut self) -> &mut Item
pub fn as_item_mut(&mut self) -> &mut Item
Returns a mutable reference to the root item.
Sourcepub fn as_table_mut(&mut self) -> &mut Table
pub fn as_table_mut(&mut self) -> &mut Table
Returns a mutable reference to the root table.
Sourcepub fn set_trailing(&mut self, trailing: impl Into<RawString>)
pub fn set_trailing(&mut self, trailing: impl Into<RawString>)
Set whitespace after last element
Methods from Deref<Target = Table>§
Sourcepub fn get_values(&self) -> Vec<(Vec<&Key>, &Value)>
pub fn get_values(&self) -> Vec<(Vec<&Key>, &Value)>
Get key/values for values that are visually children of this table
For example, this will return dotted keys
Sourcepub fn sort_values(&mut self)
pub fn sort_values(&mut self)
Sorts Key/Value Pairs of the table.
Doesn’t affect subtables or subarrays.
Sourcepub fn sort_values_by<F>(&mut self, compare: F)
pub fn sort_values_by<F>(&mut self, compare: F)
Sort Key/Value Pairs of the table using the using the comparison function compare
.
The comparison function receives two key and value pairs to compare (you can sort by keys or values or their combination as needed).
Sourcepub fn set_implicit(&mut self, implicit: bool)
pub fn set_implicit(&mut self, implicit: bool)
If a table has no key/value pairs and implicit, it will not be displayed.
§Examples
[target."x86_64/windows.json".dependencies]
In the document above, tables target
and target."x86_64/windows.json"
are implicit.
use toml_edit::DocumentMut;
let mut doc = "[a]\n[a.b]\n".parse::<DocumentMut>().expect("invalid toml");
doc["a"].as_table_mut().unwrap().set_implicit(true);
assert_eq!(doc.to_string(), "[a.b]\n");
Sourcepub fn is_implicit(&self) -> bool
pub fn is_implicit(&self) -> bool
If a table has no key/value pairs and implicit, it will not be displayed.
Sourcepub fn set_dotted(&mut self, yes: bool)
pub fn set_dotted(&mut self, yes: bool)
Change this table’s dotted status
Sourcepub fn is_dotted(&self) -> bool
pub fn is_dotted(&self) -> bool
Check if this is a wrapper for dotted keys, rather than a standard table
Sourcepub fn set_position(&mut self, doc_position: usize)
pub fn set_position(&mut self, doc_position: usize)
Sets the position of the Table
within the DocumentMut
.
Sourcepub fn position(&self) -> Option<usize>
pub fn position(&self) -> Option<usize>
The position of the Table
within the DocumentMut
.
Returns None
if the Table
was created manually (i.e. not via parsing)
in which case its position is set automatically. This can be overridden with
Table::set_position
.
Sourcepub fn key_mut(&mut self, key: &str) -> Option<KeyMut<'_>>
pub fn key_mut(&mut self, key: &str) -> Option<KeyMut<'_>>
Returns an accessor to a key’s formatting
Sourcepub fn key_decor_mut(&mut self, key: &str) -> Option<&mut Decor>
👎Deprecated since 0.21.1: Replaced with key_mut
pub fn key_decor_mut(&mut self, key: &str) -> Option<&mut Decor>
key_mut
Returns the decor associated with a given key of the table.
Sourcepub fn key_decor(&self, key: &str) -> Option<&Decor>
👎Deprecated since 0.21.1: Replaced with key_mut
pub fn key_decor(&self, key: &str) -> Option<&Decor>
key_mut
Returns the decor associated with a given key of the table.
Sourcepub fn span(&self) -> Option<Range<usize>>
pub fn span(&self) -> Option<Range<usize>>
The location within the original document
This generally requires an ImDocument
.
Sourcepub fn iter_mut(&mut self) -> IterMut<'_>
pub fn iter_mut(&mut self) -> IterMut<'_>
Returns an mutable iterator over all key/value pairs, including empty.
Sourcepub fn clear(&mut self)
pub fn clear(&mut self)
Clears the table, removing all key-value pairs. Keeps the allocated memory for reuse.
Sourcepub fn entry<'a>(&'a mut self, key: &str) -> Entry<'a>
pub fn entry<'a>(&'a mut self, key: &str) -> Entry<'a>
Gets the given key’s corresponding entry in the Table for in-place manipulation.
Sourcepub fn entry_format<'a>(&'a mut self, key: &Key) -> Entry<'a>
pub fn entry_format<'a>(&'a mut self, key: &Key) -> Entry<'a>
Gets the given key’s corresponding entry in the Table for in-place manipulation.
Sourcepub fn get<'a>(&'a self, key: &str) -> Option<&'a Item>
pub fn get<'a>(&'a self, key: &str) -> Option<&'a Item>
Returns an optional reference to an item given the key.
Sourcepub fn get_mut<'a>(&'a mut self, key: &str) -> Option<&'a mut Item>
pub fn get_mut<'a>(&'a mut self, key: &str) -> Option<&'a mut Item>
Returns an optional mutable reference to an item given the key.
Sourcepub fn get_key_value<'a>(&'a self, key: &str) -> Option<(&'a Key, &'a Item)>
pub fn get_key_value<'a>(&'a self, key: &str) -> Option<(&'a Key, &'a Item)>
Return references to the key-value pair stored for key, if it is present, else None.
Sourcepub fn get_key_value_mut<'a>(
&'a mut self,
key: &str,
) -> Option<(KeyMut<'a>, &'a mut Item)>
pub fn get_key_value_mut<'a>( &'a mut self, key: &str, ) -> Option<(KeyMut<'a>, &'a mut Item)>
Return mutable references to the key-value pair stored for key, if it is present, else None.
Sourcepub fn contains_key(&self, key: &str) -> bool
pub fn contains_key(&self, key: &str) -> bool
Returns true if the table contains an item with the given key.
Sourcepub fn contains_table(&self, key: &str) -> bool
pub fn contains_table(&self, key: &str) -> bool
Returns true if the table contains a table with the given key.
Sourcepub fn contains_value(&self, key: &str) -> bool
pub fn contains_value(&self, key: &str) -> bool
Returns true if the table contains a value with the given key.
Sourcepub fn contains_array_of_tables(&self, key: &str) -> bool
pub fn contains_array_of_tables(&self, key: &str) -> bool
Returns true if the table contains an array of tables with the given key.
Sourcepub fn insert(&mut self, key: &str, item: Item) -> Option<Item>
pub fn insert(&mut self, key: &str, item: Item) -> Option<Item>
Inserts a key-value pair into the map.
Sourcepub fn insert_formatted(&mut self, key: &Key, item: Item) -> Option<Item>
pub fn insert_formatted(&mut self, key: &Key, item: Item) -> Option<Item>
Inserts a key-value pair into the map.
Trait Implementations§
Source§impl Clone for DocumentMut
impl Clone for DocumentMut
Source§fn clone(&self) -> DocumentMut
fn clone(&self) -> DocumentMut
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl Debug for DocumentMut
impl Debug for DocumentMut
Source§impl Default for DocumentMut
impl Default for DocumentMut
Source§impl Deref for DocumentMut
impl Deref for DocumentMut
Source§impl DerefMut for DocumentMut
impl DerefMut for DocumentMut
Source§impl Display for DocumentMut
Available on crate feature display
only.
impl Display for DocumentMut
display
only.Source§impl From<Table> for DocumentMut
impl From<Table> for DocumentMut
Source§impl FromStr for DocumentMut
Available on crate feature parse
only.
impl FromStr for DocumentMut
parse
only.Source§impl<'s> Index<&'s str> for DocumentMut
impl<'s> Index<&'s str> for DocumentMut
Auto Trait Implementations§
impl Freeze for DocumentMut
impl RefUnwindSafe for DocumentMut
impl Send for DocumentMut
impl Sync for DocumentMut
impl Unpin for DocumentMut
impl UnwindSafe for DocumentMut
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Layout§
Note: Most layout information is completely unstable and may even differ between compilations. The only exception is types with certain repr(...)
attributes. Please see the Rust Reference's “Type Layout” chapter for details on type layout guarantees.
Size: 200 bytes