Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
This module is the twin brother of module Text.Lucius. The difference is that these parsers preserv the given order of attributes and mixin blocks.
let bams = [Text.Ordered.cassiusMixin| bam1:bam2 ^{bins} bam3:bam4 |] :: Mixin bins = [Text.Ordered.cassiusMixin| bin1:bin2 |] :: Mixin in renderCss ([lucius|foo{bar1:bar2;^{bams};bar3:bar4;}|] undefined) "foo{bar1:bar2;bam1:bam2;bin1:bin2;bam3:bam4;bar3:bar4}"
Synopsis
- lucius :: QuasiQuoter
- luciusFile :: FilePath -> Q Exp
- luciusFileDebug :: FilePath -> Q Exp
- luciusFileReload :: FilePath -> Q Exp
- luciusMixin :: QuasiQuoter
- data Mixin
- luciusRT :: Text -> [(Text, Text)] -> Either String Text
- luciusRT' :: Text -> Either String ([(Text, Text)] -> Either String [TopLevel 'Resolved])
- luciusRTMinified :: Text -> [(Text, Text)] -> Either String Text
- luciusRTMixin :: Text -> Bool -> [(Text, RTValue)] -> Either String Text
- data RTValue
- data Css
- type CssUrl url = (url -> [(Text, Text)] -> Text) -> Css
- class ToCss a where
- renderCss :: Css -> Text
- renderCssUrl :: (url -> [(Text, Text)] -> Text) -> CssUrl url -> Text
- data Color = Color Word8 Word8 Word8
- colorRed :: Color
- colorBlack :: Color
- mkSize :: String -> ExpQ
- data AbsoluteUnit
- = Centimeter
- | Inch
- | Millimeter
- | Pica
- | Point
- data AbsoluteSize = AbsoluteSize {}
- absoluteSize :: AbsoluteUnit -> Rational -> AbsoluteSize
- data EmSize = EmSize Rational
- data ExSize = ExSize Rational
- data PercentageSize = PercentageSize {}
- percentageSize :: Rational -> PercentageSize
- data PixelSize = PixelSize Rational
- parseTopLevels :: Order -> Parser [TopLevel 'Unresolved]
- luciusUsedIdentifiers :: Order -> String -> [(Deref, VarType)]
Parsing
lucius :: QuasiQuoter Source #
>>>
renderCss ([lucius|foo{bar:baz}|] undefined)
"foo{bar:baz}"
Since: 2.0.30
Mixins
luciusMixin :: QuasiQuoter Source #
Since: 2.0.30
Runtime
luciusRT' :: Text -> Either String ([(Text, Text)] -> Either String [TopLevel 'Resolved]) Source #
Since: 2.0.30
Mixin
Since: 2.0.30
Datatypes
Type class
Instances
ToCss AbsoluteSize Source # | |
Defined in Text.Internal.CssCommon toCss :: AbsoluteSize -> Builder Source # | |
ToCss Color Source # | |
ToCss EmSize Source # | |
ToCss ExSize Source # | |
ToCss PercentageSize Source # | |
Defined in Text.Internal.CssCommon toCss :: PercentageSize -> Builder Source # | |
ToCss PixelSize Source # | |
ToCss Text Source # | |
ToCss Text Source # | |
ToCss [Char] Source # | |
Rendering
ToCss instances
Color
colorBlack :: Color Source #
Size
data AbsoluteUnit Source #
Absolute size units.
Instances
Show AbsoluteUnit Source # | |
Defined in Text.Internal.CssCommon showsPrec :: Int -> AbsoluteUnit -> ShowS # show :: AbsoluteUnit -> String # showList :: [AbsoluteUnit] -> ShowS # | |
Eq AbsoluteUnit Source # | |
Defined in Text.Internal.CssCommon (==) :: AbsoluteUnit -> AbsoluteUnit -> Bool # (/=) :: AbsoluteUnit -> AbsoluteUnit -> Bool # |
data AbsoluteSize Source #
Not intended for direct use, see mkSize
.
AbsoluteSize | |
|
Instances
absoluteSize :: AbsoluteUnit -> Rational -> AbsoluteSize Source #
Constructs AbsoluteSize
. Not intended for direct use, see mkSize
.
data PercentageSize Source #
Not intended for direct use, see mkSize
.
PercentageSize | |
|
Instances
percentageSize :: Rational -> PercentageSize Source #
Constructs PercentageSize
. Not intended for direct use, see mkSize
.
Internal
parseTopLevels :: Order -> Parser [TopLevel 'Unresolved] Source #