Type declarations of the form (x,y,z : A) -> B
commit8d83d072a736f69ea2e9466d3b4ffdd4ba11e325
authorEdwin Brady <eb@cs.st-andrews.ac.uk>
dateThu 17 Nov 2011, 14:45 (15 years ago)
parent1309a42
src/Idris/Parser.hs+5−2
@@ -520,8 +520,11 @@ pConstList syn = try (do lchar '('
520520 return [t])
521521 <|> return []
522522
523−tyDeclList syn = sepBy1 (do x <- pfName; t <- pTSig syn; return (x,t))
524− (lchar ',')
523+tyDeclList syn = try (sepBy1 (do x <- pfName; t <- pTSig syn; return (x,t))
524+ (lchar ','))
525+ <|> do ns <- sepBy1 pName (lchar ',')
526+ t <- pTSig syn
527+ return (map (\x -> (x, t)) ns)
525528
526529tyOptDeclList syn = sepBy1 (do x <- pfName; t <- option Placeholder (pTSig syn)
527530 return (x,t))