return $ AsciiParam name sect payload
nameP ∷ Parser (CIAscii, Integer, Bool)
return $ AsciiParam name sect payload
nameP ∷ Parser (CIAscii, Integer, Bool)
takeWhile1 (\c → isToken c ∧ c ≢ '*')
sect ← option 0 $ try (char '*' *> decimal )
isEncoded ← option False $ try (char '*' *> pure True)
takeWhile1 (\c → isToken c ∧ c ≢ '*')
sect ← option 0 $ try (char '*' *> decimal )
isEncoded ← option False $ try (char '*' *> pure True)
return (charset, payload)
where
metadata ∷ Parser CIAscii
return (charset, payload)
where
metadata ∷ Parser CIAscii
Just (ContinuedEncodedParam {..}, _)
→ fail "decodeSeq: internal error: CEP at section 0"
Just (AsciiParam {..}, xs)
Just (ContinuedEncodedParam {..}, _)
→ fail "decodeSeq: internal error: CEP at section 0"
Just (AsciiParam {..}, xs)
, "' is encoded but its first section is not"
])
Just (AsciiParam {..}, xs)
, "' is encoded but its first section is not"
])
Just (AsciiParam {..}, xs)