22 di::AnySenderOf<mm::PhysicalAddress>(di::This&, mm::BackingObject&, u64 page_number)> {};
28 di::AnySenderOf<usize>(di::This&, mm::BackingObject&, u64& offset, UserspaceBuffer<byte> buffer)> {
35 di::AnySenderOf<di::Arc<TNode>>(di::This&, di::Arc<TNode>, di::TransparentStringView)> {};
44 :
di::Dispatcher<InodeCreateNodeFunction, di::AnySenderOf<di::Arc<TNode>>(
45 di::This&, di::Arc<TNode>, di::TransparentStringView, MetadataType)> {
55 :
di::Dispatcher<InodeHACKRawDataFunction, di::AnySenderOf<di::Span<byte const>>(di::This&)> {};
Definition optional_forward_declaration.h:5
friend auto tag_invoke(di::Tag< read_file >, InodeFile &self, UserspaceBuffer< byte > buffer) -> di::AnySenderOf< usize >
Definition inode.cpp:51
InodeFile(di::Arc< TNode > tnode)
Definition inode.cpp:17
friend auto tag_invoke(di::Tag< inode_read >, Inode &self, mm::BackingObject &backing_object, u64 page_number) -> di::AnySenderOf< mm::PhysicalAddress >
Definition inode.cpp:19
auto mount() const -> di::Optional< Mount & >
Definition inode.h:90
Inode(InodeImpl impl)
Definition inode.h:86
auto backing_object() -> mm::BackingObject &
Definition inode.h:88
void set_mount(di::Box< Mount > mount)
Definition inode.h:91
Definition userspace_buffer.h:10
Definition backing_object.h:21
constexpr usize size
Definition gfx_test.cpp:24
detail::DispatcherImpl< Self, Sig, Tags... > Dispatcher
Definition dispatcher.h:47
meta::Type< AnyT< UserInterface, Storage, VTablePolicy > > Any
Definition any.h:294
string::StringViewImpl< string::TransparentEncoding > TransparentStringView
Definition string_view.h:13
meta::Type< AnySenderOfT< T > > AnySenderOf
Definition any_sender.h:129
__UINT64_TYPE__ u64
Definition integers.h:12
di::meta::Decay< decltype(T)> Tag
Definition tag_invoke.h:28
__INT64_TYPE__ i64
Definition integers.h:17
IntrusivePtr< T, ArcTag > Arc
Definition arc.h:21
Definition zstring_parser.h:9
constexpr auto ref
Definition reference_wrapper.h:98
constexpr auto chain(F &&f)
Definition chain.h:59
constexpr auto dereference
Definition dereference.h:16
Definition cxx_init.cpp:12
constexpr auto inode_hack_raw_data
Definition inode.h:57
constexpr auto inode_metadata
Definition inode.h:41
constexpr auto inode_lookup
Definition inode.h:37
constexpr auto inode_create_node
Definition inode.h:48
constexpr auto inode_read
Definition inode.h:24
di::meta::List< InodeReadFunction, InodeReadDirectoryFunction, InodeLookupFunction, InodeMetadataFunction, InodeCreateNodeFunction, InodeTruncateFunction, InodeHACKRawDataFunction > InodeInterface
Definition inode.h:59
constexpr auto inode_read_directory
Definition inode.h:31
MetadataType
Definition metadata.h:6
constexpr auto inode_truncate
Definition inode.h:52
di::Any< InodeInterface > InodeImpl
Definition inode.h:63