shakespeare-2.1.0.1: A toolkit for making compile-time interpolated templates
Safe HaskellNone
LanguageHaskell2010

Text.Lucius

Synopsis

Parsing

lucius :: QuasiQuoter #

>>> renderCss ([lucius|foo{bar:baz}|] undefined)
"foo{bar:baz}"

Mixins

data Mixin #

Instances

Instances details
Monoid Mixin # 
Instance details

Defined in Text.Internal.Css

Methods

mempty :: Mixin #

mappend :: Mixin -> Mixin -> Mixin #

mconcat :: [Mixin] -> Mixin #

Semigroup Mixin # 
Instance details

Defined in Text.Internal.Css

Methods

(<>) :: Mixin -> Mixin -> Mixin #

sconcat :: NonEmpty Mixin -> Mixin #

stimes :: Integral b => b -> Mixin -> Mixin #

Lift Mixin # 
Instance details

Defined in Text.Internal.Css

Methods

lift :: Quote m => Mixin -> m Exp #

liftTyped :: forall (m :: Type -> Type). Quote m => Mixin -> Code m Mixin #

Runtime

luciusRT' :: Text -> Either String ([(Text, Text)] -> Either String [TopLevel 'Resolved]) #

luciusRTMinified :: Text -> [(Text, Text)] -> Either String Text #

Same as luciusRT, but output has no added whitespace.

Since 1.0.3

Mixin

luciusRTMixin #

Arguments

:: Text

template

-> Bool

minify?

-> [(Text, RTValue)]

scope

-> Either String Text 

Runtime Lucius with mixin support.

Since 1.0.6

data RTValue #

Constructors

RTVRaw Text 
RTVMixin Mixin 

Datatypes

data Css #

type CssUrl url = (url -> [(Text, Text)] -> Text) -> Css #

Type class

class ToCss a where #

Methods

toCss :: a -> Builder #

Instances

Instances details
ToCss AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss Color # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: Color -> Builder #

ToCss EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: EmSize -> Builder #

ToCss ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: ExSize -> Builder #

ToCss PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss PixelSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: PixelSize -> Builder #

ToCss Text # 
Instance details

Defined in Text.Internal.Css

Methods

toCss :: Text -> Builder #

ToCss Text # 
Instance details

Defined in Text.Internal.Css

Methods

toCss :: Text -> Builder #

ToCss [Char] # 
Instance details

Defined in Text.Internal.Css

Methods

toCss :: [Char] -> Builder #

Rendering

renderCssUrl :: (url -> [(Text, Text)] -> Text) -> CssUrl url -> Text #

ToCss instances

Color

data Color #

Constructors

Color Word8 Word8 Word8 

Instances

Instances details
Show Color # 
Instance details

Defined in Text.Internal.CssCommon

Methods

showsPrec :: Int -> Color -> ShowS #

show :: Color -> String #

showList :: [Color] -> ShowS #

ToCss Color # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: Color -> Builder #

Size

mkSize :: String -> ExpQ #

Create a CSS size, e.g. $(mkSize "100px").

data AbsoluteUnit #

Absolute size units.

Constructors

Centimeter 
Inch 
Millimeter 
Pica 
Point 

Instances

Instances details
Show AbsoluteUnit # 
Instance details

Defined in Text.Internal.CssCommon

Eq AbsoluteUnit # 
Instance details

Defined in Text.Internal.CssCommon

data AbsoluteSize #

Not intended for direct use, see mkSize.

Constructors

AbsoluteSize 

Fields

Instances

Instances details
Num AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

Fractional AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

Show AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

Eq AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

Ord AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss AbsoluteSize # 
Instance details

Defined in Text.Internal.CssCommon

absoluteSize :: AbsoluteUnit -> Rational -> AbsoluteSize #

Constructs AbsoluteSize. Not intended for direct use, see mkSize.

data EmSize #

Constructors

EmSize Rational 

Instances

Instances details
Num EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Fractional EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Show EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Eq EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

(==) :: EmSize -> EmSize -> Bool #

(/=) :: EmSize -> EmSize -> Bool #

Ord EmSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss EmSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: EmSize -> Builder #

data ExSize #

Constructors

ExSize Rational 

Instances

Instances details
Num ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Fractional ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Show ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Eq ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

(==) :: ExSize -> ExSize -> Bool #

(/=) :: ExSize -> ExSize -> Bool #

Ord ExSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss ExSize # 
Instance details

Defined in Text.Internal.CssCommon

Methods

toCss :: ExSize -> Builder #

data PercentageSize #

Not intended for direct use, see mkSize.

Constructors

PercentageSize 

Fields

Instances

Instances details
Num PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

Fractional PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

Show PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

Eq PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

Ord PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

ToCss PercentageSize # 
Instance details

Defined in Text.Internal.CssCommon

percentageSize :: Rational -> PercentageSize #

Constructs PercentageSize. Not intended for direct use, see mkSize.

Internal

parseTopLevels :: Order -> Parser [TopLevel 'Unresolved] #

luciusUsedIdentifiers :: Order -> String -> [(Deref, VarType)] #

Determine which identifiers are used by the given template, useful for creating systems like yesod devel.