extism-1.2.1.0: Extism bindings
Safe HaskellNone
LanguageHaskell2010

Extism.Encoding

Description

Extism.Encoding handles how values are encoded to be copied in and out of Wasm linear memory

Synopsis

Documentation

fromByteString :: ByteString -> String Source #

Helper function to convert a ByteString to a String

toByteString :: String -> ByteString Source #

Helper function to convert a String to a ByteString

newtype Error Source #

Extism error

Constructors

ExtismError String 

Instances

Instances details
Show Error Source # 
Instance details

Defined in Extism.Encoding

Methods

showsPrec :: Int -> Error -> ShowS #

show :: Error -> String #

showList :: [Error] -> ShowS #

Eq Error Source # 
Instance details

Defined in Extism.Encoding

Methods

(==) :: Error -> Error -> Bool #

(/=) :: Error -> Error -> Bool #

type Result a = Either Error a Source #

Result type

class ToBytes a where Source #

Methods

toBytes :: a -> ByteString Source #

Instances

Instances details
ToBytes Int32 Source # 
Instance details

Defined in Extism.Encoding

ToBytes Int64 Source # 
Instance details

Defined in Extism.Encoding

ToBytes Word32 Source # 
Instance details

Defined in Extism.Encoding

ToBytes Word64 Source # 
Instance details

Defined in Extism.Encoding

ToBytes ByteString Source # 
Instance details

Defined in Extism.Encoding

ToBytes () Source # 
Instance details

Defined in Extism.Encoding

Methods

toBytes :: () -> ByteString Source #

ToBytes Double Source # 
Instance details

Defined in Extism.Encoding

ToBytes Float Source # 
Instance details

Defined in Extism.Encoding

Data a => ToBytes (JSON a) Source # 
Instance details

Defined in Extism.Encoding

Methods

toBytes :: JSON a -> ByteString Source #

ToBytes [Char] Source # 
Instance details

Defined in Extism.Encoding

Methods

toBytes :: [Char] -> ByteString Source #

class FromBytes a where Source #

Instances

Instances details
FromBytes Int32 Source # 
Instance details

Defined in Extism.Encoding

FromBytes Int64 Source # 
Instance details

Defined in Extism.Encoding

FromBytes Word32 Source # 
Instance details

Defined in Extism.Encoding

FromBytes Word64 Source # 
Instance details

Defined in Extism.Encoding

FromBytes ByteString Source # 
Instance details

Defined in Extism.Encoding

FromBytes () Source # 
Instance details

Defined in Extism.Encoding

FromBytes Double Source # 
Instance details

Defined in Extism.Encoding

FromBytes Float Source # 
Instance details

Defined in Extism.Encoding

Data a => FromBytes (JSON a) Source # 
Instance details

Defined in Extism.Encoding

FromBytes [Char] Source # 
Instance details

Defined in Extism.Encoding

class (ToBytes a, FromBytes a) => Encoding a Source #

newtype JSON x Source #

Constructors

JSON x 

Instances

Instances details
Data a => FromBytes (JSON a) Source # 
Instance details

Defined in Extism.Encoding

Data a => ToBytes (JSON a) Source # 
Instance details

Defined in Extism.Encoding

Methods

toBytes :: JSON a -> ByteString Source #