Esempio n. 1
0
 def package_name(cls, package: str) -> str:
     """Convert the given package name to safe snake case."""
     return ".".join(
         map(
             lambda x: text.snake_case(utils.safe_snake(x, default="pkg")),
             package.split("."),
         ))
Esempio n. 2
0
    def enumeration_name(cls, name: str) -> str:
        """
        Strip reference prefix and turn to snake case.

        If the name is one of the python reserved words append the
        prefix _value
        """
        return text.snake_case(safe_snake(name)).upper()
Esempio n. 3
0
    def attribute_name(cls, name: str) -> str:
        """
        Strip reference prefix and turn to snake case.

        If the name is one of the python reserved words append the
        prefix _value
        """
        local_name = text.suffix(name)
        return text.snake_case(safe_snake(local_name))
Esempio n. 4
0
 def test_output(self):
     self.assertEqual("value_1", safe_snake("1"))
     self.assertEqual("value_minus_-1", safe_snake("-1"))
     self.assertEqual("value_--1", safe_snake("--1"))
     self.assertEqual("value", safe_snake(""))
     self.assertEqual("value_1 0-2e", safe_snake("1.0-2e"))
     self.assertEqual("value", safe_snake("τσου!!"))
     self.assertEqual("chris", safe_snake("chris"))
Esempio n. 5
0
def read_root_name(path: Path) -> str:
    try:
        recovering_parser = etree.XMLParser(
            recover=True, resolve_entities=False, no_network=True
        )
        tree = etree.parse(str(path), parser=recovering_parser)  # nosec
        _, local_name = split_qname(tree.getroot().tag)
        return text.pascal_case(utils.safe_snake(local_name, "Type"))
    except Exception:
        return ""
Esempio n. 6
0
    def field_name(self, name: str, class_name: str) -> str:
        """
        Convert the given name to a field name according to the selected
        conventions or use an existing alias.

        Provide the class name as context for the naming schemes.
        """
        alias = self.field_aliases.get(name)
        if alias:
            return alias

        safe_name = utils.safe_snake(name, self.field_safe_prefix)
        return self.field_case(safe_name, class_name=class_name)
Esempio n. 7
0
 def module_name(cls, module: str) -> str:
     """Convert the given module name to safe snake case."""
     return text.snake_case(utils.safe_snake(text.clean_uri(module), default="mod"))
Esempio n. 8
0
 def _package_name(self, part: str) -> str:
     return self.package_case(
         utils.safe_snake(part, self.package_safe_prefix))
Esempio n. 9
0
 def _class_name(self, name: str) -> str:
     return self.class_case(utils.safe_snake(name, self.class_safe_prefix))
Esempio n. 10
0
 def _attribute_name(self, name: str) -> str:
     return self.field_case(utils.safe_snake(name, self.field_safe_prefix))
Esempio n. 11
0
 def _module_name(self, name: str) -> str:
     return self.module_case(
         utils.safe_snake(clean_uri(name), self.module_safe_prefix))
Esempio n. 12
0
def constant_name(name: str) -> str:
    """Apply python conventions for constant names."""
    return text.snake_case(utils.safe_snake(name)).upper()
Esempio n. 13
0
def attribute_name(name: str) -> str:
    """Apply python conventions for instance variable names."""
    return text.snake_case(utils.safe_snake(name))
Esempio n. 14
0
 def test_with_stop_words(self):
     self.assertEqual("def_value", safe_snake("def"))
Esempio n. 15
0
def class_name(name: str) -> str:
    """Apply python conventions for class names."""
    return text.pascal_case(utils.safe_snake(name, "type"))
Esempio n. 16
0
 def module_name(cls, name: str) -> str:
     return text.snake_case(safe_snake(name, default="mod"))
Esempio n. 17
0
 def package_name(cls, name: str) -> str:
     return ".".join(
         map(
             lambda x: text.snake_case(safe_snake(x, default="pkg")), name.split(".")
         )
     )
Esempio n. 18
0
 def class_name(cls, name: str) -> str:
     """Convert class names to pascal case."""
     return text.pascal_case(safe_snake(name, "type"))