pub struct Table { /* private fields */ }
Expand description
Type representing a TOML non-inline table
Implementations§
source§impl Table
impl Table
Constructors
See also FromIterator
sourcepub fn into_inline_table(self) -> InlineTable
pub fn into_inline_table(self) -> InlineTable
Convert to an inline table
source§impl Table
impl Table
Formatting
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::Document;
let mut doc = "[a]\n[a.b]\n".parse::<Document>().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 Document
.
sourcepub fn position(&self) -> Option<usize>
pub fn position(&self) -> Option<usize>
The position of the Table
within the Document
.
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_decor_mut(&mut self, key: &str) -> Option<&mut Decor>
pub fn key_decor_mut(&mut self, key: &str) -> Option<&mut Decor>
Returns the decor associated with a given key of the table.
source§impl Table
impl Table
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<K: Into<Key>, V: Into<Value>> Extend<(K, V)> for Table
impl<K: Into<Key>, V: Into<Value>> Extend<(K, V)> for Table
source§fn extend<T: IntoIterator<Item = (K, V)>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = (K, V)>>(&mut self, iter: T)
source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)source§impl Extend<Table> for ArrayOfTables
impl Extend<Table> for ArrayOfTables
source§fn extend<T: IntoIterator<Item = Table>>(&mut self, iter: T)
fn extend<T: IntoIterator<Item = Table>>(&mut self, iter: T)
source§fn extend_one(&mut self, item: A)
fn extend_one(&mut self, item: A)
extend_one
)source§fn extend_reserve(&mut self, additional: usize)
fn extend_reserve(&mut self, additional: usize)
extend_one
)