diff options
author | Camil Staps | 2017-07-30 09:53:24 +0200 |
---|---|---|
committer | Camil Staps | 2017-07-30 09:53:24 +0200 |
commit | ad519a42876796f969900e687cea80c799dd40ec (patch) | |
tree | 608f3250dc4924be286d3c296f74db9bfed5dabd /Sil/Syntax.dcl | |
parent | Reorganise: make Position a field in Syntax types (diff) |
Add positions to Statements
Diffstat (limited to 'Sil/Syntax.dcl')
-rw-r--r-- | Sil/Syntax.dcl | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/Sil/Syntax.dcl b/Sil/Syntax.dcl index b298c19..4f0ddf9 100644 --- a/Sil/Syntax.dcl +++ b/Sil/Syntax.dcl @@ -38,12 +38,12 @@ from Sil.Util.Parser import :: ParsePosition, class getPos } :: Statement - = Declaration Name Expression - | Application Expression - | Return (Maybe Expression) - | If [(Expression, CodeBlock)] (Maybe CodeBlock) - | While Expression CodeBlock - | MachineStm String + = Declaration ParsePosition Name Expression + | Application ParsePosition Expression + | Return ParsePosition (Maybe Expression) + | If ParsePosition [(Expression, CodeBlock)] (Maybe CodeBlock) + | While ParsePosition Expression CodeBlock + | MachineStm ParsePosition String :: Expression = Name Name @@ -90,6 +90,7 @@ instance toString Literal instance getPos Function instance getPos Initialisation +instance getPos Statement class allStatements a :: a -> [Statement] instance allStatements Program |