diff options
| author | bringert <bringert@cs.chalmers.se> | 2005-11-28 21:25:03 +0000 |
|---|---|---|
| committer | bringert <bringert@cs.chalmers.se> | 2005-11-28 21:25:03 +0000 |
| commit | 5a82068ddc0e75ee2f2280ffb5da9cda3e53bac3 (patch) | |
| tree | 943b443c77d1aa605f44acdef41421ee4897067b /src/Transfer/Syntax/ResolveLayout.hs | |
| parent | 2455b73559560a24205f3c8d32ab86736a3cc5e8 (diff) | |
Regenerated transfer layout syntax module with bug-fixed BNFC. Fixed printing of tokens in correct positions in the layout test program.
Diffstat (limited to 'src/Transfer/Syntax/ResolveLayout.hs')
| -rw-r--r-- | src/Transfer/Syntax/ResolveLayout.hs | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/Transfer/Syntax/ResolveLayout.hs b/src/Transfer/Syntax/ResolveLayout.hs index 02c730585..9d7ab607a 100644 --- a/src/Transfer/Syntax/ResolveLayout.hs +++ b/src/Transfer/Syntax/ResolveLayout.hs @@ -9,11 +9,18 @@ prTokens :: [Token] -> String prTokens = prTokens_ 1 1 where prTokens_ _ _ [] = "" - prTokens_ l c (PT p t:ts) = + prTokens_ l c (t@(PT (Pn _ l' c') _):ts) = + replicate (l'-l) '\n' + ++ replicate (if l' == l then c'-c else c'-1) ' ' + ++ s ++ prTokens_ l' (c'+length s) ts + where s = prToken t -- prTokens_ l c (Err p:ts) = layout :: String -> String -layout s = prTokens . resolveLayout True . tokens +layout s = prTokens ts' +-- ++ "\n" ++ show ts' + where ts = tokens s + ts' = resolveLayout True ts main :: IO () main = do args <- getArgs |
