xsdata.resolver module¶
-
class
xsdata.resolver.DependenciesResolver(packages=<factory>, aliases=<factory>, imports=<factory>)[source]¶ Bases:
object-
packages: Dict[QName, str] = None¶
-
aliases: Dict[QName, str] = None¶
-
imports: List[Package] = None¶
-
class_list: List[QName] = None¶
-
class_map: Dict[QName, Class] = None¶
-
package: str = None¶
-
process(classes)[source]¶ Resolve the dependencies for the given list of classes and the target package.
Reset aliases and imports from any previous runs keep the record of the processed class names
-
sorted_classes()[source]¶ Return an iterator of classes property sorted for generation and apply import aliases.
-
apply_aliases(obj)[source]¶ Walk the attributes tree and set the type aliases.
- Parameters
obj (
Class) –
-
resolve_imports()[source]¶ Walk the import qualified names, check for naming collisions and add the necessary code generator import instance.
-
add_import(qname, package, exists=False)[source]¶ Append an import package to the list of imports with any if necessary aliases if the import name exists in the local module.
-
find_package(qname)[source]¶ Return the package name for the given qualified class name.
- Raises
ResolverValueError – if name doesn’t exist.
- Parameters
qname (
QName) –- Return type
-