]> gitweb.factorcode.org Git - factor.git/blobdiff - native/fd.h
i/o refactoring continues
[factor.git] / native / fd.h
index 03ecc8056227712af3098687745f137c2f4ab2d6..631306a73f1191f57751b055d844e2962dc0b682 100644 (file)
@@ -1,24 +1,19 @@
 #define LINE_SIZE 80
 #define BUF_SIZE (32 * 1024)
 
+bool can_read_line(PORT* port);
+void primitive_can_read_line(void);
 bool read_step(PORT* port);
+bool read_line_step(PORT* port);
 
-/* read_line_step() return values */
-typedef enum {
-       READLINE_WAIT, /* means we have to wait for more I/O */
-       READLINE_AGAIN,
-       READLINE_EOL,
-       READLINE_EOF
-} READLINE_STAT;
-
-READLINE_STAT read_line_step(PORT* port);
 bool write_step(PORT* port);
 void flush_buffer(PORT* port);
 void init_io(void);
 void primitive_read_line_fd_8(void);
+bool can_write(PORT* port, FIXNUM len);
+void primitive_can_write(void);
 void write_fd_char_8(PORT* port, FIXNUM ch);
 void write_fd_string_8(PORT* port, STRING* str);
 void primitive_write_fd_8(void);
-void primitive_flush_fd(void);
 void primitive_close_fd(void);
-void set_nonblocking(int fd);
+void io_error(PORT* port, const char* func);