diff options
| -rw-r--r-- | pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal/LogMessage.hs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal/LogMessage.hs b/pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal/LogMessage.hs index 752f136f7..788c56bf4 100644 --- a/pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal/LogMessage.hs +++ b/pandoc-lua-engine/src/Text/Pandoc/Lua/Marshal/LogMessage.hs @@ -13,6 +13,8 @@ module Text.Pandoc.Lua.Marshal.LogMessage , typeLogMessage ) where +import Control.Applicative (optional) +import Data.Maybe (fromMaybe) import HsLua import Text.Pandoc.Logging (LogMessage, showLogMessage) import qualified Data.Aeson as Aeson @@ -24,6 +26,11 @@ typeLogMessage = deftype "LogMessage" ### liftPure showLogMessage <#> udparam typeLogMessage "msg" "object" =#> functionResult pushText "string" "stringified log message" + , operation Eq $ lambda + ### liftPure2 (\a b -> fromMaybe False ((==) <$> a <*> b)) + <#> parameter (optional . peekLogMessage) "a" "LogMessage" "" + <#> parameter (optional . peekLogMessage) "b" "LogMessage" "" + =#> functionResult pushBool "boolean" "whether the two are equal" , operation (CustomOperation "__tojson") $ lambda ### liftPure Aeson.encode <#> udparam typeLogMessage "msg" "object" |
