blob: 6c252d9aeed4abb7ba271c9d6acf53e549a73074 [file] [log] [blame]
#!python
import sys
from thrift import generator
from thrift import cpp_generator
from thrift import php_generator
from thrift import parser
def thrift(source, cpp=False, java=False, perl=False, php=False, python=False, ruby=False, debug=False):
generators = []
if cpp:
generators.append(cpp_generator.CPPGenerator())
if php:
generators.append(php_generator.PHPGenerator())
p = parser.Parser(debug=debug)
p.parse(source, False)
for generator in generators:
generator(p.program, source)
if len(p.errors):
return -1
else:
return 0
def main(args):
cpp = False
perl = False
php = False
python = False
java = False
ruby = False
debug = False
if "--cpp" in args:
cpp = True
args.remove("--cpp")
if "--php" in args:
php = True
args.remove("--php")
if "--debug" in args:
debug = True
args.remove("--debug")
filename = args[-1]
result = thrift(filename, cpp, java, perl, php, python, ruby, debug)
sys.exit(result)
if __name__ == '__main__':
main(sys.argv)