{-# OPTIONS_GHC -Wall #-}
module Text.Pandoc.Z.Combinators where
import Control.Lens
import Data.Stringz
import Text.Pandoc.Z.Definition
str ::
(HasText s, AsInline i) =>
s
-> i
str :: forall s i. (HasText s, AsInline i) => s -> i
str =
AReview i Text -> Text -> i
forall b (m :: * -> *) t. MonadReader b m => AReview t b -> m t
review AReview i Text
forall a. AsInline a => Prism' a Text
Prism' i Text
_Str (Text -> i) -> (s -> Text) -> s -> i
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Getting Text s Text -> s -> Text
forall s (m :: * -> *) a. MonadReader s m => Getting a s a -> m a
view Getting Text s Text
forall a. HasText a => Lens' a Text
Lens' s Text
text
plainStr ::
(HasText s, AsBlock t) =>
s
-> t
plainStr :: forall s t. (HasText s, AsBlock t) => s -> t
plainStr =
AReview t [Inline] -> [Inline] -> t
forall b (m :: * -> *) t. MonadReader b m => AReview t b -> m t
review AReview t [Inline]
forall a. AsBlock a => Prism' a [Inline]
Prism' t [Inline]
_Plain ([Inline] -> t) -> (s -> [Inline]) -> s -> t
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Inline -> [Inline]
forall a. a -> [a]
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Inline -> [Inline]) -> (s -> Inline) -> s -> [Inline]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. s -> Inline
forall s i. (HasText s, AsInline i) => s -> i
str
paraStr ::
(HasText s, AsBlock t) =>
s
-> t
paraStr :: forall s t. (HasText s, AsBlock t) => s -> t
paraStr =
AReview t [Inline] -> [Inline] -> t
forall b (m :: * -> *) t. MonadReader b m => AReview t b -> m t
review AReview t [Inline]
forall a. AsBlock a => Prism' a [Inline]
Prism' t [Inline]
_Para ([Inline] -> t) -> (s -> [Inline]) -> s -> t
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Inline -> [Inline]
forall a. a -> [a]
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Inline -> [Inline]) -> (s -> Inline) -> s -> [Inline]
forall b c a. (b -> c) -> (a -> b) -> a -> c
. s -> Inline
forall s i. (HasText s, AsInline i) => s -> i
str
attribute ::
(HasText s, HasAttr a, Monoid a) =>
s
-> a
attribute :: forall s a. (HasText s, HasAttr a, Monoid a) => s -> a
attribute s
s =
a
forall a. Monoid a => a
mempty a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (Text -> Identity Text) -> a -> Identity a
forall a. HasAttr a => Lens' a Text
Lens' a Text
identifier ((Text -> Identity Text) -> a -> Identity a) -> Text -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ Getting Text s Text -> s -> Text
forall s (m :: * -> *) a. MonadReader s m => Getting a s a -> m a
view Getting Text s Text
forall a. HasText a => Lens' a Text
Lens' s Text
text s
s
span' ::
(HasText s, Monoid a, HasAttr a) =>
s
-> a
span' :: forall s a. (HasText s, Monoid a, HasAttr a) => s -> a
span' s
s =
a
forall a. Monoid a => a
mempty a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (Attr -> Identity Attr) -> a -> Identity a
forall a. HasAttr a => Lens' a Attr
Lens' a Attr
attr ((Attr -> Identity Attr) -> a -> Identity a) -> Attr -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ s -> Attr
forall s a. (HasText s, HasAttr a, Monoid a) => s -> a
attribute s
s
code' ::
(HasAttr a, Monoid a, HasText a, HasText s1, HasText s2) =>
s1
-> s2
-> a
code' :: forall a s1 s2.
(HasAttr a, Monoid a, HasText a, HasText s1, HasText s2) =>
s1 -> s2 -> a
code' s1
s1 s2
s2 =
a
forall a. Monoid a => a
mempty a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (Attr -> Identity Attr) -> a -> Identity a
forall a. HasAttr a => Lens' a Attr
Lens' a Attr
attr ((Attr -> Identity Attr) -> a -> Identity a) -> Attr -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ s1 -> Attr
forall s a. (HasText s, HasAttr a, Monoid a) => s -> a
attribute s1
s1
a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (Text -> Identity Text) -> a -> Identity a
forall a. HasText a => Lens' a Text
Lens' a Text
text ((Text -> Identity Text) -> a -> Identity a) -> Text -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ Getting Text s2 Text -> s2 -> Text
forall s (m :: * -> *) a. MonadReader s m => Getting a s a -> m a
view Getting Text s2 Text
forall a. HasText a => Lens' a Text
Lens' s2 Text
text s2
s2
displayMath ::
HasText s =>
s
-> Math
displayMath :: forall s. HasText s => s -> Math
displayMath =
MathType -> Text -> Math
Math MathType
DisplayMath (Text -> Math) -> (s -> Text) -> s -> Math
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Getting Text s Text -> s -> Text
forall s (m :: * -> *) a. MonadReader s m => Getting a s a -> m a
view Getting Text s Text
forall a. HasText a => Lens' a Text
Lens' s Text
text
inlineMath ::
HasText s =>
s
-> Math
inlineMath :: forall s. HasText s => s -> Math
inlineMath =
MathType -> Text -> Math
Math MathType
InlineMath (Text -> Math) -> (s -> Text) -> s -> Math
forall b c a. (b -> c) -> (a -> b) -> a -> c
. Getting Text s Text -> s -> Text
forall s (m :: * -> *) a. MonadReader s m => Getting a s a -> m a
view Getting Text s Text
forall a. HasText a => Lens' a Text
Lens' s Text
text
cellXY ::
(Monoid a, HasRowSpan a, HasColSpan a) =>
RowSpan
-> ColSpan
-> a
cellXY :: forall a.
(Monoid a, HasRowSpan a, HasColSpan a) =>
RowSpan -> ColSpan -> a
cellXY RowSpan
x ColSpan
y =
a
forall a. Monoid a => a
mempty
a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (RowSpan -> Identity RowSpan) -> a -> Identity a
forall a. HasRowSpan a => Lens' a RowSpan
Lens' a RowSpan
rowSpan ((RowSpan -> Identity RowSpan) -> a -> Identity a)
-> RowSpan -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ RowSpan
x
a -> (a -> a) -> a
forall a b. a -> (a -> b) -> b
& (ColSpan -> Identity ColSpan) -> a -> Identity a
forall a. HasColSpan a => Lens' a ColSpan
Lens' a ColSpan
colSpan ((ColSpan -> Identity ColSpan) -> a -> Identity a)
-> ColSpan -> a -> a
forall s t a b. ASetter s t a b -> b -> s -> t
.~ ColSpan
y
linkImage ::
Iso'
Link
Image
linkImage :: Iso' Link Image
linkImage =
(Link -> Image) -> (Image -> Link) -> Iso' Link Image
forall s a b t. (s -> a) -> (b -> t) -> Iso s t a b
iso
(\(Link Attr
a [Inline]
i Target
t) -> Attr -> [Inline] -> Target -> Image
Image Attr
a [Inline]
i Target
t)
(\(Image Attr
a [Inline]
i Target
t) -> Attr -> [Inline] -> Target -> Link
Link Attr
a [Inline]
i Target
t)