diff options
Diffstat (limited to 'scripts')
-rw-r--r-- | scripts/rcc_format.py | 13 | ||||
-rw-r--r-- | scripts/zstd.py | 2 |
2 files changed, 11 insertions, 4 deletions
diff --git a/scripts/rcc_format.py b/scripts/rcc_format.py index d0ab06d..7fcfe34 100644 --- a/scripts/rcc_format.py +++ b/scripts/rcc_format.py @@ -37,7 +37,7 @@ def write_header(file, namespace): def write_item(file, array_name, array_data): line_items = 0 - print("constexpr unsigned char {}[] = {{".format(array_name), file=file) + print("constexpr uint8_t {}[] = {{".format(array_name), file=file) for byte in array_data[0:len(array_data)]: line_items+=1 @@ -52,10 +52,15 @@ def write_item(file, array_name, array_data): print("constexpr size_t {}_len = {};\n".format(array_name, len(array_data)), file=file) def write_entries(file, resource_list): - print("constexpr auto entries = frozen::make_unordered_map<frozen::string, std::span<const unsigned char>>({", file=file) + print("constexpr std::array entries {", file=file) for f in resource_list: - print(" {{ \"{}\", std::span({}, {}_len) }},".format(f.alias, f.variable, f.variable), file=file) - print("});\n", file=file) + print(" \"{}\", ".format(f.alias), file=file) + print("};\n", file=file) + + print("constexpr std::array values {", file=file) + for f in resource_list: + print(" std::span( {}, {}_len ),".format(f.variable, f.variable), file=file) + print("};\n", file=file) def write_footer(file, namespace): print("\n}} // namespace {}".format(namespace), file=file) diff --git a/scripts/zstd.py b/scripts/zstd.py index f85e7da..2cfa149 100644 --- a/scripts/zstd.py +++ b/scripts/zstd.py @@ -16,6 +16,8 @@ def zstd(filelist, args): if args.dict is not None: write_item(args.output, 'dict', args.dict.read()) print("constexpr auto dictionary = std::span(dict, dict_len);", file=args.output) + else: + print("constexpr std::span<const uint8_t> dictionary {};", file=args.output) print("constexpr auto compression = embed::Zstd;", file=args.output) |