Ejemplo n.º 1
0
def main(argv):
    if len(argv) < 3:
        print "usage: %s specfile templatefile [-nodes]" % argv[0]
        sys.exit(1)

    specfile = argv[1]
    templatefile = argv[2]
    nodesmode = "-nodes" in argv

    spec = load_spec(specfile)
    nodes = spec.nodes
    env.globals['nodes'] = nodes
    env.globals['spec'] = spec
    env.globals['binding'] = spec.java_binding
    env.globals['package'] = spec.java_package

    template = env.get_template(templatefile)

    for node in nodes:
        preprocess_node(node)

    if nodesmode:
        for node in nodes:
            filename = "%s.java" % node.classname
            print "Create: %s" % filename
            file = open(filename, "w")

            file.write(template.render(node=node).encode("utf-8") + "\n")
            file.close()
    else:
        sys.stdout.write(template.render().encode("utf-8") + "\n")
Ejemplo n.º 2
0
def main(argv):
	if len(argv) < 3:
		print "usage: %s specfile templatefile" % argv[0]
		sys.exit(1)

	specfile   = argv[1]
	spec       = load_spec(specfile)
	nodes      = spec.nodes
	real_nodes = prepare_nodes(nodes)

	templatefile = argv[2]

	env.globals['nodes']   = real_nodes
	env.globals['spec']    = spec
	env.globals['len']     = len
	env.globals['warning'] = "/* Warning: automatically generated file */"

	template = env.get_template(templatefile)
	sys.stdout.write(template.render().encode("utf-8"))
Ejemplo n.º 3
0
def main(argv):
	global tags
	output = sys.stdout
	specfile = argv[1]
	if len(argv) > 2:
		output = open(argv[-1], "w")
	if len(argv) > 4:
		tagfile = open(argv[-3], "r")
		global linkbase
		linkbase = argv[-2]
		if linkbase != "":
			linkbase += "/"
		try:
			from lxml import etree
			tags = etree.parse(tagfile)
		except:
			tags = None

	spec = load_spec(specfile)
	real_nodes = prepare_nodes(spec.nodes)
	time = datetime.now().replace(microsecond=0).isoformat(' ')
	output.write(docu_template.render(nodes=real_nodes, time=time))
	if output != sys.stdout:
		output.close()
Ejemplo n.º 4
0
def main(argv):
	if len(argv) < 3:
		print "usage: %s specname(ignored) destdirectory" % argv[0]
		sys.exit(1)

	specfile     = argv[1]
	templatefile = argv[2]

	spec  = load_spec(specfile)
	nodes = spec.nodes
	real_nodes = []
	for node in nodes:
		if isAbstract(node):
			continue
		preprocess_node(node)
		real_nodes.append(node)

	env.globals['nodes']   = real_nodes
	env.globals['spec']    = spec
	env.globals['warning'] = "/* Warning: automatically generated file */"
	env.globals['hasattr'] = hasattr

	template = env.get_template(templatefile)
	sys.stdout.write(template.render().encode("utf-8"))