!"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{ | } ~  gSet x y will traveral x and replace  any instances of the type a in its structure  with y.  gReplace f b will traverse x and will act on  any instance of the type a in its structure with  the function f. gFind a# will extract any elements of type b from  a'-s structure in accordance with the MonadPlus 4 instance, e.g. Maybe Foo will return the first Foo  found while [Foo]% will return the list of Foos found. -Acts as gFind but will throw an exception if  nothing is found. 6A generalized modify that will apply the modification ) function to the structure of the state. )A generalized ask that will traverse the 6 stored type of the MonadReader in an attempt to find  an a. and will then apply the provided function if  found. The equivalent of  for MonadState  Not portable experimentalhapps@googlegroups.com ,When writing your own generic functions for   you may D need to access the class methods through this datatype rather than  directly.  The   class provides a   function, which D is intended to normalize values only at the top-level constructor,  and a   function, which is intended to > normalize all the subvalues and then normalize the top-level  constructor. :There is a default instance that matches all types, where    is  and   applies   to  all of its children and then   to the result. BIf you want to actually do some normalization for a certain type, G then just define an instance for that type; this will take precedence  over the default instance.  This is the   function in the default   C instance. It may be a useful building block when writing your own  instances.  This is the   function in the default   : instance. It may be a useful building block when writing  your own instances. ,When writing your own generic functions for   you may  need this, the proxy value.        Migrate instances are needed to allow upgrades of MACID state. It should be declared as instance Migrate Old New where migrate = transition_function  Not portable experimentalhapps@googlegroups.com,When writing your own generic functions for  you may C need to access the class method through this datatype rather than  directly. The  class provides a  value, which % is the default value for that type. @There is no instance for arbitrary types by default, but if you B declare an instance without providing the value then one will be $ built using the first constructor.  is used to provide . values for any arguments of the constructor. 2If you want an instance for all types then import  Happstack.Data.Default.Generic.  This is the ' that is used in an instance if you don't F specify one. It may be a useful building block when writing your own  instances. ,When writing your own generic functions for  you may  need this, the proxy value.  Not portable experimentalhapps@googlegroups.com$Derives instances for syb-with-class's Data class and  Happstack.Data.Default's Default class. , The list of names should be of the form [''Foo,''Bar,..] $Derives instances for syb-with-class's Data class only. , The list of names should be of the form [''Foo,''Bar,..] The 0 function takes a list of classes to derive and D a block of declarations. It will additionally derive instances for " Typeable, Old.Data and New.Data.  Example: , $( deriveAll [''Show, ''Eq, ''Default] [d|  data Foo a = Foo a  data Bar = Baz | Quux  |] )   Not portable experimentalhapps@googlegroups.com ? !"#$%&'()*+,-.BRigidity is used to designate the result of a failed Xml parsing. /01234+Element recursively represents XML data.  Elem n elems -> XML element with name n and described by elems. Note that elems contains sub-elements as well as the attributes or literal data of the element. # CData d -> Literal string data  Attr key val -> Key/%Value pair of the element attribute. 56789:;<7insEl a b will convert a to xml and insert it into the / xml of b if b results in an Elem constructor. =-Wrapper around the Xml class method readXml.  The Rigidity will determine the behavior in the case of a failed parsing: Rigid will return Nothing and Flexible will return Identity (defaultValue) >pIdentical to toXml from Xml class except that it will remove attributes named haskellType or haskellTypeVersion ?AUsed as a type witness for usage with syb-with-class Data class. @JApplies function to only first element of the list. Safe on empty lists. A>Converts the argument to an Xml element with the constructor M name as the root of the Elem and the additional attributes corresponding / to haskellType and haskellTypeVersion added BRGenerically traverses an instance of Xml and converts it into a list of elements CJAttempts to parse the set of elements and return the first constructor it . can successfully parse of the inferred type. DECreate an Xml instance using transparentToXml and transparentReadXml EFGHIrMatches the provided string to the key of an attribute. Returns False if any other Element constructor is given. JVFetch the value of the given attribute if present, if not present will return Nothing K1Attribute used for Xml class version information LOAttribute used for recording the actual Haskell type in the xml serialization MNEaConstrFromElements will return the results of the first constructor  that parses correctly. OALike constrFromElements but does not allow defaulting in case of  a parse error. PBAttempts to parse the given elements to build the particular type ( given by the constructor argument. Q,Returns the elements currently in the state R5Sets the state of the xml parsing to the given value SIAttempts to parse the current set of elements. If it fails the behavior Kis dependent on the Rigidity. If it is Rigid, then it will return Nothing 7but if it is Flexible it will return the defaultValue. JIf the parsing succeeds, it will return the value and store the remaining "XML elements in the parser state. T`Identical to readMXml except that in the case of a failed parsing it will not use defaultValue. UV$xmlShowCData lifted to act on lists WGautomatically creates an Xml definition for a type that is an instance ]of Show and Read. This will result in an instance that converts the type to and from CData. X%xmlCDataLists lifted to act on lists YDCreates an instance similar to xmlShowCData except for lists of the provided type Z1Replaces commas in the string with single spaces [Throws an error when called ? !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[? !"#$%"#$%&'()*+,-'()*+,-.0//013223476556789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[ \]+Lifts toHaXml to act on lists of Elements ^DConverts the Element to HaXml Element if the Element is of the form  Elem _ _ _JConversion function between the Happstack Element and HaXml Content types `HConverts an Element that is an Attr into a HaXml Attribute. Will throw - an error if provided the wrong constructor. a$Lifts fromHaXml to operate on lists b'Converts a HaXml Content to an Element c$Lifts fromAttribute to act on lists d:Will convert a HaXml attribute that is of the form [Left _] to a 5 Happstack Element. Otherwise, will throw an error. \]^_`abcd \]^_`abcd \]^_`abcd efghijklmnop efghijklmnop effghhijjkllmnopK !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[efghijklmnopK4765;:98<=132>.0/&'()*+,-!"#$%?@ABCDEFGHIJKLMNOP QRSTUVWXYZ[ijklponmghefqrstu8Converts lists of string pairs into a list of Elements.  The basic structure is  pairsToXml [(foo,bar)] = [Elem foo [CData bar]]  pairsToXml [(foo/bar,baz)] = [Elem foo [Elem bar [CData baz]]] v7Converts a list of Elements to a list of String pairs.  xmlToPairs [CData _] = error  xmlToPairs [Elem foo [CData bar]] = [(foo,bar)]  xmlToPairs [Elem foo [Elem bar [CData baz]]] = [(foo/bar,baz)]  xmlToPairs . pairsToXml = id wHCreates the Xml structure corresponding to the specification of an HTML I form. The provided pairs should be the spec of the inputs to the form. xTEquivalent to pairsToHTMLForm but first converts the Xml instance to list of pairs. yz{Equivalent to pairsToHTMLForm but first converts the Xml instance to list of pairs. An alias for xmlToHTMLForm currently. qrstuvwxyz uvwxyztqrs qrsrstuvwxyz {<Proxy is empty and is used as a transport of a phantom type |}~4Creates the Proxy with a type matching the argument Returns bottom 2Acts as id except for providing type restrictions {|}~{|~}{||}~ #QUniform container for any serialized data. It contains a string rep of the type 2 and the actual data serialized to a byte string. IThe Version type class is used to describe whether a type is fundamental I or if it is meant to extend another type. For a user defined type that O does not extend any others, one can use the default instance of Version, e.g.  instance Version MyType8 to define it has having a version id of 0 and previous  type. Data layout won',t change. Used for types like Int and Char. (Lifts the provided value into Contained OCreates a Mode that is a new version of the type carried by the provided proxy T and with the provided version number. Note that since VersionId is an instance of A Num that you may use int literals when calling extension, e.g.  %extension 1 (Proxy :: Proxy OldState) <Equivalent of Data.Binary.put for instances of Serialize. ) Takes into account versioning of types. 9Equivalent of Data.Binary.get for instances of Serialize ) Takes into account versioning of types. +Compares the numeric value of the versions Pure version of . Serializes to a ByteString Pure version of .. Parses a ByteString into the expected type  and a remainder. Version lookups  specialized to Objects 7Attempts to convert an Object back into its base type.  If the conversion fails  will be called. DSerializes data and stores it along with its type name in an Object {|}~ 7Derives an instance of Serialize for the provided type ? Should work in most cases if the type is already and instance  of Version.  Ex: $(deriveSerialize ''Foo) &Derives Serialize for a list of types   !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[efghijklmnopqrstuvwxyz{|}~ !"##$%&'()*+ , , - . / / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? > @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f ghijklmnopqrstuuvvwxyz{|}~                   happstack-data-0.5.0.3Happstack.Data.GOpsHappstack.Data.NormalizeHappstack.Data.MigrateHappstack.Data.DefaultHappstack.Data.DeriveAllHappstack.Data.XmlHappstack.Data.Xml.HaXmlHappstack.Data.PairsHappstack.Data.ProxyHappstack.Data.SerializeHappstack.Data.SerializeTHHappstack.Data.Default.GenericHappstack.Data.Xml.BaseHappstack.Data.Xml.PrintParseHappstack.Data.Xml.InstancesHappstack.DatagSetgReplacegFindgFind'gModifygAskgGet NormalizeD normalizeDnormalizeRecursivelyD Normalize normalizenormalizeRecursivelydefaultNormalizedefaultNormalizeRecursivelynormalizeProxyMigratemigrateDefaultD defaultValueDDefault defaultValuedefaultDefaultValue defaultProxy deriveNewDataderiveNewDataNoDefault deriveAll ReadStatexmlsReadMXmlDtoXmlD readMXmlDreadMXmlNoRootDefaultDXmltoXmlreadXmlreadXml' normalizeXmlversion otherVersiontypRigidityFlexibleRigidOtherNoOtherElementAttrCDataElem constr[a7aH] constr[a7aI] constr[a7aJ]dataType[a7aG]insElfromXml toPublicXmlxmlProxyfirst defaultToXmltransparentToXmltransparentReadXmltransparentXmldefaultReadXmldefaultReadXml' readXmlWithreadVersionedElement isTheAttrgetAttr versionAttrtypeAttr readElementaConstrFromElementsconstrFromElementsNoRootDefaultconstrFromElementsgetXmlsputXmlsreadMXmlreadMXmlNoRootDefaultxmlAttr xmlShowCDatas xmlShowCData xmlCDataLists xmlCDataListnoCommas typeNotValueisAttrtoHaXmls toHaXmlEltoHaXml toAttribute fromHaXmls fromHaXmlfromAttributes fromAttribute FromString fromStringToStringtoStringKW constr[ag5G]dataType[ag5F] constr[ag5Q]dataType[ag5P]AsPairstoPairs fromPairsPairs pairsToXml xmlToPairspairsToHTMLForm xmlToHTMLFormtoPairsX toHTMLFormProxy constr[aoZj]dataType[aoZi]proxyunProxy asProxyTypeObject objectType SerializegetCopyputCopyVersionmodeMode Versioned Primitive Containedcontain extension getSafeGet getSafePutsafePutsafeGet serialize deserializecollectVersionsdeserializeObject parseObjectmkObjectderiveSerializederiveSerializeForbaseGHC.BaseidmkDefaultInstancetyVarBndrToNameaddDerivedClasses deriveDefaultisDataOrNewtypeslash formIntoEls xmlIntoPairs submitButtonpToInputPassUserUserInfo constr[amcC]dataType[amcB] constr[amcN]dataType[amcM] constr[amcX]dataType[amcW] objectData VersionId unVersionPrevious unsafeUnPack mkPrevioussafeGetVersionedcompareVersionsGHC.ErrerrorClassTaggedmkType parseInfo Data.TypeableTypeable Typeable1 Typeable2 Typeable3 Typeable4 Typeable5 Typeable6 Typeable7gcast2gcast1gcasttypeOf6DefaulttypeOf5DefaulttypeOf4DefaulttypeOf3DefaulttypeOf2DefaulttypeOf1Default typeOfDefault showsTypeRep tyConString typeRepArgs typeRepTyConmkAppTy funResultTy splitTyConAppmkFunTy typeRepKeytypeOf1typeOf2typeOf3typeOf4typeOf5typeOf6typeOf7TypeRepTyContypeOfmkTyCon mkTyConAppcast