summaryrefslogtreecommitdiffhomepage
path: root/include/GenericsLibrary/fstream.nhh
diff options
context:
space:
mode:
authorAmlal El Mahrouss <amlal@nekernel.org>2026-01-21 10:37:37 +0100
committerAmlal El Mahrouss <amlal@nekernel.org>2026-01-21 10:37:37 +0100
commitcf85412812e3b6107fb13cd8b2f6cceedd421e12 (patch)
tree1dc1707bf6edb192cd90c01780c5dd032684ade2 /include/GenericsLibrary/fstream.nhh
parentdd67da34d17d54b3e70bd9fe42de19d64960b14f (diff)
chore: wip: More Nectar features and expanding codegen.
Signed-off-by: Amlal El Mahrouss <amlal@nekernel.org>
Diffstat (limited to 'include/GenericsLibrary/fstream.nhh')
-rw-r--r--include/GenericsLibrary/fstream.nhh14
1 files changed, 11 insertions, 3 deletions
diff --git a/include/GenericsLibrary/fstream.nhh b/include/GenericsLibrary/fstream.nhh
index 16ac78b..a40a8e7 100644
--- a/include/GenericsLibrary/fstream.nhh
+++ b/include/GenericsLibrary/fstream.nhh
@@ -8,7 +8,17 @@
#include <GenericsLibrary/iterator.nhh>
-impl fstream
+// Rules for fstream implementation:
+// - fd_ is the file descriptor.
+trait fstream_traits
+{
+ let write(let data, let size);
+ let read(let region, let size);
+
+ let fd_ := 0;
+};
+
+impl fstream : fstream_traits
{
let init()
{
@@ -22,7 +32,6 @@ impl fstream
let write(let data, let size)
{
- let fd_ := __traits_current_fd(data, size);
let written := __traits_write(fd_, data, size);
return written;
@@ -30,7 +39,6 @@ impl fstream
let read(let region, let size)
{
- let fd_ := __traits_current_fd(region, size);
let readen := __traits_read(fd_, region, size);
return readen;