include yslt.yml !defs = [] !def yml_def(content): ! global defs ! defs.extend(content) ! return "" !yml_C = yml_def !yml_program = yml_stylesheet !def yml_main(*args): ! global defs ! includes = "" ! for arg in args: ! if isinstance(arg, list): ! listarg = arg ! break ! includes += "#include " + arg + "\n" ! myargs = [yml_text(includes)] ! myargs.extend(defs) ! myargs.append(yml_text("int main(int argc, char **argv) {\n")) ! myargs.extend(listarg) ! myargs.append(yml_text("}\n")) ! return yml_output("text") + yml_template("/", myargs)