mirror of
https://github.com/jgm/pandoc.git
synced 2026-08-25 09:47:06 +00:00
Lua: support equallity checks of LogMessage objects
The *LogMessage* type now has the appropriate metamethod.
This commit is contained in:
@@ -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"
|
||||
|
||||
Reference in New Issue
Block a user