packages feed

hydrogen-syntax 0.5 → 0.6

raw patch · 2 files changed

+15/−7 lines, 2 filesdep ~hydrogen-preludedep ~hydrogen-utilPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: hydrogen-prelude, hydrogen-util

API changes (from Hackage documentation)

Files

hydrogen-syntax.cabal view
@@ -1,5 +1,5 @@ name:                 hydrogen-syntax-version:              0.5+version:              0.6 homepage:             https://github.com/scravy/hydrogen-syntax synopsis:             Hydrogen Syntax license:              BSD3@@ -20,8 +20,8 @@                       , Hydrogen.Syntax.Types   build-depends:      base ==4.7.*                       , containers ==0.5.* -                      , hydrogen-prelude ==0.5-                      , hydrogen-util ==0.5+                      , hydrogen-prelude ==0.6.0.1+                      , hydrogen-util ==0.6                       , nicify ==1.1.*                       , parsec ==3.1.*                       , uuid ==1.3.*
src/Hydrogen/Syntax/Parser.hs view
@@ -14,14 +14,20 @@     token = choice [         TIndent <$> indent       , something >>= \x -> choice [-          TString x '\'' <$> chars' '\''+          TString x '\'' <$> chars3 "'''"+        , TString x '\"' <$> chars3 "\"\"\""+        , TString x '`' <$> chars3 "```"+        , TString x '\'' <$> chars' '\''         , TString x '\"' <$> chars' '\"'         , TString x '`' <$> chars' '`'         , TSomething <$> return x         ]+      , TString "" '\'' <$> chars3 "'''"+      , TString "" '\"' <$> chars3 "\"\"\""+      , TString "" '`' <$> chars3 "```"       , TString "" '\'' <$> chars '\''       , TString "" '\"' <$> chars '\"'-      , TString "" '`' <$> chars '`'+      , TString "" '`' <$> chars' '`'       , const TSpaces <$> many1 (char ' ')       , const TComma <$> char ','       , const TSemicolon <$> char ';'@@ -37,9 +43,11 @@         nl = string "\n"         comment = string ";;" >> many (noneOf "\n") <* char '\n' -    chars' d = inBetween (char d) (many (try (char '\\' >> char d) <|> noneOf [d]))+    chars' d = inBetween (char d) (many (try (char '\\' >> char d) <|> noneOf (d : "\n"))) -    chars d = inBetween (char d) (many (noneOf (d : "\\") <|> escape))+    chars d = inBetween (char d) (many (noneOf (d : "\\\n") <|> escape))++    chars3 d = manyBetween (try (string d)) (try (string d)) (noneOf "\\" <|> escape)      inBetween d p = d *> p <* d