úÎ2©01,      !"#$%&'()*+ Safe-Inferred +An  with one or more s.And  with one or more s.£Determines whether updates to the mapping are visible to other processes mapping the same region, and whether updates are carried through to the underlying file.9This behavior is determined by including exactly one of  and . tDescribes the desired memory protection of the mapping (and must not conflict with the open mode of the file).Can be combined using the , instance `(<>)`. Exception thrown when munmap fails.Exception thrown when mmap fails.munmap - unmap mmap 'ed memory.OThis is the raw C function, and its return value must be checked according to man mmap.See < for a variant that turns bad return values into exceptions.mmap$ - map files or devices into memory.)The returned memory should be freed with  after use.OThis is the raw C function, and its return value must be checked according to man mmap.See < for a variant that turns bad return values into exceptions.Convenience around  , throwing a  on a negative return value.Convenience around  , throwing a   on a negative return value.Pages may be executed.Pages may be read.Pages may be written.Pages may not be accessed.»Share this mapping. Updates to the mapping are visible to other processes that map the file, and are carried through to the underlying file. The file may not actually be updated until msync(2) or munmap() is called..íCreate a private copy-on-write mapping. Updates to the mapping are not visible to other processes mapping the same file, and are not carried through to the underlying file. It is unspecified whether changes made to the file after the mmap()( call are visible in the mapped region.See man mmap for a description.See man mmap for a description.See man mmap for a description.See man mmap for a description. See man mmap for a description.!See man mmap for a description."See man mmap for a description.#See man mmap for a description.$See man mmap for a description.%See man mmap for a description.&Create  to be passed to  from an  and one or more s (combine them via `(<>)`, - for none).+  void *addr size_t length void *addr size_t lengthint prot int flags,int fd off_t offset !"#$%&'()*'  !"#$%&+* ) ( !"#$%'&    !"#$%&'()*None+6openSharedMemory shmemPath size openFlags openFileMode&: Creates a shared memory file using shm_open at  shmemPath of size bytes, returning the created . and / pointing to the mmap 'ed memory.The .0 can be used to resize the shared memory region.When the returned /% is garbage collected, the memory is munmap'ed, but the .6 remains open until it is closed or garbage collected. Closing the ." will not invalidate the returned /.++++0        !"#$%&'()*+)*,)-.)/01shared-memory-0.1.0.0MMAP SharedMemory MmapFlags unMmapFlagsMmapOptionalFlagunMmapOptionalFlagMmapSharedFlagunMmapSharedFlag ProtOption unProtOptionMunmapExceptionmunmapExceptionSizemunmapExceptionPtr MmapExceptionc_munmapc_mmapmmapmunmapprotExecprotRead protWriteprotNone mapShared mapPrivatemap32Bit mapAnonymous mapDenywritemapFilemapFixed mapHugetlb mapLocked mapNonblock mapNoreservemapStack mkMmapFlags$fMonoidMmapOptionalFlag$fMonoidProtOption$fExceptionMunmapException$fExceptionMmapExceptionopenSharedMemorybase Data.MonoidMonoidmemptySystem.Posix.TypesFdGHC.ForeignPtr ForeignPtr