Source code
Revision control
Copy as Markdown
Other Tools
#!/usr/bin/env python
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
import os
import sys
from pseudo_elements import PseudoElementData
import build
def generate_pseudo_elements(out):
data = PseudoElementData()
pseudo_definition_template = os.path.join(
os.path.dirname(__file__), "pseudo_element_definition.mako.rs"
)
print(f"cargo:rerun-if-changed={pseudo_definition_template}")
for f in data.path_dependencies:
print(f"cargo:rerun-if-changed={f}")
target = os.path.join(out, "pseudo_element_definition.rs")
build.write(out, "pseudo_element_definition.rs", build.render(pseudo_definition_template, PSEUDOS=data.all_pseudos()))
if __name__ == "__main__":
if len(sys.argv) != 2:
print("Usage: {} out".format(sys.argv[0]))
exit(2)
generate_pseudo_elements(sys.argv[1])