1
0
forked from GitHub/gf-core

"Committed_by_peb"

This commit is contained in:
peb
2005-02-09 11:46:54 +00:00
parent 56c80bf8d9
commit 71c316cfc5
55 changed files with 485 additions and 339 deletions

View File

@@ -19,7 +19,7 @@ import Grammar
import Ident
import PrGrammar
-- the strings are non-fatal warnings
-- | the strings are non-fatal warnings
type Check a = STM (Context,[String]) a
checkError :: String -> Check a
@@ -28,7 +28,7 @@ checkError = raise
checkCond :: String -> Bool -> Check ()
checkCond s b = if b then return () else checkError s
-- warnings should be reversed in the end
-- | warnings should be reversed in the end
checkWarn :: String -> Check ()
checkWarn s = updateSTM (\ (cont,msg) -> (cont, s:msg))

View File

@@ -12,9 +12,10 @@
-- (Description of the module)
-----------------------------------------------------------------------------
module Comments where
module Comments ( remComments
) where
-- comment removal : line tails prefixed by -- as well as chunks in {- ... -}
-- | comment removal : line tails prefixed by -- as well as chunks in {- ... -}
remComments :: String -> String
remComments s =

View File

@@ -17,14 +17,17 @@ module Ident where
import Operations
-- import Monad
-- | the constructors labelled /INTERNAL/ are
-- internal representation never returned by the parser
data Ident =
IC String -- raw identifier after parsing, resolved in Rename
| IW -- wildcard
IC String -- ^ raw identifier after parsing, resolved in Rename
| IW -- ^ wildcard
-- below this line: internal representation never returned by the parser
| IV (Int,String) -- variable
| IA (String,Int) -- argument of cat at position
| IAV (String,Int,Int) -- argument of cat with bindings at position
| IV (Int,String) -- ^ /INTERNAL/ variable
| IA (String,Int) -- ^ /INTERNAL/ argument of cat at position
| IAV (String,Int,Int) -- ^ /INTERNAL/ argument of cat with bindings at position
deriving (Eq, Ord, Show, Read)
@@ -42,14 +45,14 @@ prIdent i = case i of
-- normal identifier
-- ident s = IC s
-- to mark argument variables
-- | to mark argument variables
argIdent 0 (IC c) i = identA (c,i)
argIdent b (IC c) i = identAV (c,b,i)
-- used in lin defaults
-- | used in lin defaults
strVar = identA ("str",0)
-- wild card
-- | wild card
wildIdent = identW
isWildIdent :: Ident -> Bool