From 5b19a7658ff015a8acaaf3e5efbc5bd4c3db9674 Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Tue, 21 Aug 2007 10:53:07 +0000 Subject: [PATCH] Rain: added support for parsing channel-end types --- RainParse.hs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/RainParse.hs b/RainParse.hs index b38324a..792f37b 100644 --- a/RainParse.hs +++ b/RainParse.hs @@ -134,6 +134,8 @@ sSemiColon = try $ symbol ";" sColon = try $ symbol ":" sComma = try $ symbol "," sQuote = try $ symbol "\"" +sIn = try $ symbol "?" +sOut = try $ symbol "!" --}}} --{{{ Keywords @@ -177,6 +179,8 @@ dataType = do {sBool ; return A.Bool} <|> do {sInt ; return A.Int64} <|> do {sChannel ; inner <- dataType ; return $ A.Chan A.DirUnknown (A.ChanAttributes {A.caWritingShared = False, A.caReadingShared = False}) inner} + <|> do {sIn ; inner <- dataType ; return $ A.Chan A.DirInput (A.ChanAttributes {A.caWritingShared = False, A.caReadingShared = False}) inner} + <|> do {sOut ; inner <- dataType ; return $ A.Chan A.DirOutput (A.ChanAttributes {A.caWritingShared = False, A.caReadingShared = False}) inner} "data type" variableId :: RainParser A.Variable