----------------------------------------------------------------------------- -- | -- Module : Control.Process.Flags -- Copyright : (c) 2020-2021 EMQ Technologies Co., Ltd. -- License : BSD-style (see the LICENSE file) -- -- Maintainer : Feng Lee, feng@emqx.io -- Yang M, yangm@emqx.io -- Stability : experimental -- Portability : portable -- -- The Process Flags module. -- ----------------------------------------------------------------------------- module Control.Process.Flags where import Control.Process.Types data Flag = TrapExit Boolean | ErrorHandler Atom | FullsweepAfter Integer | MinHeapSize Integer | MinBinVheapSize Integer | MaxHeapSize Integer | MsgQueueData MsgQueueData | Priority PriorityLevel | SaveCalls Integer | Sensitive Boolean data MsgQueueData = OffHeap | OnHeap data PriorityLevel = Low | Normal | High | Max -- | Set process flag, and return the old value. foreign import processFlag :: Flag -> Process Flag -- | Set trap_exit flag of Process. foreign import trapExit :: Boolean -> Process Boolean