MCPcopy Create free account
hub / github.com/Starry-OS/StarryOS / new_entry

Method new_entry

api/src/vfs/tmp.rs:229–247  ·  view source on GitHub ↗
(&self, name: &str, node_type: NodeType, inode: Arc<Inode>)

Source from the content-addressed store, hash-verified

227 }
228
229 fn new_entry(&self, name: &str, node_type: NodeType, inode: Arc<Inode>) -> VfsResult<DirEntry> {
230 let fs = self.fs.clone();
231 let reference = Reference::new(
232 self.this.as_ref().and_then(WeakDirEntry::upgrade),
233 name.to_owned(),
234 );
235 Ok(if node_type == NodeType::Directory {
236 DirEntry::new_dir(
237 |this| DirNode::new(MemoryNode::new(fs, inode, Some(this))),
238 reference,
239 )
240 } else {
241 DirEntry::new_file(
242 FileNode::new(MemoryNode::new(fs, inode, None)),
243 node_type,
244 reference,
245 )
246 })
247 }
248}
249
250impl NodeOps for MemoryNode {

Callers 3

lookupMethod · 0.80
createMethod · 0.80
linkMethod · 0.80

Calls

no outgoing calls

Tested by

no test coverage detected