General Purpose library for Freestanding C++ and POSIX systems
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 

24 rader
613 B

#pragma once
#include "gp/containers/buffer.hpp"
#include "gp/containers/vector.hpp"
#include "gp/ipc/file_description.hpp"
namespace gp{
struct file_char {
// v cannot contain '/' or 0
char v;
};
struct fs_user_representation {
virtual uint32_t to_posix() = 0;
virtual gp::vector<std::byte> to_sid() = 0;
};
class filesystem {
virtual file_description* create(gp::buffer<file_char>, fs_user_representation&) = 0;
virtual file_description* open(gp::buffer<file_char>, fs_user_representation&) = 0;
virtual file_description* remove(gp::buffer<file_char>, fs_user_representation&) = 0;
};
}