packages feed

language-css 0.0.3 → 0.0.3.1

raw patch · 8 files changed

+188/−185 lines, 8 filesnew-uploaderPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Language.Css.Build: instance Attrs Attr
- Language.Css.Build: instance Attrs AttrIdent
- Language.Css.Build: instance Idents Attr
- Language.Css.Build: instance Idents Expr
- Language.Css.Build: instance Idents Ident
- Language.Css.Build: instance Idents PseudoVal
- Language.Css.Build: instance Idents Sel'
- Language.Css.Build: instance Idents String
- Language.Css.Build: instance Idents Value
- Language.Css.Build: instance ToExpr Cm
- Language.Css.Build: instance ToExpr Color
- Language.Css.Build: instance ToExpr Deg
- Language.Css.Build: instance ToExpr Double
- Language.Css.Build: instance ToExpr Em
- Language.Css.Build: instance ToExpr Ex
- Language.Css.Build: instance ToExpr Expr
- Language.Css.Build: instance ToExpr Func
- Language.Css.Build: instance ToExpr Grad
- Language.Css.Build: instance ToExpr Hz
- Language.Css.Build: instance ToExpr Ident
- Language.Css.Build: instance ToExpr In
- Language.Css.Build: instance ToExpr Int
- Language.Css.Build: instance ToExpr KHz
- Language.Css.Build: instance ToExpr Mm
- Language.Css.Build: instance ToExpr Ms
- Language.Css.Build: instance ToExpr Pc
- Language.Css.Build: instance ToExpr Percentage
- Language.Css.Build: instance ToExpr Pt
- Language.Css.Build: instance ToExpr Px
- Language.Css.Build: instance ToExpr Rad
- Language.Css.Build: instance ToExpr S
- Language.Css.Build: instance ToExpr Uri
- Language.Css.Build: instance ToExpr Value
- Language.Css.Build: instance ToExpr a => ToExpr [a]
- Language.Css.Pretty: instance Pretty AtCharSet
- Language.Css.Pretty: instance Pretty AtFontFace
- Language.Css.Pretty: instance Pretty AtImport
- Language.Css.Pretty: instance Pretty AtMedia
- Language.Css.Pretty: instance Pretty AtPage
- Language.Css.Pretty: instance Pretty Attr
- Language.Css.Pretty: instance Pretty Cm
- Language.Css.Pretty: instance Pretty Color
- Language.Css.Pretty: instance Pretty Decl
- Language.Css.Pretty: instance Pretty Deg
- Language.Css.Pretty: instance Pretty Em
- Language.Css.Pretty: instance Pretty Ex
- Language.Css.Pretty: instance Pretty Expr
- Language.Css.Pretty: instance Pretty Func
- Language.Css.Pretty: instance Pretty Grad
- Language.Css.Pretty: instance Pretty Hz
- Language.Css.Pretty: instance Pretty Ident
- Language.Css.Pretty: instance Pretty ImportHead
- Language.Css.Pretty: instance Pretty In
- Language.Css.Pretty: instance Pretty KHz
- Language.Css.Pretty: instance Pretty Mm
- Language.Css.Pretty: instance Pretty Ms
- Language.Css.Pretty: instance Pretty Pc
- Language.Css.Pretty: instance Pretty Percentage
- Language.Css.Pretty: instance Pretty Prio
- Language.Css.Pretty: instance Pretty PseudoVal
- Language.Css.Pretty: instance Pretty Pt
- Language.Css.Pretty: instance Pretty Px
- Language.Css.Pretty: instance Pretty Rad
- Language.Css.Pretty: instance Pretty RuleSet
- Language.Css.Pretty: instance Pretty S
- Language.Css.Pretty: instance Pretty Sel
- Language.Css.Pretty: instance Pretty SimpleSel
- Language.Css.Pretty: instance Pretty StyleBody
- Language.Css.Pretty: instance Pretty StyleSheet
- Language.Css.Pretty: instance Pretty SubSel
- Language.Css.Pretty: instance Pretty Uri
- Language.Css.Pretty: instance Pretty Value
- Language.Css.Syntax: instance Eq AtCharSet
- Language.Css.Syntax: instance Eq AtFontFace
- Language.Css.Syntax: instance Eq AtImport
- Language.Css.Syntax: instance Eq AtMedia
- Language.Css.Syntax: instance Eq AtPage
- Language.Css.Syntax: instance Eq Attr
- Language.Css.Syntax: instance Eq Cm
- Language.Css.Syntax: instance Eq Color
- Language.Css.Syntax: instance Eq Decl
- Language.Css.Syntax: instance Eq Deg
- Language.Css.Syntax: instance Eq Em
- Language.Css.Syntax: instance Eq Ex
- Language.Css.Syntax: instance Eq Expr
- Language.Css.Syntax: instance Eq Func
- Language.Css.Syntax: instance Eq Grad
- Language.Css.Syntax: instance Eq Hz
- Language.Css.Syntax: instance Eq Ident
- Language.Css.Syntax: instance Eq ImportHead
- Language.Css.Syntax: instance Eq In
- Language.Css.Syntax: instance Eq KHz
- Language.Css.Syntax: instance Eq Mm
- Language.Css.Syntax: instance Eq Ms
- Language.Css.Syntax: instance Eq Pc
- Language.Css.Syntax: instance Eq Percentage
- Language.Css.Syntax: instance Eq Prio
- Language.Css.Syntax: instance Eq PseudoVal
- Language.Css.Syntax: instance Eq Pt
- Language.Css.Syntax: instance Eq Px
- Language.Css.Syntax: instance Eq Rad
- Language.Css.Syntax: instance Eq RuleSet
- Language.Css.Syntax: instance Eq S
- Language.Css.Syntax: instance Eq Sel
- Language.Css.Syntax: instance Eq SimpleSel
- Language.Css.Syntax: instance Eq StyleBody
- Language.Css.Syntax: instance Eq StyleSheet
- Language.Css.Syntax: instance Eq SubSel
- Language.Css.Syntax: instance Eq Uri
- Language.Css.Syntax: instance Eq Value
- Language.Css.Syntax: instance Show AtCharSet
- Language.Css.Syntax: instance Show AtFontFace
- Language.Css.Syntax: instance Show AtImport
- Language.Css.Syntax: instance Show AtMedia
- Language.Css.Syntax: instance Show AtPage
- Language.Css.Syntax: instance Show Attr
- Language.Css.Syntax: instance Show Cm
- Language.Css.Syntax: instance Show Color
- Language.Css.Syntax: instance Show Decl
- Language.Css.Syntax: instance Show Deg
- Language.Css.Syntax: instance Show Em
- Language.Css.Syntax: instance Show Ex
- Language.Css.Syntax: instance Show Expr
- Language.Css.Syntax: instance Show Func
- Language.Css.Syntax: instance Show Grad
- Language.Css.Syntax: instance Show Hz
- Language.Css.Syntax: instance Show Ident
- Language.Css.Syntax: instance Show ImportHead
- Language.Css.Syntax: instance Show In
- Language.Css.Syntax: instance Show KHz
- Language.Css.Syntax: instance Show Mm
- Language.Css.Syntax: instance Show Ms
- Language.Css.Syntax: instance Show Pc
- Language.Css.Syntax: instance Show Percentage
- Language.Css.Syntax: instance Show Prio
- Language.Css.Syntax: instance Show PseudoVal
- Language.Css.Syntax: instance Show Pt
- Language.Css.Syntax: instance Show Px
- Language.Css.Syntax: instance Show Rad
- Language.Css.Syntax: instance Show RuleSet
- Language.Css.Syntax: instance Show S
- Language.Css.Syntax: instance Show Sel
- Language.Css.Syntax: instance Show SimpleSel
- Language.Css.Syntax: instance Show StyleBody
- Language.Css.Syntax: instance Show StyleSheet
- Language.Css.Syntax: instance Show SubSel
- Language.Css.Syntax: instance Show Uri
- Language.Css.Syntax: instance Show Value
+ Language.Css.Build: infixl 5 /-
+ Language.Css.Build: infixl 6 !
+ Language.Css.Build: infixr 0 <:>
+ Language.Css.Build: instance Language.Css.Build.Attrs Language.Css.Syntax.Attr
+ Language.Css.Build: instance Language.Css.Build.Attrs Language.Css.Syntax.AttrIdent
+ Language.Css.Build: instance Language.Css.Build.Idents GHC.Base.String
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Build.Sel'
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Syntax.Attr
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Syntax.Expr
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Syntax.Ident
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Syntax.PseudoVal
+ Language.Css.Build: instance Language.Css.Build.Idents Language.Css.Syntax.Value
+ Language.Css.Build: instance Language.Css.Build.ToExpr GHC.Types.Double
+ Language.Css.Build: instance Language.Css.Build.ToExpr GHC.Types.Int
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Cm
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Color
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Deg
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Em
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Ex
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Expr
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Func
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Grad
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Hz
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Ident
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.In
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.KHz
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Mm
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Ms
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Pc
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Percentage
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Pt
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Px
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Rad
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.S
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Uri
+ Language.Css.Build: instance Language.Css.Build.ToExpr Language.Css.Syntax.Value
+ Language.Css.Build: instance Language.Css.Build.ToExpr a => Language.Css.Build.ToExpr [a]
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.AtCharSet
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.AtFontFace
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.AtImport
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.AtMedia
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.AtPage
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Attr
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Cm
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Color
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Decl
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Deg
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Em
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Ex
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Expr
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Func
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Grad
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Hz
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Ident
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.ImportHead
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.In
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.KHz
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Mm
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Ms
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Pc
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Percentage
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Prio
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.PseudoVal
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Pt
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Px
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Rad
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.RuleSet
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.S
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Sel
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.SimpleSel
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.StyleBody
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.StyleSheet
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.SubSel
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Uri
+ Language.Css.Pretty: instance Language.Css.Pretty.Pretty Language.Css.Syntax.Value
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.AtCharSet
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.AtFontFace
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.AtImport
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.AtMedia
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.AtPage
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Attr
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Cm
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Color
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Decl
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Deg
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Em
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Ex
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Expr
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Func
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Grad
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Hz
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Ident
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.ImportHead
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.In
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.KHz
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Mm
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Ms
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Pc
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Percentage
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Prio
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.PseudoVal
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Pt
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Px
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Rad
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.RuleSet
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.S
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Sel
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.SimpleSel
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.StyleBody
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.StyleSheet
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.SubSel
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Uri
+ Language.Css.Syntax: instance GHC.Classes.Eq Language.Css.Syntax.Value
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.AtCharSet
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.AtFontFace
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.AtImport
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.AtMedia
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.AtPage
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Attr
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Cm
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Color
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Decl
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Deg
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Em
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Ex
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Expr
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Func
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Grad
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Hz
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Ident
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.ImportHead
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.In
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.KHz
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Mm
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Ms
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Pc
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Percentage
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Prio
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.PseudoVal
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Pt
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Px
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Rad
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.RuleSet
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.S
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Sel
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.SimpleSel
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.StyleBody
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.StyleSheet
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.SubSel
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Uri
+ Language.Css.Syntax: instance GHC.Show.Show Language.Css.Syntax.Value
- Language.Css.Syntax: AtPage :: (Maybe Ident) -> (Maybe PseudoPage) -> [Decl] -> AtPage
+ Language.Css.Syntax: AtPage :: Maybe Ident -> Maybe PseudoPage -> [Decl] -> AtPage
- Language.Css.Syntax: Decl :: (Maybe Prio) -> Prop -> Expr -> Decl
+ Language.Css.Syntax: Decl :: Maybe Prio -> Prop -> Expr -> Decl
- Language.Css.Syntax: StyleSheet :: (Maybe AtCharSet) -> [AtImport] -> [StyleBody] -> StyleSheet
+ Language.Css.Syntax: StyleSheet :: Maybe AtCharSet -> [AtImport] -> [StyleBody] -> StyleSheet

