Data.ArrayBuffer.Class
- Package
- purescript-arraybuffer-class
- Repository
- athanclark/purescript-arraybuffer-class
#EncodeArrayBuffer Source
class EncodeArrayBuffer a whereMembers
putArrayBuffer :: ArrayBuffer -> ByteOffset -> a -> Effect (Maybe ByteLength)
Instances
EncodeArrayBuffer Uint32BEEncodeArrayBuffer Uint32LEEncodeArrayBuffer Uint16BEEncodeArrayBuffer Uint16LEEncodeArrayBuffer Uint8EncodeArrayBuffer Int32BEEncodeArrayBuffer Int32LEEncodeArrayBuffer Int16BEEncodeArrayBuffer Int16LEEncodeArrayBuffer Int8EncodeArrayBuffer Float32BEEncodeArrayBuffer Float32LEEncodeArrayBuffer Float64BEEncodeArrayBuffer Float64LEEncodeArrayBuffer UnitEncodeArrayBuffer VoidEncodeArrayBuffer BooleanEncodeArrayBuffer OrderingEncodeArrayBuffer CodePointEncodeArrayBuffer CharEncodeArrayBuffer String(EncodeArrayBuffer a) => EncodeArrayBuffer (Additive a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Multiplicative a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Conj a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Disj a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Dual a)(EncodeArrayBuffer (c a a)) => EncodeArrayBuffer (Endo c a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Maybe a)(EncodeArrayBuffer a, EncodeArrayBuffer b) => EncodeArrayBuffer (Tuple a b)(EncodeArrayBuffer a, EncodeArrayBuffer b) => EncodeArrayBuffer (Either a b)(EncodeArrayBuffer a) => EncodeArrayBuffer (Array a)(EncodeArrayBuffer a) => EncodeArrayBuffer (List a)(EncodeArrayBuffer a) => EncodeArrayBuffer (NonEmpty Array a)(EncodeArrayBuffer a) => EncodeArrayBuffer (NonEmpty List a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Object a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Set a)(EncodeArrayBuffer a, EncodeArrayBuffer k) => EncodeArrayBuffer (Map k a)(EncodeArrayBuffer a) => EncodeArrayBuffer (HashSet a)(EncodeArrayBuffer k, EncodeArrayBuffer a) => EncodeArrayBuffer (HashMap k a)(GEncodeArrayBuffer row list, RowToList row list) => EncodeArrayBuffer (Record row)EncodeArrayBuffer ArrayBufferEncodeArrayBuffer DataViewEncodeArrayBuffer (ArrayView a)EncodeArrayBuffer (AV a t)EncodeArrayBuffer NoConstructorsEncodeArrayBuffer NoArguments(EncodeArrayBuffer a, EncodeArrayBuffer b) => EncodeArrayBuffer (Sum a b)(EncodeArrayBuffer a, EncodeArrayBuffer b) => EncodeArrayBuffer (Product a b)(EncodeArrayBuffer a) => EncodeArrayBuffer (Constructor name a)(EncodeArrayBuffer a) => EncodeArrayBuffer (Argument a)
#DecodeArrayBuffer Source
class DecodeArrayBuffer a whereMembers
readArrayBuffer :: ArrayBuffer -> ByteOffset -> Effect (Maybe a)Returns the value parsed if successful. This function should strictly read the
ArrayBuffer, and shouldn't attempt to write to it.
Instances
DecodeArrayBuffer Uint32BEDecodeArrayBuffer Uint32LEDecodeArrayBuffer Uint16BEDecodeArrayBuffer Uint16LEDecodeArrayBuffer Uint8DecodeArrayBuffer Int32BEDecodeArrayBuffer Int32LEDecodeArrayBuffer Int16BEDecodeArrayBuffer Int16LEDecodeArrayBuffer Int8DecodeArrayBuffer Float32BEDecodeArrayBuffer Float32LEDecodeArrayBuffer Float64BEDecodeArrayBuffer Float64LEDecodeArrayBuffer UnitDecodeArrayBuffer VoidDecodeArrayBuffer BooleanDecodeArrayBuffer OrderingDecodeArrayBuffer CodePointDecodeArrayBuffer CharDecodeArrayBuffer String(DecodeArrayBuffer a) => DecodeArrayBuffer (Additive a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Multiplicative a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Conj a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Disj a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Dual a)(DecodeArrayBuffer (c a a)) => DecodeArrayBuffer (Endo c a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Maybe a)(DecodeArrayBuffer a, DecodeArrayBuffer b, DynamicByteLength a, DynamicByteLength b) => DecodeArrayBuffer (Tuple a b)(DecodeArrayBuffer a, DecodeArrayBuffer b, DynamicByteLength a, DynamicByteLength b) => DecodeArrayBuffer (Either a b)(DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (Array a)(DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (List a)(DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (NonEmpty Array a)(DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (NonEmpty List a)(DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (Object a)(Ord a, DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (Set a)(Ord k, DecodeArrayBuffer k, DecodeArrayBuffer a, DynamicByteLength k, DynamicByteLength a) => DecodeArrayBuffer (Map k a)(Hashable a, DecodeArrayBuffer a, DynamicByteLength a) => DecodeArrayBuffer (HashSet a)(Hashable k, DecodeArrayBuffer k, DecodeArrayBuffer a, DynamicByteLength k, DynamicByteLength a) => DecodeArrayBuffer (HashMap k a)(GDecodeArrayBuffer row list, RowToList row list) => DecodeArrayBuffer (Record row)DecodeArrayBuffer ArrayBufferDecodeArrayBuffer DataView(TypedArray a t) => DecodeArrayBuffer (ArrayView a)(TypedArray a t) => DecodeArrayBuffer (AV a t)DecodeArrayBuffer NoConstructorsDecodeArrayBuffer NoArguments(DecodeArrayBuffer a, DecodeArrayBuffer b, DynamicByteLength a, DynamicByteLength b) => DecodeArrayBuffer (Sum a b)(DecodeArrayBuffer a, DecodeArrayBuffer b, DynamicByteLength a, DynamicByteLength b) => DecodeArrayBuffer (Product a b)(DecodeArrayBuffer a) => DecodeArrayBuffer (Constructor name a)(DecodeArrayBuffer a) => DecodeArrayBuffer (Argument a)
#DynamicByteLength Source
class DynamicByteLength a whereMembers
byteLength :: a -> Effect ByteLengthGet the byte length of a value at runtime. Should be identical for read and written values.
Instances
DynamicByteLength Uint32BEDynamicByteLength Uint32LEDynamicByteLength Uint16BEDynamicByteLength Uint16LEDynamicByteLength Uint8DynamicByteLength Int32BEDynamicByteLength Int32LEDynamicByteLength Int16BEDynamicByteLength Int16LEDynamicByteLength Int8DynamicByteLength Float32BEDynamicByteLength Float32LEDynamicByteLength Float64BEDynamicByteLength Float64LEDynamicByteLength UnitDynamicByteLength VoidDynamicByteLength BooleanDynamicByteLength OrderingDynamicByteLength CodePointDynamicByteLength CharDynamicByteLength String(DynamicByteLength a) => DynamicByteLength (Maybe a)(DynamicByteLength a, DynamicByteLength b) => DynamicByteLength (Tuple a b)(DynamicByteLength a, DynamicByteLength b) => DynamicByteLength (Either a b)(DynamicByteLength a) => DynamicByteLength (Array a)(DynamicByteLength a) => DynamicByteLength (List a)(DynamicByteLength a) => DynamicByteLength (NonEmpty Array a)(DynamicByteLength a) => DynamicByteLength (NonEmpty List a)(DynamicByteLength a) => DynamicByteLength (Additive a)(DynamicByteLength a) => DynamicByteLength (Multiplicative a)(DynamicByteLength (c a a)) => DynamicByteLength (Endo c a)(DynamicByteLength a) => DynamicByteLength (Dual a)(DynamicByteLength a) => DynamicByteLength (Disj a)(DynamicByteLength a) => DynamicByteLength (Conj a)(DynamicByteLength a) => DynamicByteLength (Object a)(DynamicByteLength a) => DynamicByteLength (Set a)(DynamicByteLength a, DynamicByteLength k) => DynamicByteLength (Map k a)(DynamicByteLength a) => DynamicByteLength (HashSet a)(DynamicByteLength k, DynamicByteLength a) => DynamicByteLength (HashMap k a)DynamicByteLength ArrayBufferDynamicByteLength DataViewDynamicByteLength (ArrayView a)DynamicByteLength (AV a t)(GEncodeArrayBuffer row list) => DynamicByteLength (Record row)DynamicByteLength NoConstructorsDynamicByteLength NoArguments(DynamicByteLength a, DynamicByteLength b) => DynamicByteLength (Sum a b)(DynamicByteLength a, DynamicByteLength b) => DynamicByteLength (Product a b)(DynamicByteLength a) => DynamicByteLength (Constructor name a)(DynamicByteLength a) => DynamicByteLength (Argument a)
#encodeArrayBuffer Source
encodeArrayBuffer :: forall a. EncodeArrayBuffer a => DynamicByteLength a => a -> Effect ArrayBufferGenerate a new ArrayBuffer from a value. Throws an Error if writing fails, or if the written bytes
do not equal the dynamic byteLength of the value.
#decodeArrayBuffer Source
decodeArrayBuffer :: forall a. DecodeArrayBuffer a => ArrayBuffer -> Effect (Maybe a)Attempt to parse a value from an ArrayBuffer, starting at the first index.
#GEncodeArrayBuffer Source
class GEncodeArrayBuffer (row :: Row Type) (list :: RowList) whereMembers
gPutArrayBuffer :: Record row -> RLProxy list -> Effect (Object ArrayBuffer)
Instances
GEncodeArrayBuffer row Nil(EncodeArrayBuffer value, DynamicByteLength value, GEncodeArrayBuffer row tail, IsSymbol field, Cons field value tail' row) => GEncodeArrayBuffer row (Cons field value tail)
#GDecodeArrayBuffer Source
class GDecodeArrayBuffer (row :: Row Type) (list :: RowList) | list -> row whereMembers
gReadArrayBuffer :: Object ArrayBuffer -> RLProxy list -> Effect (Record row)
Instances
GDecodeArrayBuffer () Nil(DecodeArrayBuffer value, GDecodeArrayBuffer rowTail tail, IsSymbol field, Cons field value rowTail row, Lacks field rowTail) => GDecodeArrayBuffer row (Cons field value tail)
#genericByteLength Source
genericByteLength :: forall rep a. Generic a rep => DynamicByteLength rep => a -> Effect ByteLengthDetermine a data type's byte length by walking its generic structure - note there is significant
overhead due to nested Sum types.
#genericPutArrayBuffer Source
genericPutArrayBuffer :: forall rep a. Generic a rep => EncodeArrayBuffer rep => ArrayBuffer -> ByteOffset -> a -> Effect (Maybe ByteLength)Write data to an ArrayBuffer by walking its Generic structure - note this causes significant
overhead from nested Sum types.
#genericReadArrayBuffer Source
genericReadArrayBuffer :: forall rep a. Generic a rep => DecodeArrayBuffer rep => ArrayBuffer -> ByteOffset -> Effect (Maybe a)Read data from an ArrayBuffer by building its Generic structure - note this causes significant
overhead from nested Sum types.
Returns the bytes written indicating partial success - for exact success, the written bytes should equal the value's dynamic
byteLength. This function should strictly write to theArrayBuffer, and shouldn't attempt to read from it.