2026-01-28 06:16:04 +00:00

29 lines
1.1 KiB
Python

import re
import os
print("Generating new layers.py from the following files\n")
files = list(filter(lambda x: x[-10:] == '_layers.py', os.listdir("onnx_keras")))
print(files)
layers_file = open(os.path.join('onnx_keras', 'layers.py'), 'w')
layers_file.write("# This file is generated by generate_layers.py\n")
doc_file = open("Operators.md", 'w')
doc_file.write("# Supported Layer List\n\n")
doc_file.write("**This file is generated by generate_layers.py. Please do not edit manually.**\n\n")
doc_file.write("## List\n\n")
count = 0
for fname in files:
with open(os.path.join('onnx_keras', fname), 'rb') as f:
content = f.read()
layers = re.findall('class\ \S+\(Layer\)' , str(content))
layers = list(map(lambda x: x[6:-7], layers))
count += len(layers)
#print(layers)
for layer in layers:
layers_file.write('from {} import {}\n'.format("." + fname[:-3], layer))
doc_file.write('* {}\n'.format(layer))
layers_file.close()
doc_file.close()
print("Totally {} kinds of layers generated.".format(count))