+8
-3
@@ -31,6 +31,7 @@ module Gyehoek.Wasm
|
||||
, emit
|
||||
, renderModule
|
||||
, wat
|
||||
, wats
|
||||
)
|
||||
where
|
||||
|
||||
@@ -69,6 +70,7 @@ import Data.Data (Data)
|
||||
import Data.Functor.Foldable (cata)
|
||||
import Gyehoek.Sexp (sx)
|
||||
import qualified Language.Sexp as SL
|
||||
import Data.Foldable (traverse_)
|
||||
|
||||
|
||||
newtype Module = MkModule { inner :: Vector Sexp }
|
||||
@@ -137,12 +139,12 @@ defineType = send . DefineType
|
||||
defineGlobal :: GenMod :> es => Sexp -> Eff es Idx
|
||||
defineGlobal = send . DefineGlobal
|
||||
|
||||
emit :: GenMod :> es => Sexp -> Eff es ()
|
||||
emit = send . Emit
|
||||
emit :: GenMod :> es => List Sexp -> Eff es ()
|
||||
emit = traverse_ (send . Emit)
|
||||
|
||||
appendAndIncrement
|
||||
:: State GenModState :> es
|
||||
=> LensLike' ((,) _) GenModState Natural
|
||||
=> LensLike' ((,) Natural) GenModState Natural
|
||||
-> Sexp
|
||||
-> Eff es Idx
|
||||
appendAndIncrement l s =
|
||||
@@ -197,3 +199,6 @@ expr = Gyehoek.Sexp.makeSxs
|
||||
|
||||
wat :: QuasiQuoter
|
||||
wat = Gyehoek.Sexp.makeSx [|| id ||]
|
||||
|
||||
wats :: QuasiQuoter
|
||||
wats = Gyehoek.Sexp.makeSxs [|| id ||]
|
||||
|
||||
Reference in New Issue
Block a user