summaryrefslogtreecommitdiff
path: root/source/cstdio.elna
diff options
context:
space:
mode:
Diffstat (limited to 'source/cstdio.elna')
-rw-r--r--source/cstdio.elna29
1 files changed, 29 insertions, 0 deletions
diff --git a/source/cstdio.elna b/source/cstdio.elna
new file mode 100644
index 0000000..c7507ff
--- /dev/null
+++ b/source/cstdio.elna
@@ -0,0 +1,29 @@
+(* This Source Code Form is subject to the terms of the Mozilla Public License,
+ v. 2.0. If a copy of the MPL was not distributed with this file, You can
+ obtain one at https://mozilla.org/MPL/2.0/. *)
+module;
+
+type
+ FILE* = record end;
+
+var
+ stdin*: ^FILE := extern;
+ stdout*: ^FILE := extern;
+ stderr*: ^FILE := extern;
+
+proc fopen*(pathname: ^Char, mode: ^Char) -> ^FILE; extern;
+proc fclose*(stream: ^FILE) -> Int; extern;
+proc fseek*(stream: ^FILE, off: Int, whence: Int) -> Int; extern;
+proc rewind*(stream: ^FILE); extern;
+proc ftell*(stream: ^FILE) -> Int; extern;
+proc fflush*(stream: ^FILE) -> Int; extern;
+
+proc fread*(ptr: Pointer, size: Word, nmemb: Word, stream: ^FILE) -> Word; extern;
+proc fwrite*(ptr: Pointer, size: Word, nitems: Word, stream: ^FILE) -> Word; extern;
+
+proc perror(s: ^Char); extern;
+
+proc puts(s: ^Char) -> Int; extern;
+proc putchar(c: Int) -> Int; extern;
+
+end.