better render

This commit is contained in:
artlef 2018-05-31 22:59:22 +02:00
parent 0b76382fd1
commit db93108027
2 changed files with 23 additions and 15 deletions

View File

@ -11,7 +11,7 @@ printDifferentDef :: T.Text -> IO ()
printDifferentDef x = putStrLn (getDifferentDef x)
getDifferentDef :: T.Text -> String
getDifferentDef x = getDifferentDefMessages (length xs) ++ renderWordList xs
getDifferentDef x = getDifferentDefMessages (length xs) ++ renderHeaderList xs
where xs = (parseDefTags . differentDefTags) x
getDifferentDefMessages :: Int -> String

View File

@ -5,7 +5,7 @@ module WordDef
WordName(WordName),
WordType(WordType),
WordSentence(..),
renderWordList,
renderHeaderList,
renderHeader,
renderFullDef
) where
@ -19,19 +19,27 @@ data WordDefHeader = WordDefHeader WordName WordType deriving Show
data WordName = WordName String deriving Show
data WordType = WordType String deriving Show
renderFullDef :: WordFullDef -> String
renderFullDef w = show w
renderHeader :: WordDefHeader -> String
renderHeader (WordDefHeader n t) = (getNameString n) ++ (getTypeString t)
getNameString :: WordName -> String
getNameString (WordName s) = s
getTypeString :: WordType -> String
getTypeString (WordType s) = s
renderWordList :: [WordDefHeader] -> String
renderWordList [] = ""
renderWordList (x:xs) = (renderHeader x) ++ "\n" ++ (renderWordList xs)
renderFullDef :: WordFullDef -> String
renderFullDef (WordFullDef wordDefHeader wordSentenceList) =
renderHeader wordDefHeader ++ "\n\n" ++ renderWordSentenceList wordSentenceList
renderHeader :: WordDefHeader -> String
renderHeader (WordDefHeader n t) = (getNameString n) ++ (getTypeString t)
renderHeaderList :: [WordDefHeader] -> String
renderHeaderList [] = ""
renderHeaderList (x:xs) = (renderHeader x) ++ "\n" ++ (renderHeaderList xs)
renderWordSentence :: WordSentence -> String
renderWordSentence (WordDefSentence s) = s
renderWordSentence (WordExampleSentence s) = s
renderWordSentenceList :: [WordSentence] -> String
renderWordSentenceList [] = []
renderWordSentenceList (x:xs) = renderWordSentence x ++ renderWordSentenceList xs