1#[macro_export]
6macro_rules! impl_vfs_dir_default {
7 () => {
8 fn read_at(&self, _offset: u64, _buf: &mut [u8]) -> $crate::VfsResult<usize> {
9 $crate::__priv::ax_err!(IsADirectory)
10 }
11
12 fn write_at(&self, _offset: u64, _buf: &[u8]) -> $crate::VfsResult<usize> {
13 $crate::__priv::ax_err!(IsADirectory)
14 }
15
16 fn fsync(&self) -> $crate::VfsResult {
17 $crate::__priv::ax_err!(IsADirectory)
18 }
19
20 fn truncate(&self, _size: u64) -> $crate::VfsResult {
21 $crate::__priv::ax_err!(IsADirectory)
22 }
23
24 #[inline]
25 fn as_any(&self) -> &dyn core::any::Any {
26 self
27 }
28 };
29}
30
31#[macro_export]
36macro_rules! impl_vfs_non_dir_default {
37 () => {
38 fn lookup(
39 self: $crate::__priv::Arc<Self>,
40 _path: &str,
41 ) -> $crate::VfsResult<$crate::VfsNodeRef> {
42 $crate::__priv::ax_err!(NotADirectory)
43 }
44
45 fn create(&self, _path: &str, _ty: $crate::VfsNodeType) -> $crate::VfsResult {
46 $crate::__priv::ax_err!(NotADirectory)
47 }
48
49 fn remove(&self, _path: &str) -> $crate::VfsResult {
50 $crate::__priv::ax_err!(NotADirectory)
51 }
52
53 fn read_dir(
54 &self,
55 _start_idx: usize,
56 _dirents: &mut [$crate::VfsDirEntry],
57 ) -> $crate::VfsResult<usize> {
58 $crate::__priv::ax_err!(NotADirectory)
59 }
60
61 #[inline]
62 fn as_any(&self) -> &dyn core::any::Any {
63 self
64 }
65 };
66}