Merge 'hs2py-constants' into 'hs2py'
[ganeti-local] / src / hs2py.hs
1 {-| Haskell to Python opcode generation program.
2
3 -}
4
5 {-
6
7 Copyright (C) 2011, 2012, 2013 Google Inc.
8
9 This program is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 2 of the License, or
12 (at your option) any later version.
13
14 This program is distributed in the hope that it will be useful, but
15 WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
17 General Public License for more details.
18
19 You should have received a copy of the GNU General Public License
20 along with this program; if not, write to the Free Software
21 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
22 02110-1301, USA.
23
24 -}
25
26 import Ganeti.Hs2Py.GenOpCodes
27 import Ganeti.Hs2Py.ListConstants
28
29 import System.Environment (getArgs)
30 import System.Exit (exitFailure)
31 import System.IO (hPutStrLn, stderr)
32
33 main :: IO ()
34 main = do
35   args <- getArgs
36   case args of
37     ["--opcodes"] -> putStrLn showPyClasses
38     ["--constants"] -> putConstants
39     _ -> do
40       hPutStrLn stderr "Usage: hs2py --opcodes | --constants"
41       exitFailure