factor/extra/io/serial/serial.factor

24 lines
702 B
Factor
Raw Normal View History

2008-08-13 16:18:50 -04:00
! Copyright (C) 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
USING: accessors alien.c-types assocs combinators destructors
2008-09-05 20:29:14 -04:00
kernel math math.bitwise math.parser sequences summary system
2008-08-13 16:18:50 -04:00
vocabs.loader ;
2009-02-22 18:50:29 -05:00
IN: io.serial
2008-08-13 16:18:50 -04:00
TUPLE: serial stream path baud
termios iflag oflag cflag lflag ;
ERROR: invalid-baud baud ;
M: invalid-baud summary ( invalid-baud -- string )
2009-02-22 18:50:29 -05:00
baud>> number>string
"Baud rate " " not supported" surround ;
2008-08-13 16:18:50 -04:00
HOOK: lookup-baud os ( m -- n )
HOOK: open-serial os ( serial -- serial' )
M: serial dispose ( serial -- ) stream>> dispose ;
{
2009-02-22 18:50:29 -05:00
{ [ os unix? ] [ "io.serial.unix" ] }
{ [ os windows? ] [ "io.serial.windows" ] }
2008-08-13 16:18:50 -04:00
} cond require