Anonymous user
Update a configuration file: Difference between revisions
→{{header|Haskell}}
(→{{header|Haskell}}: Updated reading in order to fulfill the task) |
|||
Line 887:
Getting and setting fields in INI data:
<lang Haskell>
(lst, []) -> (lst, [])▼
(lst, _:post) -> (lst, post)▼
where▼
eqv f entry = (toUpper <$> f) == (toUpper <$> field entry)▼
field (Field f _) = f▼
field (Flag f _) = f▼
field _ = ""▼
▲setValue f v ini = ini {entries = prev ++ [Field f v] ++ post}
setFlag :: String -> Bool -> INI -> INI
setFlag f v
enable f = setFlag f True
disable f = setFlag f False
▲ field (Flag f _) = f
▲ field _ = ""
replaceOn p x lst = prev ++ x : post
▲ where
(prev,post) = case break p lst of
IO stuff:
|