pub struct Path(pub String);
Expand description
An immutable JSON source path.
Tuple Fields§
§0: String
Implementations§
source§impl Path
impl Path
sourcepub fn new() -> Self
pub fn new() -> Self
Creates an empty JSON source path.
§Examples
Basic usage
let path = Path::new();
assert_eq!("", path.as_str());
sourcepub fn field(&self, name: &str) -> Self
pub fn field(&self, name: &str) -> Self
Returns a new path ending with the given field.
§Examples
Basic usage
let path = Path::new().field("foo");
assert_eq!("foo", path.as_str());
assert_eq!("foo.bar", path.field("bar").as_str());
sourcepub fn index(&self, index: usize) -> Self
pub fn index(&self, index: usize) -> Self
Returns a new path ending with the given array index.
§Examples
Basic usage
let path = Path::new().field("foo");
assert_eq!("foo[123]", path.index(123).as_str());
sourcepub fn key(&self, key: &str) -> Self
pub fn key(&self, key: &str) -> Self
Returns a new path ending with the given object key.
§Examples
Basic usage
let path = Path::new().field("foo");
assert_eq!("foo[\"bar\"]", path.key("bar").as_str());
Trait Implementations§
source§impl PartialEq for Path
impl PartialEq for Path
impl StructuralPartialEq for Path
Auto Trait Implementations§
impl Freeze for Path
impl RefUnwindSafe for Path
impl Send for Path
impl Sync for Path
impl Unpin for Path
impl UnwindSafe for Path
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
Mutably borrows from an owned value. Read more