LslPlus-0.2.0: src/Language/Lsl/Internal/BuiltInModules.hs
{-# OPTIONS_GHC -XQuasiQuotes #-}
module Language.Lsl.Internal.BuiltInModules(avEventGen) where
import Language.Lsl.Syntax
import Language.Lsl.QQ(lslm)
avEventGenAST = [$lslm|$module
string mkTouch(string primKey, float duration) {
return "AvatarTouch {avatarTouchPrimKey = \"" + primKey + "\", avatarTouchDuration = " + (string) duration + "}";
}
string mkWhisper(integer chan, string message) {
return "AvatarWhisper { avatarChatChannel = " + (string)chan + ", avatarChatMessage = \"" + message + "\"}";
}
string mkSay(integer chan, string message) {
return "AvatarSay { avatarChatChannel = " + (string)chan + ", avatarChatMessage = \"" + message + "\"}";
}
string mkShout(integer chan, string message) {
return "AvatarShout { avatarChatChannel = " + (string)chan + ", avatarChatMessage = \"" + message + "\"}";
}
string mkPay(string primKey, integer amount) {
return "AvatarPay { avatarPayPrimKey = \"" + primKey + "\", avatarPayAmount = " + (string) amount + "}";
}
string mkControl(integer newControlBits) {
return "AvatarControl { avatarNewControlBits = " + (string) newControlBits + "}";
}
|]
avEventGen = ("$avEventGen", avEventGenAST)