git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
Remove values-as-statements
5382177Phil Freeman
examples/passing/MethodCall.pursdeleted−8
@@ -1,8 +0,0 @@
1−module MethodCall where
2−
3− foreign import foo :: () -> {}
4−
5− test = {
6− foo();
7− return 0;
8− }
purescript.cabal+1−1
@@ -1,5 +1,5 @@
1name: purescript
1name: purescript
2−version: 0.2.6
2+version: 0.2.7
3cabal-version: >=1.8
3cabal-version: >=1.8
4build-type: Simple
4build-type: Simple
5license: MIT
5license: MIT
src/Language/PureScript/CodeGen/JS.hs−1
@@ -187,5 +187,4 @@ statementToJs m e (If ifst) = ifToJs ifst
187 elseToJs :: ElseStatement -> JS
187 elseToJs :: ElseStatement -> JS
188 elseToJs (Else sts) = JSBlock (map (statementToJs m e) sts)
188 elseToJs (Else sts) = JSBlock (map (statementToJs m e) sts)
189 elseToJs (ElseIf elif) = ifToJs elif
189 elseToJs (ElseIf elif) = ifToJs elif
190−statementToJs m e (ValueStatement val) = valueToJs m e val
191statementToJs m e (Return value) = JSReturn (valueToJs m e value)
190statementToJs m e (Return value) = JSReturn (valueToJs m e value)
src/Language/PureScript/Parser/Values.hs−4
@@ -211,9 +211,6 @@ parseElseStatement :: P.Parsec String ParseState ElseStatement
211parseElseStatement = C.reserved "else" >> (ElseIf <$> parseIfStatement
211parseElseStatement = C.reserved "else" >> (ElseIf <$> parseIfStatement
212 <|> Else <$> parseManyStatements)
212 <|> Else <$> parseManyStatements)
213
213
214−parseValueStatement :: P.Parsec String ParseState Statement
215−parseValueStatement = ValueStatement <$> (parseValue <* C.semi)
216−
217parseReturn :: P.Parsec String ParseState Statement
214parseReturn :: P.Parsec String ParseState Statement
218parseReturn = Return <$> (C.reserved "return" *> parseValue <* C.indented <* C.semi)
215parseReturn = Return <$> (C.reserved "return" *> parseValue <* C.indented <* C.semi)
219
216
@@ -224,7 +221,6 @@ parseStatement = P.choice
224 , parseWhile
221 , parseWhile
225 , parseFor
222 , parseFor
226 , parseIf
223 , parseIf
227− , parseValueStatement
228 , parseReturn ] P.<?> "statement"
224 , parseReturn ] P.<?> "statement"
229
225
230parseStringBinder :: P.Parsec String ParseState Binder
226parseStringBinder :: P.Parsec String ParseState Binder
src/Language/PureScript/Pretty/Values.hs−1
@@ -205,7 +205,6 @@ prettyPrintStatement (For ident start end sts) = "for " ++ show ident
205 ++ " until " ++ prettyPrintValue end ++ ": {"
205 ++ " until " ++ prettyPrintValue end ++ ": {"
206 ++ intercalate "; " (map prettyPrintStatement sts) ++ " }"
206 ++ intercalate "; " (map prettyPrintStatement sts) ++ " }"
207prettyPrintStatement (If ifst) = prettyPrintIfStatement ifst
207prettyPrintStatement (If ifst) = prettyPrintIfStatement ifst
208−prettyPrintStatement (ValueStatement val) = prettyPrintValue val
209prettyPrintStatement (Return value) = "return " ++ prettyPrintValue value
208prettyPrintStatement (Return value) = "return " ++ prettyPrintValue value
210
209
211prettyPrintIfStatement :: IfStatement -> String
210prettyPrintIfStatement :: IfStatement -> String
src/Language/PureScript/TypeChecker/Types.hs−3
@@ -540,9 +540,6 @@ checkStatement mass ret (For ident start end inner) = do
540 check end Number
540 check end Number
541 (allCodePathsReturn, _) <- bindLocalVariables moduleName [(ident, Number)] $ checkBlock mass ret inner
541 (allCodePathsReturn, _) <- bindLocalVariables moduleName [(ident, Number)] $ checkBlock mass ret inner
542 return (allCodePathsReturn, mass)
542 return (allCodePathsReturn, mass)
543−checkStatement mass _ (ValueStatement val) = do
544− check val unit
545− return (False, mass)
546checkStatement mass ret (Return val) = do
543checkStatement mass ret (Return val) = do
547 check val ret
544 check val ret
548 return (True, mass)
545 return (True, mass)
src/Language/PureScript/Values.hs−1
@@ -85,7 +85,6 @@ data Statement
85 | While Value [Statement]
85 | While Value [Statement]
86 | For Ident Value Value [Statement]
86 | For Ident Value Value [Statement]
87 | If IfStatement
87 | If IfStatement
88− | ValueStatement Value
89 | Return Value deriving (Show, Data, Typeable)
88 | Return Value deriving (Show, Data, Typeable)
90
89
91data IfStatement = IfStatement Value [Statement] (Maybe ElseStatement) deriving (Show, Data, Typeable)
90data IfStatement = IfStatement Value [Statement] (Maybe ElseStatement) deriving (Show, Data, Typeable)