]> git.ipfire.org Git - thirdparty/knot-resolver.git/commitdiff
manager: utils: renaming: added basic docs
authorVasek Sraier <git@vakabus.cz>
Sat, 19 Nov 2022 10:53:18 +0000 (11:53 +0100)
committerVasek Sraier <git@vakabus.cz>
Sat, 3 Dec 2022 10:31:10 +0000 (11:31 +0100)
manager/knot_resolver_manager/utils/modeling/renaming.py

index 057756770167d58bb1624b8b1c708433fcd9e98b..ec992c113960ea0511569e1b47d3cd8713850488 100644 (file)
@@ -1,3 +1,20 @@
+"""
+This module implements a standard dict and list alternatives, which can dynamically rename its keys replacing `-` with `_`.
+They persist in nested data structes, meaning that if you try to obtain a dict from Renamed variant, you will actually
+get RenamedDict back instead.
+
+Usage:
+
+d = dict()
+l = list()
+
+rd = renamed(d)
+rl = renamed(l)
+
+assert isinstance(rd, Renamed) == True
+assert l = rl.original()
+"""
+
 from abc import ABC, abstractmethod
 from typing import Any, Dict, List, TypeVar
 
@@ -68,3 +85,6 @@ def renamed(obj: Any) -> Any:
         return RenamedList(obj)
     else:
         return obj
+
+
+__all__ = ["renamed", "Renamed"]