()
| 35 | |
| 36 | |
| 37 | def make_md_table(): |
| 38 | print("# Supported features table") |
| 39 | |
| 40 | overriden_values = gen_overriden_values() |
| 41 | with open(definitions_yaml) as f: |
| 42 | definitions = yaml.full_load(f) |
| 43 | |
| 44 | print("|", "|".join(["feature"] + list(kernels.keys())), "|") |
| 45 | print("|", "|".join(["---"] * (len(kernels) + 1)), "|") |
| 46 | for entry in definitions: |
| 47 | namespace = entry["namespace"] |
| 48 | print( |
| 49 | "|", "|".join([f"**namespace {namespace}**"] + ["---"] * len(kernels)), "|" |
| 50 | ) |
| 51 | for feature, value in entry.items(): |
| 52 | if feature == "namespace": |
| 53 | # we handled namespace previously |
| 54 | continue |
| 55 | values = [ |
| 56 | str(overriden_values.get((namespace, feature, k), value["default"])) |
| 57 | for k in kernels |
| 58 | ] |
| 59 | print("|", "|".join([feature] + values), "|") |
| 60 | |
| 61 | kernels_str = "\n".join(map(str, ((k, v) for k, v in kernels.items()))) |
| 62 | print( |
| 63 | f""" |
| 64 | # Source |
| 65 | All of supported features are defined in fbcode/executorch/kernels/test/supported_features.yaml. |
| 66 | |
| 67 | Each kernel can have its own overrides, which are defined in |
| 68 | {kernels_str} |
| 69 | """ |
| 70 | ) |
| 71 | |
| 72 | |
| 73 | if __name__ == "__main__": |
no test coverage detected