Coverage for src / c41811 / config / basic / __init__.py: 100%

21 statements  

« prev     ^ index     » next       coverage.py v7.13.3, created at 2026-02-06 06:04 +0000

1# cython: language_level = 3 # noqa: ERA001 

2 

3 

4""" 

5基本配置数据实现 

6 

7.. versionchanged:: 0.2.0 

8 重构拆分 ``base.py`` 为多个文件 

9 

10.. versionchanged:: 0.3.0 

11 重命名 ``base`` 为 ``basic`` 

12""" 

13 

14from typing import TYPE_CHECKING as __TYPE_CHECKING 

15 

16if __TYPE_CHECKING: # pragma: no cover 

17 from .component import ComponentConfigData 

18 from .component import ComponentMember 

19 from .component import ComponentMeta 

20 from .component import ComponentOrders 

21 from .core import BasicConfigData 

22 from .core import BasicConfigPool 

23 from .core import BasicIndexedConfigData 

24 from .core import BasicSingleConfigData 

25 from .core import ConfigFile 

26 from .core import PHelper 

27 from .environment import EnvironmentConfigData 

28 from .factory import ConfigDataFactory 

29 from .jproperties import JPropertiesConfigData 

30 from .mapping import MappingConfigData 

31 from .number import BoolConfigData 

32 from .number import NumberConfigData 

33 from .object import NoneConfigData 

34 from .object import ObjectConfigData 

35 from .sequence import SequenceConfigData 

36 from .sequence import StringConfigData 

37 

38 __all__ = [ 

39 "BasicConfigData", 

40 "BasicConfigPool", 

41 "BasicIndexedConfigData", 

42 "BasicSingleConfigData", 

43 "BoolConfigData", 

44 "ComponentConfigData", 

45 "ComponentMember", 

46 "ComponentMeta", 

47 "ComponentOrders", 

48 "ConfigDataFactory", 

49 "ConfigFile", 

50 "EnvironmentConfigData", 

51 "JPropertiesConfigData", 

52 "MappingConfigData", 

53 "NoneConfigData", 

54 "NumberConfigData", 

55 "ObjectConfigData", 

56 "PHelper", 

57 "SequenceConfigData", 

58 "StringConfigData", 

59 ] 

60else: 

61 from ..lazy_import import lazy_import as __lazy_import 

62 

63 __all__, __getattr__ = __lazy_import( 

64 { 

65 "BasicConfigData": ".core", 

66 "BasicConfigPool": ".core", 

67 "BasicIndexedConfigData": ".core", 

68 "BasicSingleConfigData": ".core", 

69 "BoolConfigData": ".number", 

70 "ComponentConfigData": ".component", 

71 "ComponentMember": ".component", 

72 "ComponentMeta": ".component", 

73 "ComponentOrders": ".component", 

74 "ConfigFile": ".core", 

75 "EnvironmentConfigData": ".environment", 

76 "JPropertiesConfigData": ".jproperties", 

77 "MappingConfigData": ".mapping", 

78 "NoneConfigData": ".object", 

79 "NumberConfigData": ".number", 

80 "ObjectConfigData": ".object", 

81 "PHelper": ".core", 

82 "SequenceConfigData": ".sequence", 

83 "StringConfigData": ".sequence", 

84 } 

85 ) 

86 __all__.append("ConfigDataFactory") 

87 

88 def __cfg_data_factory_types_lazy_initializer() -> None: 

89 from builtins import object as __object # noqa: PLC0415 

90 from collections import OrderedDict as __OrderedDict # noqa: PLC0415 

91 from collections.abc import Mapping as __Mapping # noqa: PLC0415 

92 from collections.abc import Sequence as __Sequence # noqa: PLC0415 

93 from numbers import Number as __Number # noqa: PLC0415 

94 

95 from .mapping import MappingConfigData # noqa: PLC0415 

96 from .number import BoolConfigData # noqa: PLC0415 

97 from .number import NumberConfigData # noqa: PLC0415 

98 from .object import NoneConfigData # noqa: PLC0415 

99 from .object import ObjectConfigData # noqa: PLC0415 

100 from .sequence import SequenceConfigData # noqa: PLC0415 

101 from .sequence import StringConfigData # noqa: PLC0415 

102 from ..abc import ABCConfigData # noqa: PLC0415 

103 

104 ConfigDataFactory.TYPES = __OrderedDict( 

105 ( 

106 ((ABCConfigData,), lambda _: _), 

107 ((type(None),), NoneConfigData), 

108 ((__Mapping,), MappingConfigData), 

109 ((str, bytes), StringConfigData), 

110 ((__Sequence,), SequenceConfigData), 

111 ((bool,), BoolConfigData), 

112 ((__Number,), NumberConfigData), 

113 ((__object,), ObjectConfigData), 

114 ) 

115 ) 

116 

117 from .factory import ConfigDataFactory 

118 

119 ConfigDataFactory._TYPES_LAZY_INITIALIZER = __cfg_data_factory_types_lazy_initializer # noqa: SLF001