pub struct FileTreeEntry {
pub name: String,
pub entry_type: String,
pub path: String,
pub children: Vec<FileTreeEntry>,
pub depth_limited: bool,
}Expand description
File tree entry.
JSON schema matches Python implementation:
{
"name": "project",
"type": "dir",
"path": ".",
"children": [
{"name": "src", "type": "dir", "path": "src", "children": [...]},
{"name": "main.py", "type": "file", "path": "src/main.py"}
]
}Fields§
§name: StringFile or directory name
entry_type: StringEntry type: “dir” or “file” (matches Python schema)
path: StringRelative path from project root
children: Vec<FileTreeEntry>Children (for directories)
depth_limited: boolIndicates this directory was not expanded due to depth limit. When true, children may be incomplete or empty because max_depth was reached.
Implementations§
Source§impl FileTreeEntry
impl FileTreeEntry
Sourcepub fn new_dir(name: String, path: String, children: Vec<FileTreeEntry>) -> Self
pub fn new_dir(name: String, path: String, children: Vec<FileTreeEntry>) -> Self
Create a new directory entry.
Sourcepub fn depth_limit_reached(path: &Path, root: &Path) -> Self
pub fn depth_limit_reached(path: &Path, root: &Path) -> Self
Create a placeholder entry for a directory that hit the depth limit.
This marker indicates the directory exists but its contents were not traversed to prevent stack overflow from deeply nested structures.
Trait Implementations§
Source§impl Clone for FileTreeEntry
impl Clone for FileTreeEntry
Source§fn clone(&self) -> FileTreeEntry
fn clone(&self) -> FileTreeEntry
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for FileTreeEntry
impl Debug for FileTreeEntry
Source§impl Default for FileTreeEntry
impl Default for FileTreeEntry
Source§impl<'de> Deserialize<'de> for FileTreeEntry
impl<'de> Deserialize<'de> for FileTreeEntry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for FileTreeEntry
impl RefUnwindSafe for FileTreeEntry
impl Send for FileTreeEntry
impl Sync for FileTreeEntry
impl Unpin for FileTreeEntry
impl UnwindSafe for FileTreeEntry
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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>
Converts
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>
Converts
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request