Files

+ CHANGELOG.md view
@@ -0,0 +1,3 @@+## 0.3.0.1++* Make it work on modern GHCs
LICENSE view
@@ -1,4 +1,4 @@-Copyright Anton Kholomiov 2010+Copyright Anton Kholomiov 2010, Tom Ellis 2020  All rights reserved. 
+ README.md view
@@ -0,0 +1,4 @@+# language-css [![Hackage version](https://img.shields.io/hackage/v/language-css.svg?label=Hackage)](https://hackage.haskell.org/package/language-css) [![Linux build status](https://img.shields.io/travis/tomjaguarpaw/language-css/master.svg?label=Linux%20build)](https://travis-ci.org/tomjaguarpaw/language-css)++This package is deprecated.  It is highly recommended that you do not+use it.
language-css.cabal view
@@ -1,22 +1,32 @@-Name:          language-css-Version:       0.0.3-Cabal-Version: >= 1.2-License:       BSD3-License-file:  LICENSE-Author:	       Anton Kholomiov-Synopsis:      CSS 2.1 syntax -Description:   library for building and pretty printing CSS 2.1 code-Stability:     Experimental-Tested-With:   GHC==6.13.1-Build-Type:    Simple-Category:      Language-Maintainer:    <anton.kholomiov@gmail.com>+name:          language-css+copyright:     Copyright Anton Kholomiov 2010, Tom Ellis 2020+version:       0.0.3.1+cabal-version: >= 1.18+license:       BSD3+license-file:  LICENSE+author:	       Anton Kholomiov+synopsis:      CSS 2.1 syntax+description:   library for building and pretty printing CSS 2.1 code+               deprecated+tested-with:   GHC==8.10.1, GHC==8.8.3, GHC==8.6.5, GHC==8.4.4, GHC==8.2.2, GHC==8.0.2+build-type:    Simple+category:      Language+maintainer:    Tom Ellis+extra-doc-files: README.md+                 CHANGELOG.md+homepage:        https://github.com/tomjaguarpaw/language-css+bug-reports:     https://github.com/tomjaguarpaw/language-css/issues +source-repository head+  type:     git+  location: https://github.com/tomjaguarpaw/language-css.git+ Library-  Build-Depends:-        base >= 4, base < 5, pretty  -  Hs-Source-Dirs:      src/-  Exposed-Modules:+  default-language: Haskell2010+  build-depends:+        base >= 4, base < 5, pretty+  hs-source-dirs:      src/+  exposed-modules:         Language.Css.Syntax         Language.Css.Pretty         Language.Css.Build@@ -26,9 +36,5 @@         Language.Css.Build.Pseudos  ----------------------------------------------------------------------------------- 		-  Other-Modules:----+----------------------------------------------------------------------------------+  other-modules:
src/Language/Css/Build.hs view
@@ -1,7 +1,7 @@ {-# LANGUAGE TypeSynonymInstances, FlexibleInstances #-} -- | Combinators to build AST ----- Example : +-- Example : -- -- > -- >import Language.Css.Syntax@@ -14,17 +14,17 @@ -- >         body [ -- >             margin <:> int 0, -- >             border <:> int 0 ],--- >            +-- > -- >         h1 [ textAlign <:> center], -- >--- >         p [ --- >            backgroundColor <:> black, +-- >         p [+-- >            backgroundColor <:> black, -- >            color <:> white, -- >            padding <:> spaces [pct 5, pct 5, pct 10, pct 10]  ], -- >--- >         (star /. "warning") [ color <:> red ] +-- >         (star /. "warning") [ color <:> red ] -- >       ]--- > +-- > -- >main = print $ pretty res -- > --@@ -33,7 +33,7 @@        Idents(..), ToExpr(..),         -- * StyleSheet-       styleSheet, rules, ruleSets, +       styleSheet, rules, ruleSets,        addImports, addRules, charset,         -- * AtRules@@ -42,12 +42,12 @@        -- * RuleSets         -- ** Selectors-       Sel', star, sels, +       Sel', star, sels,        (/>), (/-), (/#), (/.), (/:),        Attrs(..), (!), (.=), (~=), (|=),-       +        -- ** Declarations-       (<:>), important, +       (<:>), important,        space, slash, comma,        spaces, slashes, commas, @@ -58,8 +58,8 @@        pct, ms, s, url,         -- * Colors-       aqua, black, blue, fuchsia, gray, green, -       lime, maroon, navy, olive, orange, purple, +       aqua, black, blue, fuchsia, gray, green,+       lime, maroon, navy, olive, orange, purple,        red, silver, teal, white, yellow ) where@@ -158,7 +158,7 @@ -- | groups selectors sels :: [Sel'] -> Sel' sels xs d = joinRules [] $ map ($ d) xs-    where joinRules sels xs = +    where joinRules sels xs =                 case xs of                     []   -> RuleSet sels d                     a:as -> joinRules (sels ++ getSels a) as@@ -185,7 +185,7 @@  -- | set id (/#) :: Sel' -> String -> Sel'-(/#) s id = liftSel1 (appendSubSel $ IdSel id) s +(/#) s id = liftSel1 (appendSubSel $ IdSel id) s  -- | set class (/.) :: Sel' -> String -> Sel'@@ -193,10 +193,10 @@  -- | set attributes (!) :: Sel' -> Attr -> Sel'-(!) s attr = liftSel1 (appendSubSel $ AttrSel attr) s +(!) s attr = liftSel1 (appendSubSel $ AttrSel attr) s  -- | set pseudo classes/elements-(/:) :: Sel' -> PseudoVal -> Sel' +(/:) :: Sel' -> PseudoVal -> Sel' (/:) s p = liftSel1 (appendSubSel $ PseudoSel p) s  liftSel1 :: (Sel -> Sel) -> (Sel' -> Sel')@@ -204,7 +204,7 @@     where f' a = RuleSet (liftA f $ getSels a) $ getDecls a  liftSel2 :: (Sel -> Sel -> Sel) -> (Sel' -> Sel' -> Sel')-liftSel2 f = liftA2 f' +liftSel2 f = liftA2 f'     where f' a b = RuleSet (liftA2 f (getSels a) (getSels b)) $ getDecls a  @@ -223,7 +223,7 @@  -- | element's attribute is (.=) :: AttrIdent -> AttrVal -> Attr-(.=) = AttrIs +(.=) = AttrIs  -- | element's attribute includes (~=) :: AttrIdent -> AttrVal -> Attr@@ -235,17 +235,17 @@   appendSubSel :: SubSel -> Sel -> Sel-appendSubSel s a = +appendSubSel s a =     case a of         SSel x      -> case x of                             UnivSel xs    -> SSel $ UnivSel $ xs ++ [s]                             TypeSel el xs -> SSel $ TypeSel el $ xs ++ [s]         DescendSel x y -> DescendSel (appendSubSel s x) (appendSubSel s y)         ChildSel   x y -> ChildSel   (appendSubSel s x) (appendSubSel s y)-        AdjSel     x y -> AdjSel     (appendSubSel s x) (appendSubSel s y)                +        AdjSel     x y -> AdjSel     (appendSubSel s x) (appendSubSel s y)  -getSels :: RuleSet -> [Sel] +getSels :: RuleSet -> [Sel] getSels (RuleSet xs _) = xs  getDecls :: RuleSet -> [Decl]@@ -262,8 +262,8 @@ (<:>) :: String -> Expr -> Decl (<:>) a b = Decl Nothing (ident a) b --- | set @!important@ -important :: Decl -> Decl +-- | set @!important@+important :: Decl -> Decl important (Decl _ a b) = Decl (Just Important) a b  -- | space separated values@@ -305,7 +305,7 @@ instance Idents Value where     ident = VIdent . ident -instance ToExpr Value where +instance ToExpr Value where     expr = EVal  -----------------------------------------------------------------@@ -316,87 +316,87 @@ fun :: ToExpr a => Ident -> a -> Func fun str = Func str . expr --- | \<angle\> +-- | \<angle\> deg :: Double -> Expr deg = expr . Deg --- | \<angle\> +-- | \<angle\> rad :: Double -> Expr rad = expr . Rad --- | \<angle\> +-- | \<angle\> grad :: Double -> Expr grad = expr . Grad --- | \<color\> +-- | \<color\> cword :: String -> Expr cword = expr . Cword . checkWord --- | \<color\> +-- | \<color\> rgb :: Int -> Int -> Int -> Expr rgb x0 x1 x2 = expr $ Crgb x0 x1 x2 --- | \<frequency\> +-- | \<frequency\> hz :: Double -> Expr hz = expr . Hz --- | \<frequency\> +-- | \<frequency\> khz :: Double -> Expr khz = expr . KHz --- | \<length\> +-- | \<length\> em :: Double -> Expr em = expr . Em --- | \<length\> +-- | \<length\> ex :: Double -> Expr ex = expr . Ex --- | \<length\> +-- | \<length\> px :: Int -> Expr px = expr . Px --- | \<length\> +-- | \<length\> in' :: Double -> Expr in' = expr . In --- | \<length\> +-- | \<length\> cm :: Double -> Expr cm = expr . Cm --- | \<length\> +-- | \<length\> mm :: Double -> Expr mm = expr . Mm --- | \<length\> +-- | \<length\> pc :: Double -> Expr pc = expr . Pc --- | \<length\> +-- | \<length\> pt :: Int -> Expr pt = expr . Pt --- | \<percentage\> +-- | \<percentage\> pct :: Double -> Expr pct = expr . Percentage --- | \<time\> +-- | \<time\> ms :: Double -> Expr ms = expr . Ms --- | \<time\> +-- | \<time\> s :: Double -> Expr s = expr . S --- | \<uri\> +-- | \<uri\> url :: String -> Expr url = expr . Uri -checkWord x +checkWord x     | checkLeng x && checkNums x && checkFirst x = x-    | otherwise                                  = errorMsg -    where errorMsg = error "must be number in hexadecimal notation" -          checkLeng x +    | otherwise                                  = errorMsg+    where errorMsg = error "must be number in hexadecimal notation"+          checkLeng x             | length x == 4 || length x == 7 = True             | otherwise = error "string length must be 4 or 7"           checkNums x@@ -404,7 +404,7 @@             | otherwise = errorMsg           checkFirst x             | '#' == head x = True-            | otherwise = error "first character must be #"        +            | otherwise = error "first character must be #"   @@ -414,7 +414,7 @@ int :: Int -> Expr int = expr -num :: Double -> Expr +num :: Double -> Expr num = expr  -- instances@@ -489,22 +489,20 @@  -- colors ---aqua    = cword "#00ffff" +aqua    = cword "#00ffff" black   = cword "#000000"-blue    = cword "#0000ff" -fuchsia = cword "#ff00ff" -gray    = cword "#808080"  -green   = cword "#008000" -lime    = cword "#00ff00"  -maroon  = cword "#800000"  -navy    = cword "#000080" -olive   = cword "#808000" -orange  = cword "#ffA500" -purple  = cword "#800080" -red     = cword "#ff0000"  -silver  = cword "#c0c0c0" -teal    = cword "#008080" -white   = cword "#ffffff" +blue    = cword "#0000ff"+fuchsia = cword "#ff00ff"+gray    = cword "#808080"+green   = cword "#008000"+lime    = cword "#00ff00"+maroon  = cword "#800000"+navy    = cword "#000080"+olive   = cword "#808000"+orange  = cword "#ffA500"+purple  = cword "#800080"+red     = cword "#ff0000"+silver  = cword "#c0c0c0"+teal    = cword "#008080"+white   = cword "#ffffff" yellow  = cword "#ffff00"--
src/Language/Css/Build/Pseudos.hs view
@@ -13,11 +13,11 @@         firstLetter,         before,         after-) +) where  import Language.Css.Syntax-import Language.Css.Build  +import Language.Css.Build  -- pseudo-classes @@ -25,7 +25,7 @@ firstChild :: PseudoVal firstChild = ident "first-child" --- | :link +-- | :link link :: PseudoVal link = ident "link" @@ -45,7 +45,7 @@ focus :: PseudoVal focus = ident "focus" --- | :lang  +-- | :lang lang :: Expr -> PseudoVal lang = PFunc . fun (ident "lang") @@ -55,15 +55,14 @@ firstLine :: PseudoVal firstLine = ident "first-line" --- | :first-letter +-- | :first-letter firstLetter :: PseudoVal firstLetter = ident "first-letter" --- | :before +-- | :before before :: PseudoVal before = ident "before" --- | :after +-- | :after after :: PseudoVal after = ident "after"-
src/Language/Css/Pretty.hs view
@@ -2,6 +2,7 @@     Pretty(..), prettyPrint) where +import Prelude hiding ((<>)) import Text.PrettyPrint import Language.Css.Syntax @@ -9,7 +10,7 @@ class Pretty a where     pretty :: a -> Doc --- | pretty-print with the default style. +-- | pretty-print with the default style. prettyPrint :: Pretty a => a -> String prettyPrint = render . pretty @@ -25,8 +26,8 @@ -- StyleSheet  instance Pretty StyleSheet where-    pretty (StyleSheet ch imp body) = -               ppMaybe ch +    pretty (StyleSheet ch imp body) =+               ppMaybe ch             $$ (vsep $ map pretty imp)             $$ (vsep $ map pretty body) @@ -55,30 +56,29 @@                 IUri x -> pretty x -- @page instance Pretty AtPage where-    pretty (AtPage id pp ds) = text "@page" -        <+> ppMaybe id <+> ppMaybe pp +    pretty (AtPage id pp ds) = text "@page"+        <+> ppMaybe id <+> ppMaybe pp         <+> (braces $ punctuatePretties semi ds)   -- @media instance Pretty AtMedia where-    pretty (AtMedia ms rs) = text "@media" +    pretty (AtMedia ms rs) = text "@media"         <+> punctuatePretties comma ms         <+> punctuatePretties comma rs-          -- @font-face instance Pretty AtFontFace where-    pretty (AtFontFace ds) = text "@font-face" +    pretty (AtFontFace ds) = text "@font-face"         <+> (braces $ punctuatePretties semi ds)   -- RuleSets  instance Pretty RuleSet where-	pretty (RuleSet sels decls) = +        pretty (RuleSet sels decls) =                 (vcat $ punctuate comma $ map pretty sels)-                <+> lbrace  +                <+> lbrace                 $$ (nest 4 $ vcat $ punctuate semi $ map pretty decls)                 <+> rbrace @@ -86,10 +86,10 @@ -- Declarations  instance Pretty Decl where-	pretty (Decl prio p v) = +        pretty (Decl prio p v) =             case prio of                 Just x  -> decl <+> pretty x-                Nothing -> decl        +                Nothing -> decl             where decl = pretty p <+> char ':' <+> pretty v  instance Pretty Prio where@@ -98,39 +98,39 @@ -- Selectors  instance Pretty Sel where-	pretty x = case x of-		    SSel x -> pretty x-		    DescendSel x xs -> pretty x <+> space <+> pretty xs-		    ChildSel   x xs -> pretty x <+> char '>' <+> pretty xs-		    AdjSel     x xs -> pretty x <+> char '+' <+> pretty xs+        pretty x = case x of+                    SSel x -> pretty x+                    DescendSel x xs -> pretty x <+> space <+> pretty xs+                    ChildSel   x xs -> pretty x <+> char '>' <+> pretty xs+                    AdjSel     x xs -> pretty x <+> char '+' <+> pretty xs  instance Pretty SimpleSel where-	pretty x = case x of -		     UnivSel    xs -> char '*' <> prettySubs xs-		     TypeSel el xs -> text el <> prettySubs xs+        pretty x = case x of+                     UnivSel    xs -> char '*' <> prettySubs xs+                     TypeSel el xs -> text el <> prettySubs xs  prettySubs :: [SubSel] -> Doc prettySubs = hcat . map pretty  instance Pretty PseudoVal where-    pretty x = case x of +    pretty x = case x of                 PIdent a -> pretty a                 PFunc  a -> pretty a  instance Pretty SubSel where-	pretty x = case x of-		    AttrSel a         -> brackets $ pretty a-		    ClassSel v        -> char '.' <> text v-		    IdSel v           -> char '#' <> text v-		    PseudoSel v       -> char ':' <> pretty v+        pretty x = case x of+                    AttrSel a         -> brackets $ pretty a+                    ClassSel v        -> char '.' <> text v+                    IdSel v           -> char '#' <> text v+                    PseudoSel v       -> char ':' <> pretty v  instance Pretty Attr where     pretty x = case x of-		    Attr a         -> text a-		    AttrIs a v     -> text a <> equals <> (doubleQuotes $ text v)-		    AttrIncl a v   -> text a <> text "~=" <> (doubleQuotes $ text v)-		    AttrBegins a v -> text a <> text "|=" <> (doubleQuotes $ text v)-	+                    Attr a         -> text a+                    AttrIs a v     -> text a <> equals <> (doubleQuotes $ text v)+                    AttrIncl a v   -> text a <> text "~=" <> (doubleQuotes $ text v)+                    AttrBegins a v -> text a <> text "|=" <> (doubleQuotes $ text v)+ -- Value  instance Pretty Value where@@ -173,7 +173,7 @@   instance Pretty Ident where-	pretty (Ident a) = text a+        pretty (Ident a) = text a   -- Value elems@@ -188,9 +188,9 @@     pretty (Grad x) = double x <> text "grad"  instance Pretty Color where-    pretty x = case x of -        Cword a    -> text a -        Crgb r g b -> (text "rgb" <> ) $ parens $ hsep $ +    pretty x = case x of+        Cword a    -> text a+        Crgb r g b -> (text "rgb" <> ) $ parens $ hsep $                         punctuate comma $ map int [r, g, b]  instance Pretty Hz where@@ -234,9 +234,3 @@  instance Pretty Uri where     pretty (Uri x) = text "url" <> (parens $ text x)------
src/Language/Css/Syntax.hs view
@@ -1,7 +1,6 @@- -- | Css2.1 syntax ----- haskell translation of css 2.1 grammar. +-- haskell translation of css 2.1 grammar. -- -- See <http://www.w3.org/TR/CSS2/grammar.html> and <http://www.w3.org/TR/CSS2/syndata.html> module Language.Css.Syntax (@@ -9,26 +8,26 @@         StyleSheet(..), StyleBody(..),          -- * AtRule-        AtCharSet(..), +        AtCharSet(..),         AtImport(..), ImportHead(..),-        AtMedia(..), +        AtMedia(..),         AtPage(..), PseudoPage,         AtFontFace(..),-        +         -- * RuleSet         RuleSet(..), Decl(..), Prop, Prio(..), Expr(..),-        +         -- * Selectors         Sel(..), SimpleSel(..), SubSel(..),         Element, Attr(..), Class, Id, AttrIdent, AttrVal, PseudoVal(..),          -- * Values-        Value(..), -       +        Value(..),+         -- * Primitives-        Ident(..), Func(..), -                -        Deg(..), +        Ident(..), Func(..),++        Deg(..),         Rad(..),         Grad(..),         Color(..),@@ -61,8 +60,8 @@ data StyleSheet = StyleSheet (Maybe AtCharSet) [AtImport] [StyleBody]                   deriving (Eq, Show) -data StyleBody = SRuleSet    RuleSet -               | SAtMedia    AtMedia +data StyleBody = SRuleSet    RuleSet+               | SAtMedia    AtMedia                | SAtPage     AtPage                | SAtFontFace AtFontFace                   deriving (Eq, Show)@@ -115,26 +114,26 @@ -- Selectors  -- | Selector-data Sel = SSel SimpleSel    -- ^ single selector	 -	 | DescendSel Sel Sel    -- ^ ' '-	 | ChildSel   Sel Sel    -- ^ \'>\'-	 | AdjSel     Sel Sel    -- ^ \'+\'+data Sel = SSel SimpleSel    -- ^ single selector+         | DescendSel Sel Sel    -- ^ ' '+         | ChildSel   Sel Sel    -- ^ \'>\'+         | AdjSel     Sel Sel    -- ^ \'+\'                   deriving (Eq, Show)  -- | Simple selector data SimpleSel = UnivSel [SubSel]           -- ^ Universal selector-    	       | TypeSel Element [SubSel]   -- ^ Type selector+               | TypeSel Element [SubSel]   -- ^ Type selector                   deriving (Eq, Show)   data SubSel = AttrSel Attr        -- ^ attribute selector-	    | ClassSel Class          -- ^ \'.\'-	    | IdSel Id                -- ^ \'#\'-	    | PseudoSel PseudoVal     -- ^ pseudo classes/elements+            | ClassSel Class          -- ^ \'.\'+            | IdSel Id                -- ^ \'#\'+            | PseudoSel PseudoVal     -- ^ pseudo classes/elements                   deriving (Eq, Show)  -- | attribute selector-data Attr = Attr AttrIdent                +data Attr = Attr AttrIdent           | AttrIs AttrIdent AttrVal      -- ^ \'=\'           | AttrIncl AttrIdent AttrVal    -- ^ \'~=\'           | AttrBegins AttrIdent AttrVal  -- ^ \'|=\'@@ -143,7 +142,7 @@ type Element = String type Class = String type Id = String-	+ type AttrIdent = String type AttrVal = String @@ -160,28 +159,28 @@           | SpaceSep Expr Expr    -- ^ space separated expressions                   deriving (Eq, Show) -data Value = VDeg Deg | -             VRad Rad | -             VGrad Grad | -             VColor Color | -             VHz Hz | -             VKHz KHz | -             VFunc Func | -             VIdent Ident | -             VInt Int | -             VEm Em | -             VEx Ex | -             VPx Px | -             VIn In | -             VCm Cm | -             VMm Mm | -             VPc Pc | -             VPt Pt | -             VDouble Double | -             VPercentage Percentage | -             VString String | -             VMs Ms | -             VS S | +data Value = VDeg Deg |+             VRad Rad |+             VGrad Grad |+             VColor Color |+             VHz Hz |+             VKHz KHz |+             VFunc Func |+             VIdent Ident |+             VInt Int |+             VEm Em |+             VEx Ex |+             VPx Px |+             VIn In |+             VCm Cm |+             VMm Mm |+             VPc Pc |+             VPt Pt |+             VDouble Double |+             VPercentage Percentage |+             VString String |+             VMs Ms |+             VS S |              VUri Uri         deriving (Eq, Show) @@ -201,7 +200,7 @@         deriving (Eq, Show)  -- | \<color\>-data Color = Cword String | +data Color = Cword String |              Crgb Int Int Int         deriving (Eq, Show)