diff druntime/import/stdc/posix/termios.d @ 760:6f33b427bfd1

Seems like hg ignores .di files, so I missed a bunch of stuff. complete druntime should be there now :)
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Wed, 12 Nov 2008 00:19:18 +0100
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/druntime/import/stdc/posix/termios.d	Wed Nov 12 00:19:18 2008 +0100
@@ -0,0 +1,523 @@
+/**
+ * D header file for POSIX.
+ *
+ * Copyright: Public Domain
+ * License:   Public Domain
+ * Authors:   Sean Kelly
+ * Standards: The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition
+ */
+module stdc.posix.termios;
+
+private import stdc.posix.config;
+public import stdc.posix.sys.types; // for pid_t
+
+extern (C):
+
+//
+// Required
+//
+/*
+cc_t
+speed_t
+tcflag_t
+
+NCCS
+
+struct termios
+{
+    tcflag_t   c_iflag;
+    tcflag_t   c_oflag;
+    tcflag_t   c_cflag;
+    tcflag_t   c_lflag;
+    cc_t[NCCS] c_cc;
+}
+
+VEOF
+VEOL
+VERASE
+VINTR
+VKILL
+VMIN
+VQUIT
+VSTART
+VSTOP
+VSUSP
+VTIME
+
+BRKINT
+ICRNL
+IGNBRK
+IGNCR
+IGNPAR
+INLCR
+INPCK
+ISTRIP
+IXOFF
+IXON
+PARMRK
+
+OPOST
+
+B0
+B50
+B75
+B110
+B134
+B150
+B200
+B300
+B600
+B1200
+B1800
+B2400
+B4800
+B9600
+B19200
+B38400
+
+CSIZE
+    CS5
+    CS6
+    CS7
+    CS8
+CSTOPB
+CREAD
+PARENB
+PARODD
+HUPCL
+CLOCAL
+
+ECHO
+ECHOE
+ECHOK
+ECHONL
+ICANON
+IEXTEN
+ISIG
+NOFLSH
+TOSTOP
+
+TCSANOW
+TCSADRAIN
+TCSAFLUSH
+
+TCIFLUSH
+TCIOFLUSH
+TCOFLUSH
+
+TCIOFF
+TCION
+TCOOFF
+TCOON
+
+speed_t cfgetispeed(in termios*);
+speed_t cfgetospeed(in termios*);
+int     cfsetispeed(termios*, speed_t);
+int     cfsetospeed(termios*, speed_t);
+int     tcdrain(int);
+int     tcflow(int, int);
+int     tcflush(int, int);
+int     tcgetattr(int, termios*);
+int     tcsendbreak(int, int);
+int     tcsetattr(int, int, in termios*);
+*/
+
+version( darwin )
+{
+    alias ubyte cc_t;
+    alias uint  speed_t;
+    alias uint  tcflag_t;
+
+    const NCCS  = 20;
+
+    struct termios
+    {
+        tcflag_t   c_iflag;
+        tcflag_t   c_oflag;
+        tcflag_t   c_cflag;
+        tcflag_t   c_lflag;
+        cc_t[NCCS] c_cc;
+        speed_t    c_ispeed;
+        speed_t    c_ospeed;
+    }
+
+    const VEOF      = 0;
+    const VEOL      = 1;
+    const VERASE    = 3;
+    const VINTR     = 8;
+    const VKILL     = 5;
+    const VMIN      = 16;
+    const VQUIT     = 9;
+    const VSTART    = 12;
+    const VSTOP     = 13;
+    const VSUSP     = 10;
+    const VTIME     = 17;
+
+    const BRKINT    = 0x0000002;
+    const ICRNL     = 0x0000100;
+    const IGNBRK    = 0x0000001;
+    const IGNCR     = 0x0000080;
+    const IGNPAR    = 0x0000004;
+    const INLCR     = 0x0000040;
+    const INPCK     = 0x0000010;
+    const ISTRIP    = 0x0000020;
+    const IXOFF     = 0x0000400;
+    const IXON      = 0x0000200;
+    const PARMRK    = 0x0000008;
+
+    const OPOST     = 0x0000001;
+
+    const B0        = 0;
+    const B50       = 50;
+    const B75       = 75;
+    const B110      = 110;
+    const B134      = 134;
+    const B150      = 150;
+    const B200      = 200;
+    const B300      = 300;
+    const B600      = 600;
+    const B1200     = 1200;
+    const B1800     = 1800;
+    const B2400     = 2400;
+    const B4800     = 4800;
+    const B9600     = 9600;
+    const B19200    = 19200;
+    const B38400    = 38400;
+
+    const CSIZE     = 0x0000300;
+    const   CS5     = 0x0000000;
+    const   CS6     = 0x0000100;
+    const   CS7     = 0x0000200;
+    const   CS8     = 0x0000300;
+    const CSTOPB    = 0x0000400;
+    const CREAD     = 0x0000800;
+    const PARENB    = 0x0001000;
+    const PARODD    = 0x0002000;
+    const HUPCL     = 0x0004000;
+    const CLOCAL    = 0x0008000;
+
+    const ECHO      = 0x00000008;
+    const ECHOE     = 0x00000002;
+    const ECHOK     = 0x00000004;
+    const ECHONL    = 0x00000010;
+    const ICANON    = 0x00000100;
+    const IEXTEN    = 0x00000400;
+    const ISIG      = 0x00000080;
+    const NOFLSH    = 0x80000000;
+    const TOSTOP    = 0x00400000;
+
+    const TCSANOW   = 0;
+    const TCSADRAIN = 1;
+    const TCSAFLUSH = 2;
+
+    const TCIFLUSH  = 1;
+    const TCOFLUSH  = 2;
+    const TCIOFLUSH = 3;
+
+    const TCIOFF    = 3;
+    const TCION     = 4;
+    const TCOOFF    = 1;
+    const TCOON     = 2;
+
+    speed_t cfgetispeed(in termios*);
+    speed_t cfgetospeed(in termios*);
+    int     cfsetispeed(termios*, speed_t);
+    int     cfsetospeed(termios*, speed_t);
+    int     tcdrain(int);
+    int     tcflow(int, int);
+    int     tcflush(int, int);
+    int     tcgetattr(int, termios*);
+    int     tcsendbreak(int, int);
+    int     tcsetattr(int, int, in termios*);
+
+}
+else version( linux )
+{
+    alias ubyte cc_t;
+    alias uint  speed_t;
+    alias uint  tcflag_t;
+
+    const NCCS  = 32;
+
+    struct termios
+    {
+        tcflag_t   c_iflag;
+        tcflag_t   c_oflag;
+        tcflag_t   c_cflag;
+        tcflag_t   c_lflag;
+        cc_t       c_line;
+        cc_t[NCCS] c_cc;
+        speed_t    c_ispeed;
+        speed_t    c_ospeed;
+    }
+
+    const VEOF      = 4;
+    const VEOL      = 11;
+    const VERASE    = 2;
+    const VINTR     = 0;
+    const VKILL     = 3;
+    const VMIN      = 6;
+    const VQUIT     = 1;
+    const VSTART    = 8;
+    const VSTOP     = 9;
+    const VSUSP     = 10;
+    const VTIME     = 5;
+
+    const BRKINT    = 0000002;
+    const ICRNL     = 0000400;
+    const IGNBRK    = 0000001;
+    const IGNCR     = 0000200;
+    const IGNPAR    = 0000004;
+    const INLCR     = 0000100;
+    const INPCK     = 0000020;
+    const ISTRIP    = 0000040;
+    const IXOFF     = 0010000;
+    const IXON      = 0002000;
+    const PARMRK    = 0000010;
+
+    const OPOST     = 0000001;
+
+    const B0        = 0000000;
+    const B50       = 0000001;
+    const B75       = 0000002;
+    const B110      = 0000003;
+    const B134      = 0000004;
+    const B150      = 0000005;
+    const B200      = 0000006;
+    const B300      = 0000007;
+    const B600      = 0000010;
+    const B1200     = 0000011;
+    const B1800     = 0000012;
+    const B2400     = 0000013;
+    const B4800     = 0000014;
+    const B9600     = 0000015;
+    const B19200    = 0000016;
+    const B38400    = 0000017;
+
+    const CSIZE     = 0000060;
+    const   CS5     = 0000000;
+    const   CS6     = 0000020;
+    const   CS7     = 0000040;
+    const   CS8     = 0000060;
+    const CSTOPB    = 0000100;
+    const CREAD     = 0000200;
+    const PARENB    = 0000400;
+    const PARODD    = 0001000;
+    const HUPCL     = 0002000;
+    const CLOCAL    = 0004000;
+
+    const ECHO      = 0000010;
+    const ECHOE     = 0000020;
+    const ECHOK     = 0000040;
+    const ECHONL    = 0000100;
+    const ICANON    = 0000002;
+    const IEXTEN    = 0100000;
+    const ISIG      = 0000001;
+    const NOFLSH    = 0000200;
+    const TOSTOP    = 0000400;
+
+    const TCSANOW   = 0;
+    const TCSADRAIN = 1;
+    const TCSAFLUSH = 2;
+
+    const TCIFLUSH  = 0;
+    const TCOFLUSH  = 1;
+    const TCIOFLUSH = 2;
+
+    const TCIOFF    = 2;
+    const TCION     = 3;
+    const TCOOFF    = 0;
+    const TCOON     = 1;
+
+    speed_t cfgetispeed(in termios*);
+    speed_t cfgetospeed(in termios*);
+    int     cfsetispeed(termios*, speed_t);
+    int     cfsetospeed(termios*, speed_t);
+    int     tcdrain(int);
+    int     tcflow(int, int);
+    int     tcflush(int, int);
+    int     tcgetattr(int, termios*);
+    int     tcsendbreak(int, int);
+    int     tcsetattr(int, int, in termios*);
+}
+else version ( freebsd )
+{
+    alias ubyte cc_t;
+    alias uint  speed_t;
+    alias uint  tcflag_t;
+
+    const NCCS  = 20;
+
+    struct termios
+    {
+        tcflag_t   c_iflag;
+        tcflag_t   c_oflag;
+        tcflag_t   c_cflag;
+        tcflag_t   c_lflag;
+        cc_t[NCCS] c_cc;
+        speed_t    c_ispeed;
+        speed_t    c_ospeed;
+    }
+
+    const VEOF      = 0;
+    const VEOL      = 1;
+    const VERASE    = 3;
+    const VINTR     = 8;
+    const VKILL     = 5;
+    const VMIN      = 16;
+    const VQUIT     = 9;
+    const VSTART    = 12;
+    const VSTOP     = 13;
+    const VSUSP     = 10;
+    const VTIME     = 17;
+
+    const BRKINT    = 0x0000002;
+    const ICRNL     = 0x0000100;
+    const IGNBRK    = 0x0000001;
+    const IGNCR     = 0x0000080;
+    const IGNPAR    = 0x0000004;
+    const INLCR     = 0x0000040;
+    const INPCK     = 0x0000010;
+    const ISTRIP    = 0x0000020;
+    const IXOFF     = 0x0000400;
+    const IXON      = 0x0000200;
+    const PARMRK    = 0x0000008;
+
+    const OPOST     = 0x0000001;
+
+    const B0        = 0;
+    const B50       = 50;
+    const B75       = 75;
+    const B110      = 110;
+    const B134      = 134;
+    const B150      = 150;
+    const B200      = 200;
+    const B300      = 300;
+    const B600      = 600;
+    const B1200     = 1200;
+    const B1800     = 1800;
+    const B2400     = 2400;
+    const B4800     = 4800;
+    const B9600     = 9600;
+    const B19200    = 19200;
+    const B38400    = 38400;
+
+    const CSIZE     = 0x0000300;
+    const   CS5     = 0x0000000;
+    const   CS6     = 0x0000100;
+    const   CS7     = 0x0000200;
+    const   CS8     = 0x0000300;
+    const CSTOPB    = 0x0000400;
+    const CREAD     = 0x0000800;
+    const PARENB    = 0x0001000;
+    const PARODD    = 0x0002000;
+    const HUPCL     = 0x0004000;
+    const CLOCAL    = 0x0008000;
+
+    const ECHO      = 0x00000008;
+    const ECHOE     = 0x00000002;
+    const ECHOK     = 0x00000004;
+    const ECHONL    = 0x00000010;
+    const ICANON    = 0x00000100;
+    const IEXTEN    = 0x00000400;
+    const ISIG      = 0x00000080;
+    const NOFLSH    = 0x80000000;
+    const TOSTOP    = 0x00400000;
+
+    const TCSANOW   = 0;
+    const TCSADRAIN = 1;
+    const TCSAFLUSH = 2;
+
+    const TCIFLUSH  = 1;
+    const TCOFLUSH  = 2;
+    const TCIOFLUSH = 3;
+
+    const TCIOFF    = 3;
+    const TCION     = 4;
+    const TCOOFF    = 1;
+    const TCOON     = 2;
+
+    speed_t cfgetispeed(in termios*);
+    speed_t cfgetospeed(in termios*);
+    int     cfsetispeed(termios*, speed_t);
+    int     cfsetospeed(termios*, speed_t);
+    int     tcdrain(int);
+    int     tcflow(int, int);
+    int     tcflush(int, int);
+    int     tcgetattr(int, termios*);
+    int     tcsendbreak(int, int);
+    int     tcsetattr(int, int, in termios*);
+
+}
+
+//
+// XOpen (XSI)
+//
+/*
+IXANY
+
+ONLCR
+OCRNL
+ONOCR
+ONLRET
+OFILL
+NLDLY
+    NL0
+    NL1
+CRDLY
+    CR0
+    CR1
+    CR2
+    CR3
+TABDLY
+    TAB0
+    TAB1
+    TAB2
+    TAB3
+BSDLY
+    BS0
+    BS1
+VTDLY
+    VT0
+    VT1
+FFDLY
+    FF0
+    FF1
+
+pid_t   tcgetsid(int);
+*/
+
+version( linux )
+{
+    const IXANY     = 0004000;
+
+    const ONLCR     = 0000004;
+    const OCRNL     = 0000010;
+    const ONOCR     = 0000020;
+    const ONLRET    = 0000040;
+    const OFILL     = 0000100;
+    const NLDLY     = 0000400;
+    const   NL0     = 0000000;
+    const   NL1     = 0000400;
+    const CRDLY     = 0003000;
+    const   CR0     = 0000000;
+    const   CR1     = 0001000;
+    const   CR2     = 0002000;
+    const   CR3     = 0003000;
+    const TABDLY    = 0014000;
+    const   TAB0    = 0000000;
+    const   TAB1    = 0004000;
+    const   TAB2    = 0010000;
+    const   TAB3    = 0014000;
+    const BSDLY     = 0020000;
+    const   BS0     = 0000000;
+    const   BS1     = 0020000;
+    const VTDLY     = 0040000;
+    const   VT0     = 0000000;
+    const   VT1     = 0040000;
+    const FFDLY     = 0100000;
+    const   FF0     = 0000000;
+    const   FF1     = 0100000;
+
+    pid_t   tcgetsid(int);
+}