#pragma once #include "fs/VFS.h" #include #include struct OpenFileDescription : public Shareable { SharedPtr inode; int flags { 0 }; String path; OpenFileDescription(SharedPtr, int); ~OpenFileDescription(); }; struct FileDescriptor { SharedPtr description; usize offset { 0 }; int flags { 0 }; bool should_append(); bool should_block(); bool is_writable(); bool is_readable(); SharedPtr inode() { return description->inode; } int& status_flags() { return description->flags; } };