PreviousUpNext

15.3.574  src/lib/std/src/win32/win32-io.api

## win32-io.api




# Api for hooks to Win32 IO system.


api Win32_IO = 
    api
        type hndl = win32_general::hndl
        my setFilePointer' : (hndl * win32_general::unt * win32_general::unt)
                              -> win32_general::unt

        my FILE_BEGIN:  win32_general::unt
        my FILE_CURRENT:  win32_general::unt
        my FILE_END:  win32_general::unt

        my readVec:  hndl * Int -> vector_of_one_byte_unts::Vector
        my readArr:  hndl * rw_vector_slice_of_one_byte_unts::slice -> Int
        my readVecTxt:  hndl * Int -> vector_of_chars::Vector
        my readArrTxt:  hndl * rw_vector_slice_of_chars::slice -> Int

        my close:  hndl -> Void

        my GENERIC_READ:  win32_general::unt
        my GENERIC_WRITE:  win32_general::unt

        my FILE_SHARE_READ:  win32_general::unt
        my FILE_SHARE_WRITE:  win32_general::unt

        my FILE_FLAG_WRITE_THROUGH:  win32_general::unt
        my FILE_FLAG_OVERLAPPED:  win32_general::unt
        my FILE_FLAG_NO_BUFFERING:  win32_general::unt
        my FILE_FLAG_RANDOM_ACCESS:  win32_general::unt
        my FILE_FLAG_SEQUENTIAL_SCAN:  win32_general::unt
        my FILE_FLAG_DELETE_ON_CLOSE:  win32_general::unt
        my FILE_FLAG_BACKUP_SEMANTICS:  win32_general::unt
        my FILE_FLAG_POSIX_SEMANTICS:  win32_general::unt

        my CREATE_NEW:  win32_general::unt
        my CREATE_ALWAYS:  win32_general::unt
        my OPEN_EXISTING:  win32_general::unt
        my OPEN_ALWAYS:  win32_general::unt
        my TRUNCATE_EXISTING:  win32_general::unt

        my createFile:  { name: String,
                          access: win32_general::unt,
                          share: win32_general::unt,
                          mode: win32_general::unt,
                          attributes: win32_general::unt } -> hndl

        my writeVec:  hndl * vector_slice_of_one_byte_unts::slice -> Int
        my writeArr:  hndl * rw_vector_slice_of_one_byte_unts::slice -> Int
        my writeVecTxt:  hndl * vector_slice_of_chars::slice -> Int
        my writeArrTxt:  hndl * rw_vector_slice_of_chars::slice -> Int

        my STD_INPUT_HANDLE:  win32_general::unt
        my STD_OUTPUT_HANDLE:  win32_general::unt
        my STD_ERROR_HANDLE:  win32_general::unt

        my getStdHandle:  win32_general::unt -> hndl
    end




## COPYRIGHT (c) 1996 Bell Laboratories.
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext