module Language.Drasil.Sentence.Combinators (
and_, andIts, andThe,
fromThe, inThe, onThe, toThe, isThe, ofThe,
the_ofThe, the_ofTheC, the_ofGiv, the_ofGivC, the_isExpctdToHvC,
forTPS, forTPP, for, forT, forGen,
of_, ofA, or_, are, in_, is, defnAs, denotes, versus, wrt) where
import Language.Drasil.Classes ( NamedIdea )
import Language.Drasil.Development.Sentence ( titleize, titleize' )
import Language.Drasil.Sentence ( Sentence(S), (+:+) )
sentHelper :: String -> Sentence -> Sentence -> Sentence
sentHelper :: String -> Sentence -> Sentence -> Sentence
sentHelper String
inStr Sentence
a Sentence
b = Sentence
a Sentence -> Sentence -> Sentence
+:+ String -> Sentence
S String
inStr Sentence -> Sentence -> Sentence
+:+ Sentence
b
andIts, andThe, fromThe, inThe, the_isExpctdToHvC, isThe, onThe, the_ofGiv, the_ofGivC, ofThe, the_ofThe, the_ofTheC, of_, ofA,
or_, versus, and_, are, in_, is, toThe, for, denotes, wrt, defnAs :: Sentence -> Sentence -> Sentence
andIts :: Sentence -> Sentence -> Sentence
andIts = String -> Sentence -> Sentence -> Sentence
sentHelper String
"and its"
andThe :: Sentence -> Sentence -> Sentence
andThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"and the"
fromThe :: Sentence -> Sentence -> Sentence
fromThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"from the"
inThe :: Sentence -> Sentence -> Sentence
inThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"in the"
isThe :: Sentence -> Sentence -> Sentence
isThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"is the"
onThe :: Sentence -> Sentence -> Sentence
onThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"on the"
and_ :: Sentence -> Sentence -> Sentence
and_ = String -> Sentence -> Sentence -> Sentence
sentHelper String
"and"
are :: Sentence -> Sentence -> Sentence
are = String -> Sentence -> Sentence -> Sentence
sentHelper String
"are"
in_ :: Sentence -> Sentence -> Sentence
in_ = String -> Sentence -> Sentence -> Sentence
sentHelper String
"in"
is :: Sentence -> Sentence -> Sentence
is = String -> Sentence -> Sentence -> Sentence
sentHelper String
"is"
of_ :: Sentence -> Sentence -> Sentence
of_ = String -> Sentence -> Sentence -> Sentence
sentHelper String
"of"
ofA :: Sentence -> Sentence -> Sentence
ofA = String -> Sentence -> Sentence -> Sentence
sentHelper String
"of a"
or_ :: Sentence -> Sentence -> Sentence
or_ = String -> Sentence -> Sentence -> Sentence
sentHelper String
"or"
versus :: Sentence -> Sentence -> Sentence
versus = String -> Sentence -> Sentence -> Sentence
sentHelper String
"versus"
toThe :: Sentence -> Sentence -> Sentence
toThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"to the"
ofThe :: Sentence -> Sentence -> Sentence
ofThe = String -> Sentence -> Sentence -> Sentence
sentHelper String
"of the"
for :: Sentence -> Sentence -> Sentence
for = String -> Sentence -> Sentence -> Sentence
sentHelper String
"for"
denotes :: Sentence -> Sentence -> Sentence
denotes = String -> Sentence -> Sentence -> Sentence
sentHelper String
"denotes the"
wrt :: Sentence -> Sentence -> Sentence
wrt = String -> Sentence -> Sentence -> Sentence
sentHelper String
"with respect to"
defnAs :: Sentence -> Sentence -> Sentence
defnAs = String -> Sentence -> Sentence -> Sentence
sentHelper String
"defined as"
forT :: (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forT :: forall c d. (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forT c
t1 d
t2 = forall n. NamedIdea n => n -> Sentence
titleize c
t1 Sentence -> Sentence -> Sentence
+:+ String -> Sentence
S String
"for" Sentence -> Sentence -> Sentence
+:+ forall n. NamedIdea n => n -> Sentence
titleize d
t2
forGen :: (c -> Sentence) -> (d -> Sentence) -> c -> d -> Sentence
forGen :: forall c d.
(c -> Sentence) -> (d -> Sentence) -> c -> d -> Sentence
forGen c -> Sentence
f1 d -> Sentence
f2 c
t1 d
t2 = c -> Sentence
f1 c
t1 Sentence -> Sentence -> Sentence
+:+ String -> Sentence
S String
"for" Sentence -> Sentence -> Sentence
+:+ d -> Sentence
f2 d
t2
forTPS :: (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forTPS :: forall c d. (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forTPS = forall c d.
(c -> Sentence) -> (d -> Sentence) -> c -> d -> Sentence
forGen forall n. NamedIdea n => n -> Sentence
titleize' forall n. NamedIdea n => n -> Sentence
titleize
forTPP :: (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forTPP :: forall c d. (NamedIdea c, NamedIdea d) => c -> d -> Sentence
forTPP = forall c d.
(c -> Sentence) -> (d -> Sentence) -> c -> d -> Sentence
forGen forall n. NamedIdea n => n -> Sentence
titleize' forall n. NamedIdea n => n -> Sentence
titleize'
the_isExpctdToHvC :: Sentence -> Sentence -> Sentence
the_isExpctdToHvC Sentence
a Sentence
b = String -> Sentence
S String
"The" Sentence -> Sentence -> Sentence
+:+ String -> Sentence -> Sentence -> Sentence
sentHelper String
"is expected to have" Sentence
a Sentence
b
the_ofGiv :: Sentence -> Sentence -> Sentence
the_ofGiv Sentence
a Sentence
b = String -> Sentence
S String
"the" Sentence -> Sentence -> Sentence
+:+ String -> Sentence -> Sentence -> Sentence
sentHelper String
"of a given" Sentence
a Sentence
b
the_ofGivC :: Sentence -> Sentence -> Sentence
the_ofGivC Sentence
a Sentence
b = String -> Sentence
S String
"The" Sentence -> Sentence -> Sentence
+:+ String -> Sentence -> Sentence -> Sentence
sentHelper String
"of a given" Sentence
a Sentence
b
the_ofThe :: Sentence -> Sentence -> Sentence
the_ofThe Sentence
a Sentence
b = String -> Sentence
S String
"the" Sentence -> Sentence -> Sentence
+:+ String -> Sentence -> Sentence -> Sentence
sentHelper String
"of the" Sentence
a Sentence
b
the_ofTheC :: Sentence -> Sentence -> Sentence
the_ofTheC Sentence
a Sentence
b = String -> Sentence
S String
"The" Sentence -> Sentence -> Sentence
+:+ String -> Sentence -> Sentence -> Sentence
sentHelper String
"of the" Sentence
a Sentence
b