use super::KeyPathElement;
use std::fmt;
pub struct KeyPath {
keys: Vec<String>,
}
impl KeyPath {
pub fn new(keys: Vec<String>) -> Self {
Self {
keys,
}
}
fn add_key(&self, key: String) {
unimplemented!()
}
fn resolve(&self, element: impl KeyPathElement) -> KeyPath {
unimplemented!()
}
fn matches(&self, key: String, depth: i64) -> bool {
unimplemented!()
}
fn increment_depth_by(&self, key: String, depth: i64) -> i64 {
unimplemented!()
}
fn fully_resolves_to(&self, key: String, depth: i64) -> bool {
unimplemented!()
}
fn propogate_to_children(&self, key: String, depth: i64) -> bool {
unimplemented!()
}
fn is_container(&self, key: String) -> bool {
unimplemented!()
}
fn ends_with_globstart(&self) -> bool {
unimplemented!()
}
fn keys_to_string(&self) -> String {
unimplemented!()
}
}
impl fmt::Display for KeyPath {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "KeyPath[]")
}
}