Struct Table
pub struct Table { /* private fields */ }
dep_toml_edit
only.Expand description
Type representing a TOML non-inline table
Implementations§
§impl Table
Constructors
impl Table
Constructors
See also FromIterator
pub fn into_inline_table(self) -> InlineTable
pub fn into_inline_table(self) -> InlineTable
Convert to an inline table
§impl Table
Formatting
impl Table
Formatting
pub 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
pub fn fmt(&mut self)
pub fn fmt(&mut self)
Auto formats the table.
pub fn sort_values(&mut self)
pub fn sort_values(&mut self)
Sorts Key/Value Pairs of the table.
Doesn’t affect subtables or subarrays.
pub 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).
pub 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");
pub 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.
pub fn set_dotted(&mut self, yes: bool)
pub fn set_dotted(&mut self, yes: bool)
Change this table’s dotted status
pub 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
pub 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
.
pub 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
.
pub 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
pub 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.
§impl Table
impl Table
pub fn iter(&self) -> Box<dyn Iterator<Item = (&str, &Item)> + '_>
pub fn iter(&self) -> Box<dyn Iterator<Item = (&str, &Item)> + '_>
Returns an iterator over all key/value pairs, including empty.
pub fn iter_mut(
&mut self,
) -> Box<dyn Iterator<Item = (KeyMut<'_>, &mut Item)> + '_>
pub fn iter_mut( &mut self, ) -> Box<dyn Iterator<Item = (KeyMut<'_>, &mut Item)> + '_>
Returns an mutable iterator over all key/value pairs, including empty.
pub fn clear(&mut self)
pub fn clear(&mut self)
Clears the table, removing all key-value pairs. Keeps the allocated memory for reuse.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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.
pub 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§
§impl<K, V> Extend<(K, V)> for Table
impl<K, V> Extend<(K, V)> for Table
§fn extend<T>(&mut self, iter: T)where
T: IntoIterator<Item = (K, V)>,
fn extend<T>(&mut self, iter: T)where
T: IntoIterator<Item = (K, V)>,
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
)§impl Extend<Table> for ArrayOfTables
impl Extend<Table> for ArrayOfTables
§fn extend<T>(&mut self, iter: T)where
T: IntoIterator<Item = Table>,
fn extend<T>(&mut self, iter: T)where
T: IntoIterator<Item = Table>,
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
)§impl From<Table> for DocumentMut
impl From<Table> for DocumentMut
§fn from(root: Table) -> DocumentMut
fn from(root: Table) -> DocumentMut
§impl<K, V> FromIterator<(K, V)> for Table
impl<K, V> FromIterator<(K, V)> for Table
§impl FromIterator<Table> for ArrayOfTables
impl FromIterator<Table> for ArrayOfTables
§fn from_iter<I>(iter: I) -> ArrayOfTableswhere
I: IntoIterator<Item = Table>,
fn from_iter<I>(iter: I) -> ArrayOfTableswhere
I: IntoIterator<Item = Table>,
§impl<'s> IntoIterator for &'s Table
impl<'s> IntoIterator for &'s Table
§impl IntoIterator for Table
impl IntoIterator for Table
§impl TableLike for Table
impl TableLike for Table
§fn iter(&self) -> Box<dyn Iterator<Item = (&str, &Item)> + '_>
fn iter(&self) -> Box<dyn Iterator<Item = (&str, &Item)> + '_>
§fn iter_mut(&mut self) -> Box<dyn Iterator<Item = (KeyMut<'_>, &mut Item)> + '_>
fn iter_mut(&mut self) -> Box<dyn Iterator<Item = (KeyMut<'_>, &mut Item)> + '_>
§fn clear(&mut self)
fn clear(&mut self)
§fn entry<'a>(&'a mut self, key: &str) -> Entry<'a>
fn entry<'a>(&'a mut self, key: &str) -> Entry<'a>
§fn entry_format<'a>(&'a mut self, key: &Key) -> Entry<'a>
fn entry_format<'a>(&'a mut self, key: &Key) -> Entry<'a>
§fn get<'s>(&'s self, key: &str) -> Option<&'s Item> ⓘ
fn get<'s>(&'s self, key: &str) -> Option<&'s Item> ⓘ
§fn get_mut<'s>(&'s mut self, key: &str) -> Option<&'s mut Item> ⓘ
fn get_mut<'s>(&'s mut self, key: &str) -> Option<&'s mut Item> ⓘ
§fn get_key_value<'a>(&'a self, key: &str) -> Option<(&'a Key, &'a Item)> ⓘ
fn get_key_value<'a>(&'a self, key: &str) -> Option<(&'a Key, &'a Item)> ⓘ
§fn get_key_value_mut<'a>(
&'a mut self,
key: &str,
) -> Option<(KeyMut<'a>, &'a mut Item)> ⓘ
fn get_key_value_mut<'a>( &'a mut self, key: &str, ) -> Option<(KeyMut<'a>, &'a mut Item)> ⓘ
§fn contains_key(&self, key: &str) -> bool
fn contains_key(&self, key: &str) -> bool
§fn insert(&mut self, key: &str, value: Item) -> Option<Item> ⓘ
fn insert(&mut self, key: &str, value: Item) -> Option<Item> ⓘ
§fn get_values(&self) -> Vec<(Vec<&Key>, &Value)> ⓘ
fn get_values(&self) -> Vec<(Vec<&Key>, &Value)> ⓘ
§fn sort_values(&mut self)
fn sort_values(&mut self)
§fn is_dotted(&self) -> bool
fn is_dotted(&self) -> bool
§fn set_dotted(&mut self, yes: bool)
fn set_dotted(&mut self, yes: bool)
§fn key_decor_mut(&mut self, key: &str) -> Option<&mut Decor> ⓘ
fn key_decor_mut(&mut self, key: &str) -> Option<&mut Decor> ⓘ
key_mut
Auto Trait Implementations§
impl Freeze for Table
impl RefUnwindSafe for Table
impl Send for Table
impl Sync for Table
impl Unpin for Table
impl UnwindSafe for Table
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> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize
fn byte_align(&self) -> usize
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
fn type_hash_with<H: Hasher>(&self, hasher: H) -> u64
TypeId
of Self
using a custom hasher.Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of<T>() -> usize
fn mem_align_of<T>() -> usize
Source§fn mem_align_of_val(&self) -> usize
fn mem_align_of_val(&self) -> usize
Source§fn mem_size_of<T>() -> usize
fn mem_size_of<T>() -> usize
Source§fn mem_size_of_val(&self) -> usize
fn mem_size_of_val(&self) -> usize
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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