{-
btype  ->  atype+
-}

btype :: HParser Type
btype = addRange (
    do
        ts <- many1 atype
        return $ \r -> case ts of
            [t] -> t
            (t:ts') -> Type_Application r True t ts'
            []  -> error "Pattern match failure in Parser.Parser.btype"
    ) <?> Texts.parserType
btype :: HParser Type
btype = addRange (
    do
        ts <- many1 atype
        return $ \r -> case ts of
            [t] -> t
            (t:ts') -> Type_Application r True t ts'
            []  -> error "Pattern match failure in Parser.Parser.btype"
    ) <?> Texts.parserType
btype = addRange (
    do
        ts <- many1 atype
        return $ \r -> case ts of
            [t] -> t
            (t:ts') -> Type_Application r True t ts'
            []  -> error "Pattern match failure in Parser.Parser.btype"
    ) <?> Texts.parserType