on f4401ac help sign in
elk/compiler/src/Elm/Float.hs
51 lines 691 B history raw
1{-# OPTIONS_GHC -Wall #-}
2{-# LANGUAGE EmptyDataDecls, FlexibleInstances #-}
3module Elm.Float
4 ( Float
5 , fromPtr
6 , toBuilder
7 )
8 where
11import Prelude hiding (Float)
12import Data.Binary (Binary, get, put)
13import qualified Data.ByteString.Builder as B
14import qualified Data.Utf8 as Utf8
15import Data.Word (Word8)
16import Foreign.Ptr (Ptr)
20-- FLOATS
23type Float =
24 Utf8.Utf8 ELM_FLOAT
27data ELM_FLOAT
31-- HELPERS
34fromPtr :: Ptr Word8 -> Ptr Word8 -> Float
35fromPtr =
36 Utf8.fromPtr
39{-# INLINE toBuilder #-}
40toBuilder :: Float -> B.Builder
41toBuilder =
42 Utf8.toBuilder
46-- BINARY
49instance Binary (Utf8.Utf8 ELM_FLOAT) where
50 get = Utf8.getUnder256
51 put = Utf8.putUnder256