pub trait UnityDocument {
Show 15 methods
// Required methods
fn entry(&self) -> Option<&UnityClass>;
fn entry_mut(&mut self) -> Option<&mut UnityClass>;
fn entries(&self) -> &[UnityClass];
fn entries_mut(&mut self) -> &mut Vec<UnityClass>;
fn add_entry(&mut self, entry: UnityClass);
fn file_path(&self) -> Option<&Path>;
fn save(&self) -> Result<()>;
fn save_to<P: AsRef<Path>>(&self, path: P) -> Result<()>;
fn format(&self) -> DocumentFormat;
// Provided methods
fn filter_by_class(&self, class_name: &str) -> Vec<&UnityClass> { ... }
fn filter_by_classes(&self, class_names: &[&str]) -> Vec<&UnityClass> { ... }
fn filter<F>(&self, predicate: F) -> Vec<&UnityClass>
where F: Fn(&UnityClass) -> bool { ... }
fn find_by_class_and_property(
&self,
class_name: &str,
property: &str,
) -> Option<&UnityClass> { ... }
fn is_empty(&self) -> bool { ... }
fn len(&self) -> usize { ... }
}Expand description
Abstract trait for Unity documents
Required Methods§
Sourcefn entry(&self) -> Option<&UnityClass>
fn entry(&self) -> Option<&UnityClass>
Get the first entry (main object) in the document
Sourcefn entry_mut(&mut self) -> Option<&mut UnityClass>
fn entry_mut(&mut self) -> Option<&mut UnityClass>
Get a mutable reference to the first entry
Sourcefn entries(&self) -> &[UnityClass]
fn entries(&self) -> &[UnityClass]
Get all entries in the document
Sourcefn entries_mut(&mut self) -> &mut Vec<UnityClass>
fn entries_mut(&mut self) -> &mut Vec<UnityClass>
Get mutable access to all entries
Sourcefn add_entry(&mut self, entry: UnityClass)
fn add_entry(&mut self, entry: UnityClass)
Add a new Unity object to the document
Sourcefn format(&self) -> DocumentFormat
fn format(&self) -> DocumentFormat
Get the document format
Provided Methods§
Sourcefn filter_by_class(&self, class_name: &str) -> Vec<&UnityClass>
fn filter_by_class(&self, class_name: &str) -> Vec<&UnityClass>
Filter entries by class name
Sourcefn filter_by_classes(&self, class_names: &[&str]) -> Vec<&UnityClass>
fn filter_by_classes(&self, class_names: &[&str]) -> Vec<&UnityClass>
Filter entries by multiple class names
Sourcefn filter<F>(&self, predicate: F) -> Vec<&UnityClass>
fn filter<F>(&self, predicate: F) -> Vec<&UnityClass>
Filter entries by a custom predicate
Sourcefn find_by_class_and_property(
&self,
class_name: &str,
property: &str,
) -> Option<&UnityClass>
fn find_by_class_and_property( &self, class_name: &str, property: &str, ) -> Option<&UnityClass>
Find a single entry by class name and optional property filter
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".