forked from GitHub/gf-core
changed js and hs file names in gfcc output to expected ones
This commit is contained in:
@@ -18,7 +18,7 @@ tree2exp t = case t of
|
||||
TId c -> tree (AC (i2i c)) []
|
||||
TInt i -> tree (AI i) []
|
||||
TStr s -> tree (AS s) []
|
||||
-- TFloat d ->
|
||||
TFloat d -> tree (AF d) []
|
||||
where
|
||||
i2i (Ident s) = CId s
|
||||
|
||||
@@ -32,4 +32,7 @@ exp2tree (DTr xs at ts) = tabs (map i4i xs) (tapp at (map exp2tree ts))
|
||||
tapp (AC f) [] = TId (i4i f)
|
||||
tapp (AC f) vs = TApp (i4i f) vs
|
||||
tapp (AI i) [] = TInt i
|
||||
tapp (AS i) [] = TStr i
|
||||
tapp (AF i) [] = TFloat i
|
||||
tapp (AM i) [] = TId (Ident "?") ----
|
||||
i4i (CId s) = Ident s
|
||||
|
||||
@@ -16,7 +16,7 @@ main = do
|
||||
xx <- getArgs
|
||||
let (opts,fs) = getOptions "-" xx
|
||||
case opts of
|
||||
_ | oElem (iOpt "help") opts -> putStrLn "usage: gfc (--make) FILES"
|
||||
_ | oElem (iOpt "help") opts -> putStrLn usageMsg
|
||||
_ | oElem (iOpt "-make") opts -> do
|
||||
gr <- batchCompile opts fs
|
||||
let name = justModuleName (last fs)
|
||||
@@ -50,14 +50,20 @@ file2gfcc f =
|
||||
|
||||
---- TODO: nicer and richer print options
|
||||
|
||||
alsoPrint opts abs gr (opt,suff) =
|
||||
alsoPrint opts abs gr (opt,name) =
|
||||
if oElem (iOpt opt) opts
|
||||
then do
|
||||
let outfile = abs ++ "." ++ suff
|
||||
let outfile = name
|
||||
let output = prGFCC opt gr
|
||||
writeFile outfile output
|
||||
putStrLn $ "wrote file " ++ outfile
|
||||
else return ()
|
||||
|
||||
printOptions = [("haskell","hs"),("haskell_gadt","hs"),("js","js")]
|
||||
printOptions = [
|
||||
("haskell","GSyntax.hs"),
|
||||
("haskell_gadt","GSyntax.hs"),
|
||||
("js","grammar.js")
|
||||
]
|
||||
|
||||
usageMsg =
|
||||
"usage: gfc (-h | --make (-noopt) (-js | -haskell | -haskell_gadt)) (-src) FILES"
|
||||
|
||||
Reference in New Issue
Block a user