Monitors work in progress
parent
ff46bfaa96
commit
4af765629a
|
@ -14,7 +14,7 @@ TUPLE: buffer size ptr fill pos ;
|
|||
dup buffer-ptr free f swap set-buffer-ptr ;
|
||||
|
||||
: buffer-reset ( n buffer -- )
|
||||
[ set-buffer-fill ] keep 0 swap set-buffer-pos ;
|
||||
0 swap { set-buffer-fill set-buffer-pos } set-slots ;
|
||||
|
||||
: buffer-consume ( n buffer -- )
|
||||
[ buffer-pos + ] keep
|
||||
|
|
|
@ -20,7 +20,7 @@ TUPLE: monitor queue closed? ;
|
|||
HOOK: fill-queue io-backend ( monitor -- assoc )
|
||||
|
||||
: changed-file ( changed path -- )
|
||||
namespace [ swap add ] change-at ;
|
||||
namespace [ append ] change-at ;
|
||||
|
||||
: dequeue-change ( assoc -- path changes )
|
||||
delete-any prune natural-sort >array ;
|
||||
|
|
|
@ -70,7 +70,8 @@ M: windows-nt-io <monitor> ( path recursive? -- monitor )
|
|||
FILE_NOTIFY_INFORMATION-FileName
|
||||
FILE_NOTIFY_INFORMATION-FileNameLength
|
||||
FILE_NOTIFY_INFORMATION-Action
|
||||
} get-slots >r memory>u16-string path+ r> parse-action swap ;
|
||||
} get-slots parse-action 1array -rot
|
||||
memory>u16-string path+ ;
|
||||
|
||||
: (changed-files) ( directory buffer -- )
|
||||
2dup parse-file-notify changed-file
|
||||
|
|
Loading…
Reference in New Issue