packages feed

fay-0.19: tests/Defined.hs

import           FFI

data R = R (Defined Double)

main :: Fay ()
main = do
  printD $ Defined (1 :: Double)
  printS $ Defined "Hello, World!"
  printSS $ Defined ["Hello,","World!"]
  printD $ (Undefined :: Defined Double)
  print $ R (Defined 1)
  print $ R Undefined
  print $ r1
  print $ r2
  return ()

printD :: Defined Double -> Fay ()
printD = ffi "console.log(%1)"

printS :: Defined String -> Fay ()
printS = ffi "console.log(%1)"

printSS :: Defined [String] -> Fay ()
printSS = ffi "console.log(%1)"

r1 :: R
r1 = ffi "{ instance: 'R', slot1 : 1 }"

r2 :: R
r2 = ffi "{ instance : 'R' }"