Exemplo n.º 1
0
def generate_cpp(header_name):
	cpp_name = re.sub(r".(h|hpp)", ".cpp", header_name)
	outfile = OutFile(cpp_name)	

	header_content = cpp_parser.file_read(header_name)
	namespaces = cpp_parser.get_namespaces(header_content)
	class_name = cpp_parser.get_class(header_content)
	methods = cpp_parser.get_methods(header_content)

	tab_level = len(namespaces)

	outfile.append("#include \"" + header_name + "\"\n\n")

	for i in range(len(namespaces)):
		outfile.append(tabbing(i) +  "namespace " + namespaces[i] + "\n"+ tabbing(i) + "{\n")

	for method in methods:
		write_method(outfile ,method, class_name, tab_level)
	
	for i in range(tab_level, 0, -1):
		outfile.append(tabbing(i - 1) + "}\n")