Îõ³h$ÑÈ      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG Safe-InferredÒpersistent-documentationA newtype around H which uses I J( for the semigroup and monoid instance. Safe-Inferred¯persistent-documentation5A datatype for representing the keys of entries in a  .. Contains the original value as well as the K"ual representation of that value.The L and M instances only use the K value. persistent-documentationA   is sort of like a HashMap, but sorts the keys on a K3 representation. Additionally, it has more useful N and O instances that J the values when present.persistent-documentationInsert a value into a  .persistent-documentationLookup a value in the  .persistent-documentationPack a value into an  of that value.    None$ #$'(-./0289<=>?ÀÁÂÆÉÎÔÖ×Ùçìòpersistent-documentationÜA monad for writing documentation on an entity's fields. Collects the documentation into a P.persistent-documentationÊExpand this constraint synonym to pack necessary constraints for packing Q values into s.persistent-documentationWrap the result type of a Q5 value so it can be stored in homogenous containers.persistent-documentationA 1 expression provides documentation for the given R. This type is a S and you will want to use do notation to create this.There are two ways to create  lines:ÜString literals. These are collected and appended as documentation for the entity itself.The 0 operator, which accepts an Q/ and the text documentation for that entity. persistent-documentationAn expression of  = is used to document the persistent schema. To construct an  , you'll use the R constructor and the /* operator. Everything to the right of the /4 operator is a 'FieldDoc rec' for the given entity.&This type is a monad, and you can use do) notation to sequence the documentation. doc ::  Õ doc = do User --^ "Documentation for a User" Dog --^ "Documentation for a Dog" !persistent-documentation!+ contain the documentation comment for the R recÝ that is being documented, as well as a map of documentation for the fields of that entity.%persistent-documentationÊExpand this constraint synonym to pack necessary constraints in with the !Ø type. Used in a few places to ensure that constraints are easy to modify in one place.&persistent-documentationA wrapper around !Á that allows them to be stored in a list together. Contains the %ì constraint alias, which will ensure that all necessary constraints for document rendering are packaged in.(persistent-documentationThe ( maps a T of the R rec that is documented to the & for that entity.)persistent-documentation/A type for defining documentation for a schema.+persistent-documentationGiven a list of Us, this associates each U< with the additional documentation comment provided in the   ( rec) K$ for that entity, if any is present.Precondition: The [U] comes from the V rec$ that this is called for. Doing eg: ëalignFields (entityFields (entityDef (Proxy :: Proxy User))) (strMap :: StrMap (SomeField Order) Text) will be extremely weird.,persistent-documentation Formats the  rec in the keys of the H) to be formatted in the same way as the  HaskellName present in a U./persistent-documentationÂDefine documentation for an entity. The left-hand side takes the R. constructor, and the right hand side takes a 7 expression that documents the entity and it's fields. Example þx :: EntityDoc x = do User --^ do "This comment is for the entity User." UserName # "This comment is for a field."" 0persistent-documentation"Write documentation for the given Q. Example þx :: EntityDoc x = do User --^ do "This comment is for the entity User." UserName # "This comment is for a field."" 1persistent-documentation&We need this instance so we can store  values in the  Ñ. The quantified constraint ensures that we can show the underlying field. The deriveShowFieldsÐ function defined later ensures that this is defined for records in the schema./persistent-documentationA constructor for the R r you want to document.persistent-documentation,A block that contains documentation for the R r. !"$#%&'()*+,-./0+,)*(&'%!"$# -./0None% #$'(-./0289<=>?ÀÁÂÆÉÎÔÖ×Ùçìòã >persistent-documentationéA renderer for documented entities, abstract in the intermediate representations of entities and fields.@persistent-documentation8Render a field definition as some intermediate structureApersistent-documentation$Fold a collection of rendered fieldsBpersistent-documentationÄAttach some entity-level metadata to a rendered collection of fieldsCpersistent-documentation/Finally, fold a collection of rendered entitiesDpersistent-documentation This function accepts a list of W and an   block, and substitutes the X and Y from the  .Epersistent-documentationGiven a >- for a list of entity defintiions, render it.Fpersistent-documentationA >. that generates Markdown tables for an entity. Example Given  entityDefs like: entityDefs :: [W] entityDefs = [persistUpperCaseÕ| User firstName Text.Text active Bool deriving Show Eq Read Ord |] and a doc block like: –docs :: [EntityDef] docs = document entityDefs $ do User --^ do "you can use string literals to write documentation for the entity itself. " "The strings will be mappended together, so you'll need to handle " "whitespace yourself." UserFirstName # "The user's first name." UserActive # "Whether or not the user is able to log in." UserId # "You can document the user's ID field." *This will rende the given Markdown output: # User± you can use string literals to write documentation for the entity itself. The strings will be mappended together, so you'll need to handle whitespace yourself. * Primary ID: Z1 | Column name | Type | Description | |-|-|-| | Z< | integer (64) | You can document the user's ID field. | |  firstName' | string | The user's first name. | | active: | boolean | Whether or not the user is able to log in. | Gpersistent-documentation,Given a list of entity definitions, derives [å for all their fields. This is necessary for using this library for internal reasons, unfortunately. /0>?@ABCDEFGD/0 G>?@ABCEFÜ       !""#$%&&'()*+,-./0123456789:;<==>?@ABCDEFGHFGIJKLMNOPQRPQSJKTJKUVWXYZ[YZ\JK]J^_Y`aYZbY`cY`dY`eJKfJghé7persistent-documentation-0.1.0.3-FUrwQcIZUOGIW62RA2QKhF Data.SemiMap Data.StrMap'Database.Persist.Documentation.InternalDatabase.Persist.DocumentationSemiMap unSemiMap$fMonoidSemiMap$fSemigroupSemiMap $fEqSemiMap $fOrdSemiMap $fShowSemiMapAsStr asStrText asStrValueStrMapinsertlookupasStr $fOrdAsStr $fEqAsStr$fMonoidStrMap$fSemigroupStrMap $fEqStrMap $fOrdStrMap $fShowStrMap $fShowAsStr KnowResult FieldDoc'FDFC SomeFieldFieldDoc EntityDoc EntityDocsentityDocumentationfieldDocumentationRCSomeDocs SchemaDocs EntityDoc'ED alignFieldsasHaskellNamessinglelowercaseFirstChar--^#$fShowSomeField$fMonoidEntityDocs$fSemigroupEntityDocs$fSemigroupSomeDocs$fIsStringFieldDoc'$fFunctorFieldDoc'$fApplicativeFieldDoc'$fMonadFieldDoc' $fMonadWriterEntityDocsFieldDoc'$fFunctorEntityDoc'$fApplicativeEntityDoc'$fMonadEntityDoc'$fMonadWriterSemiMapEntityDoc'Renderer renderField renderFields renderEntityrenderEntitiesdocumentrendermarkdownTableRendererderiveShowFieldscontainers-0.6.2.1Data.Map.InternalMap unionWithbaseGHC.Base<> text-1.2.3.2Data.Text.InternalTextghc-prim GHC.ClassesEqOrd SemigroupMonoidtransformers-0.5.6.2Control.Monad.Trans.Writer.LazyWriter*persistent-2.13.1.1-FVPKazS7aMKJQUP69UnuhX$Database.Persist.Class.PersistEntity EntityFieldEntityMonad Data.TypeableTypeRepDatabase.Persist.Types.BaseFieldDef PersistEntity EntityDefentityComments fieldCommentsidGHC.ShowShow