Fix Windows bootstrap

db4
U-SLAVA-DFB8FF805\Slava 2008-12-03 06:52:16 -06:00
parent 7b380c526e
commit da9b38caae
3 changed files with 16 additions and 15 deletions

13
basis/io/windows/nt/monitors/monitors.factor Normal file → Executable file
View File

@ -1,11 +1,12 @@
! Copyright (C) 2008 Doug Coleman, Slava Pestov. ! Copyright (C) 2008 Doug Coleman, Slava Pestov.
! See http://factorcode.org/license.txt for BSD license. ! See http://factorcode.org/license.txt for BSD license.
USING: alien alien.c-types libc destructors locals kernel math USING: alien alien.c-types alien.strings libc destructors locals
assocs namespaces make continuations sequences hashtables kernel math assocs namespaces make continuations sequences
sorting arrays combinators math.bitwise strings system accessors hashtables sorting arrays combinators math.bitwise strings
threads splitting io.backend io.windows io.windows.nt.backend system accessors threads splitting io.backend io.windows
io.windows.nt.files io.monitors io.ports io.buffers io.files io.windows.nt.backend io.windows.nt.files io.monitors io.ports
io.timeouts io windows windows.kernel32 windows.types ; io.buffers io.files io.timeouts io.encodings.string io
windows windows.kernel32 windows.types ;
IN: io.windows.nt.monitors IN: io.windows.nt.monitors
: open-directory ( path -- handle ) : open-directory ( path -- handle )

12
basis/windows/com/syntax/syntax.factor Normal file → Executable file
View File

@ -1,7 +1,7 @@
USING: alien alien.c-types effects kernel windows.ole32 USING: alien alien.c-types alien.accessors effects kernel
parser lexer splitting grouping sequences namespaces windows.ole32 parser lexer splitting grouping sequences
assocs quotations generalizations accessors words macros alien.syntax namespaces assocs quotations generalizations accessors words
fry arrays ; macros alien.syntax fry arrays layouts math ;
IN: windows.com.syntax IN: windows.com.syntax
<PRIVATE <PRIVATE
@ -10,9 +10,9 @@ C-STRUCT: com-interface
{ "void*" "vtbl" } ; { "void*" "vtbl" } ;
MACRO: com-invoke ( n return parameters -- ) MACRO: com-invoke ( n return parameters -- )
dup length -roll [ 2nip length ] 3keep
'[ '[
_ npick com-interface-vtbl _ swap void*-nth _ _ _ npick com-interface-vtbl _ cell * alien-cell _ _
"stdcall" alien-indirect "stdcall" alien-indirect
] ; ] ;

View File

@ -1,7 +1,7 @@
USING: alien alien.syntax alien.c-types alien.strings math USING: alien alien.syntax alien.c-types alien.strings math
kernel sequences windows windows.types debugger io accessors kernel sequences windows windows.types debugger io accessors
math.order namespaces make math.parser windows.kernel32 math.order namespaces make math.parser windows.kernel32
combinators locals specialized-arrays.uchar ; combinators locals specialized-arrays.direct.uchar ;
IN: windows.ole32 IN: windows.ole32
LIBRARY: ole32 LIBRARY: ole32
@ -137,8 +137,8 @@ M: ole32-error error.
:: (guid-section>guid) ( string guid start end quot -- ) :: (guid-section>guid) ( string guid start end quot -- )
start end string subseq hex> guid quot call ; inline start end string subseq hex> guid quot call ; inline
: (guid-byte>guid) ( string guid start end byte -- ) :: (guid-byte>guid) ( string guid start end byte -- )
start end string subseq hex> guid byte set-nth ; inline start end string subseq hex> byte guid set-nth ; inline
: string>guid ( string -- guid ) : string>guid ( string -- guid )
"GUID" <c-object> [ "GUID" <c-object> [