| Copyright | (c) 2013-2014 Edward Blake |
|---|---|
| License | BSD-style |
| Maintainer | Edward L. Blake <edwardlblake@gmail.com> |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | Safe-Inferred |
| Language | Haskell98 |
Data.PHPSession.Types
Contents
Description
Types used for representing PHP data types from encoding and decoding a PHP session.
- type PHPSessionVariableList = [(ByteString, PHPSessionValue)]
- data PHPSessionClassName = PHPSessionClassName ByteString
- data PHPSessionValue
- = PHPSessionValueArray [(PHPSessionValue, PHPSessionValue)]
- | PHPSessionValueBool Bool
- | PHPSessionValueFloat (Either Int Double)
- | PHPSessionValueInt Int
- | PHPSessionValueNull
- | PHPSessionValueObject PHPSessionClassName [(PHPSessionValue, PHPSessionValue)]
- | PHPSessionValueObjectSerializeable PHPSessionClassName ByteString
- | PHPSessionValueString ByteString
- | PHPSessionValueMisc ByteString [PHPSessionAttr]
- data PHPSessionAttr
- data PHPSessionDecodingError
- = PHPSessionStringEmpty
- | PHPSessionCouldntDecodeSerializablePast ByteString
- | PHPSessionCouldntDecodeObjectPast ByteString
- | PHPSessionCouldntDecodeStringPast ByteString
- | PHPSessionCouldntDecodePast ByteString
- | PHPSessionValueNotFullyDecoded PHPSessionValue ByteString
- | PHPSessionNotFullyDecoded PHPSessionVariableList ByteString
PHP session types
type PHPSessionVariableList = [(ByteString, PHPSessionValue)] Source
Holds the "top-level" session variables and their value contents.
data PHPSessionClassName Source
Represents the name of a PHP class.
Constructors
| PHPSessionClassName ByteString |
Instances
data PHPSessionValue Source
PHPSessionValue Represents a PHP value, which may be a number, string,
array, object, boolean, null, or references.
PHPSessionValueArrayrepresents an array as a list of key-value pairs of values of typePHPSessionValue.PHPSessionValueObjectis similar toPHPSessionValueArraybut also includes a class name of typePHPSessionClassName.PHPSessionValueObjectSerializeablerepresent objects of which their classes implement Serializeable to handle their own serialization and don't use the normal serialization format for its contained objects.PHPSessionValueBool,PHPSessionValueInt,PHPSessionValueFloat,PHPSessionValueNull, andPHPSessionValueStringrepresent basic types boolean, integer, floats, null and string respectively.PHPSessionValueFloatstores the number representation as anEitherIntDoubleto preserve instances where the number representation is actually an integer. It should be noted that the re-encoded value is usually rounded unlike PHP's representation.PHPSessionValueMiscstores a few other types such as references and values which follow the general serialization format but aren't recognized by the decoder. A list ofPHPSessionAttrprovides the information for reconstructing the serialized representation when re-encoding this type of value.
Constructors
Instances
data PHPSessionAttr Source
PHPSessionAttr are values associated with PHPSessionValueMisc to inspect and
generally re-encode the necessary information for that value.
Instances
data PHPSessionDecodingError Source
PHPSessionDecodingError are error types that can be returned if decoding
did not succeed. They are returned by the Either versions of the decoding
functions.
PHPSessionStringEmptyis given if the decoder got an empty byte sequence.PHPSessionCouldntDecodeSerializablePastis given if the decoding does not succeed while in the particular byte sequence for a class that implements Serializable.PHPSessionCouldntDecodeObjectPastis given if the decoding does not succeed while in the particular byte sequence for a PHP object value.PHPSessionCouldntDecodeStringPastis given if the decoding does not succeed while in the particular byte sequence for a PHP string.PHPSessionCouldntDecodePastis given if the decoding does not succeed while decoding common byte sequences which are composed mainly ofPHPSessionAttrforms.PHPSessionValueNotFullyDecodedis given if the byte sequence is not fully decoded to aPHPSessionValuewhen using decodePHPSessionValue or decodePHPSessionValueEither.PHPSessionNotFullyDecodedis given.if the byte sequence is not fully decoded to aPHPSessionVariableListwhen using decodePHPSession or decodePHPSessionEither.
Constructors