@darabonba/python-generator 2.0.2 → 2.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (182) hide show
  1. package/.github/workflows/ci.yml +1 -1
  2. package/ChangeLog.md +15 -0
  3. package/lib/builtin.js +6 -12
  4. package/lib/generator.js +195 -109
  5. package/lib/helper.js +21 -1
  6. package/package.json +1 -1
  7. package/tests/expected/{python3/model/tea_python_tests/client.py → annotation/tea_python_tests/models/__init__.py} +6 -3
  8. package/tests/expected/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  9. package/tests/expected/builtin/tea_python_tests/client.py +5 -5
  10. package/tests/expected/comment/tea_python_tests/models/__init__.py +15 -0
  11. package/tests/expected/comment/tea_python_tests/models/_test_1.py +91 -0
  12. package/tests/expected/comment/tea_python_tests/models/_test_2.py +55 -0
  13. package/tests/expected/comment/tea_python_tests/models/_test_3.py +61 -0
  14. package/tests/expected/complex/tea_python_tests/client.py +6 -6
  15. package/tests/expected/complex/tea_python_tests/exceptions/__init__.py +13 -0
  16. package/tests/expected/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  17. package/tests/expected/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  18. package/tests/expected/complex/tea_python_tests/models/__init__.py +19 -0
  19. package/tests/{output/complex/tea_python_tests/models.py → expected/complex/tea_python_tests/models/_complex_request.py} +12 -141
  20. package/tests/expected/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  21. package/tests/expected/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  22. package/tests/expected/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  23. package/tests/expected/complex/tea_python_tests/models/_response.py +33 -0
  24. package/tests/expected/model/tea_python_tests/exceptions/__init__.py +11 -0
  25. package/tests/expected/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  26. package/tests/expected/model/tea_python_tests/models/__init__.py +33 -0
  27. package/tests/expected/model/tea_python_tests/models/_class.py +24 -0
  28. package/tests/expected/model/tea_python_tests/models/_m.py +38 -0
  29. package/tests/expected/model/tea_python_tests/models/_main_file_model.py +45 -0
  30. package/tests/expected/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  31. package/tests/expected/model/tea_python_tests/models/_model.py +32 -0
  32. package/tests/expected/model/tea_python_tests/models/_msub_m.py +26 -0
  33. package/tests/expected/model/tea_python_tests/{models.py → models/_my_model.py} +16 -321
  34. package/tests/expected/model/tea_python_tests/models/_my_model_model.py +45 -0
  35. package/tests/expected/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  36. package/tests/expected/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  37. package/tests/expected/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  38. package/tests/expected/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  39. package/tests/expected/multi/tea_python_tests/api.py +0 -2
  40. package/tests/expected/multi/tea_python_tests/api_models/__init__.py +11 -0
  41. package/tests/expected/{python3/annotation/tea_python_tests/models.py → multi/tea_python_tests/api_models/_test_model_dir_2.py} +7 -9
  42. package/tests/expected/multi/tea_python_tests/client.py +0 -2
  43. package/tests/expected/multi/tea_python_tests/exceptions/__init__.py +13 -0
  44. package/tests/{output/complex/tea_python_tests/exceptions.py → expected/multi/tea_python_tests/exceptions/_err.py} +10 -11
  45. package/tests/expected/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  46. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  47. package/tests/expected/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  48. package/tests/expected/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  49. package/tests/expected/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  50. package/tests/expected/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  51. package/tests/expected/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  52. package/tests/expected/multi/tea_python_tests/models/__init__.py +13 -0
  53. package/tests/expected/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  54. package/tests/expected/{python2/empty/tea_python_tests/client.py → typedef/tea_python_tests/models/__init__.py} +9 -3
  55. package/tests/{output/typedef/tea_python_tests/models.py → expected/typedef/tea_python_tests/models/_m.py} +1 -1
  56. package/tests/fixtures/multi/api.dara +4 -0
  57. package/tests/fixtures/multi/main.dara +18 -0
  58. package/tests/main.tests.js +194 -219
  59. package/tests/output/annotation/tea_python_tests/models/__init__.py +11 -0
  60. package/tests/output/annotation/tea_python_tests/{models.py → models/_test.py} +1 -1
  61. package/tests/output/builtin/tea_python_tests/client.py +5 -5
  62. package/tests/output/comment/tea_python_tests/models/__init__.py +15 -0
  63. package/tests/output/comment/tea_python_tests/models/_test_1.py +91 -0
  64. package/tests/output/comment/tea_python_tests/models/_test_2.py +55 -0
  65. package/tests/output/comment/tea_python_tests/models/_test_3.py +61 -0
  66. package/tests/output/complex/tea_python_tests/client.py +6 -6
  67. package/tests/output/complex/tea_python_tests/exceptions/__init__.py +13 -0
  68. package/tests/output/complex/tea_python_tests/exceptions/_err_1.py +23 -0
  69. package/tests/output/complex/tea_python_tests/exceptions/_err_2.py +22 -0
  70. package/tests/output/complex/tea_python_tests/models/__init__.py +19 -0
  71. package/tests/{expected/complex/tea_python_tests/models.py → output/complex/tea_python_tests/models/_complex_request.py} +12 -141
  72. package/tests/output/complex/tea_python_tests/models/_complex_request_configs.py +47 -0
  73. package/tests/output/complex/tea_python_tests/models/_complex_request_header.py +42 -0
  74. package/tests/output/complex/tea_python_tests/models/_complex_request_part.py +33 -0
  75. package/tests/output/complex/tea_python_tests/models/_response.py +33 -0
  76. package/tests/output/model/tea_python_tests/exceptions/__init__.py +11 -0
  77. package/tests/output/model/tea_python_tests/{exceptions.py → exceptions/_main_file.py} +1 -1
  78. package/tests/output/model/tea_python_tests/models/__init__.py +33 -0
  79. package/tests/output/model/tea_python_tests/models/_class.py +24 -0
  80. package/tests/output/model/tea_python_tests/models/_m.py +38 -0
  81. package/tests/output/model/tea_python_tests/models/_main_file_model.py +45 -0
  82. package/tests/output/model/tea_python_tests/models/_main_file_model_model.py +32 -0
  83. package/tests/output/model/tea_python_tests/models/_model.py +32 -0
  84. package/tests/output/model/tea_python_tests/models/_msub_m.py +26 -0
  85. package/tests/output/model/tea_python_tests/{models.py → models/_my_model.py} +16 -321
  86. package/tests/output/model/tea_python_tests/models/_my_model_model.py +45 -0
  87. package/tests/output/model/tea_python_tests/models/_my_model_model_model.py +32 -0
  88. package/tests/output/model/tea_python_tests/models/_my_model_subarraymodel.py +24 -0
  89. package/tests/output/model/tea_python_tests/models/_my_model_submodel.py +45 -0
  90. package/tests/output/model/tea_python_tests/models/_my_model_submodel_model.py +32 -0
  91. package/tests/output/multi/tea_python_tests/api.py +0 -2
  92. package/tests/output/multi/tea_python_tests/api_models/__init__.py +11 -0
  93. package/tests/{expected/python2/annotation/tea_python_tests/models.py → output/multi/tea_python_tests/api_models/_test_model_dir_2.py} +12 -11
  94. package/tests/output/multi/tea_python_tests/client.py +0 -2
  95. package/tests/output/multi/tea_python_tests/exceptions/__init__.py +13 -0
  96. package/tests/{expected/complex/tea_python_tests/exceptions.py → output/multi/tea_python_tests/exceptions/_err.py} +10 -11
  97. package/tests/output/multi/tea_python_tests/model/user_exceptions/__init__.py +15 -0
  98. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err.py +22 -0
  99. package/tests/output/multi/tea_python_tests/model/{user_exceptions.py → user_exceptions/_err_1.py} +3 -32
  100. package/tests/output/multi/tea_python_tests/model/user_exceptions/_err_2.py +18 -0
  101. package/tests/output/multi/tea_python_tests/model/user_models/__init__.py +13 -0
  102. package/tests/output/multi/tea_python_tests/model/user_models/_base_info.py +72 -0
  103. package/tests/output/multi/tea_python_tests/model/{user_models.py → user_models/_info.py} +3 -69
  104. package/tests/output/multi/tea_python_tests/models/__init__.py +13 -0
  105. package/tests/output/multi/tea_python_tests/models/_test_model_dir.py +79 -0
  106. package/tests/{expected/python2/model/tea_python_tests/client.py → output/typedef/tea_python_tests/models/__init__.py} +9 -3
  107. package/tests/{expected/typedef/tea_python_tests/models.py → output/typedef/tea_python_tests/models/_m.py} +1 -1
  108. package/tests/expected/comment/tea_python_tests/models.py +0 -195
  109. package/tests/expected/python2/alias/setup.py +0 -79
  110. package/tests/expected/python2/alias/tea_python_tests/client.py +0 -23
  111. package/tests/expected/python2/annotation/tea_python_tests/client.py +0 -54
  112. package/tests/expected/python2/api/tea_python_tests/client.py +0 -54
  113. package/tests/expected/python2/comment/tea_python_tests/client.py +0 -188
  114. package/tests/expected/python2/comment/tea_python_tests/models.py +0 -146
  115. package/tests/expected/python2/complex/tea_python_tests/client.py +0 -301
  116. package/tests/expected/python2/complex/tea_python_tests/models.py +0 -315
  117. package/tests/expected/python2/const/tea_python_tests/client.py +0 -14
  118. package/tests/expected/python2/empty/setup.py +0 -76
  119. package/tests/expected/python2/exec/tea_python_tests/exec_client.py +0 -16
  120. package/tests/expected/python2/function/tea_python_tests/client.py +0 -47
  121. package/tests/expected/python2/import/setup.py +0 -85
  122. package/tests/expected/python2/import/tea_python_tests/client.py +0 -24
  123. package/tests/expected/python2/map/tea_python_tests/client.py +0 -19
  124. package/tests/expected/python2/model/tea_python_tests/models.py +0 -575
  125. package/tests/expected/python2/statements/tea_python_tests/client.py +0 -64
  126. package/tests/expected/python2/super/tea_python_tests/client.py +0 -8
  127. package/tests/expected/python2/typedef/setup.py +0 -85
  128. package/tests/expected/python2/typedef/tea_python_tests/client.py +0 -38
  129. package/tests/expected/python2/typedef/tea_python_tests/models.py +0 -35
  130. package/tests/expected/python3/alias/setup.py +0 -77
  131. package/tests/expected/python3/alias/tea_python_tests/client.py +0 -32
  132. package/tests/expected/python3/annotation/tea_python_tests/client.py +0 -88
  133. package/tests/expected/python3/api/tea_python_tests/client.py +0 -92
  134. package/tests/expected/python3/comment/tea_python_tests/__init__.py +0 -1
  135. package/tests/expected/python3/comment/tea_python_tests/client.py +0 -319
  136. package/tests/expected/python3/comment/tea_python_tests/models.py +0 -163
  137. package/tests/expected/python3/complex/tea_python_tests/__init__.py +0 -1
  138. package/tests/expected/python3/complex/tea_python_tests/client.py +0 -514
  139. package/tests/expected/python3/complex/tea_python_tests/models.py +0 -349
  140. package/tests/expected/python3/const/tea_python_tests/__init__.py +0 -1
  141. package/tests/expected/python3/const/tea_python_tests/client.py +0 -9
  142. package/tests/expected/python3/empty/setup.py +0 -74
  143. package/tests/expected/python3/empty/tea_python_tests/__init__.py +0 -1
  144. package/tests/expected/python3/empty/tea_python_tests/client.py +0 -5
  145. package/tests/expected/python3/exec/tea_python_tests/__init__.py +0 -1
  146. package/tests/expected/python3/exec/tea_python_tests/exec_client.py +0 -20
  147. package/tests/expected/python3/function/tea_python_tests/__init__.py +0 -1
  148. package/tests/expected/python3/function/tea_python_tests/client.py +0 -67
  149. package/tests/expected/python3/import/setup.py +0 -77
  150. package/tests/expected/python3/import/tea_python_tests/__init__.py +0 -1
  151. package/tests/expected/python3/import/tea_python_tests/client.py +0 -28
  152. package/tests/expected/python3/map/tea_python_tests/__init__.py +0 -1
  153. package/tests/expected/python3/map/tea_python_tests/client.py +0 -22
  154. package/tests/expected/python3/model/tea_python_tests/__init__.py +0 -1
  155. package/tests/expected/python3/model/tea_python_tests/models.py +0 -631
  156. package/tests/expected/python3/statements/tea_python_tests/__init__.py +0 -1
  157. package/tests/expected/python3/statements/tea_python_tests/client.py +0 -83
  158. package/tests/expected/python3/super/tea_python_tests/__init__.py +0 -1
  159. package/tests/expected/python3/super/tea_python_tests/client.py +0 -13
  160. package/tests/expected/python3/typedef/setup.py +0 -77
  161. package/tests/expected/python3/typedef/tea_python_tests/__init__.py +0 -1
  162. package/tests/expected/python3/typedef/tea_python_tests/client.py +0 -72
  163. package/tests/expected/python3/typedef/tea_python_tests/models.py +0 -39
  164. package/tests/output/comment/tea_python_tests/models.py +0 -195
  165. /package/tests/expected/{python2/alias → multi}/tea_python_tests/__init__.py +0 -0
  166. /package/tests/{expected/python2/annotation → output/alias}/tea_python_tests/__init__.py +0 -0
  167. /package/tests/{expected/python2/api → output/annotation}/tea_python_tests/__init__.py +0 -0
  168. /package/tests/{expected/python2/comment → output/api}/tea_python_tests/__init__.py +0 -0
  169. /package/tests/{expected/python2/complex → output/builtin}/tea_python_tests/__init__.py +0 -0
  170. /package/tests/{expected/python2/const → output/comment}/tea_python_tests/__init__.py +0 -0
  171. /package/tests/{expected/python2/empty → output/complex}/tea_python_tests/__init__.py +0 -0
  172. /package/tests/{expected/python2/exec → output/const}/tea_python_tests/__init__.py +0 -0
  173. /package/tests/{expected/python2/function → output/empty}/tea_python_tests/__init__.py +0 -0
  174. /package/tests/{expected/python2/import → output/exec}/tea_python_tests/__init__.py +0 -0
  175. /package/tests/{expected/python2/map → output/function}/tea_python_tests/__init__.py +0 -0
  176. /package/tests/{expected/python2/model → output/import}/tea_python_tests/__init__.py +0 -0
  177. /package/tests/{expected/python2/statements → output/map}/tea_python_tests/__init__.py +0 -0
  178. /package/tests/{expected/python2/super → output/model}/tea_python_tests/__init__.py +0 -0
  179. /package/tests/{expected/python2/typedef → output/multi}/tea_python_tests/__init__.py +0 -0
  180. /package/tests/{expected/python3/alias → output/statements}/tea_python_tests/__init__.py +0 -0
  181. /package/tests/{expected/python3/annotation → output/super}/tea_python_tests/__init__.py +0 -0
  182. /package/tests/{expected/python3/api → output/typedef}/tea_python_tests/__init__.py +0 -0
@@ -1,575 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # This file is auto-generated, don't edit it. Thanks.
3
- from Tea.model import TeaModel
4
-
5
-
6
- class UseBeforeDefineModelSubModel(TeaModel):
7
- def __init__(self, use_before_define_model=None):
8
- self.use_before_define_model = use_before_define_model # type: UseBeforeDefineModelOnSubModel
9
-
10
- def validate(self):
11
- self.validate_required(self.use_before_define_model, 'use_before_define_model')
12
- if self.use_before_define_model:
13
- self.use_before_define_model.validate()
14
-
15
- def to_map(self):
16
- _map = super(UseBeforeDefineModelSubModel, self).to_map()
17
- if _map is not None:
18
- return _map
19
-
20
- result = dict()
21
- if self.use_before_define_model is not None:
22
- result['useBeforeDefineModel'] = self.use_before_define_model.to_map()
23
- return result
24
-
25
- def from_map(self, m=None):
26
- m = m or dict()
27
- if m.get('useBeforeDefineModel') is not None:
28
- temp_model = UseBeforeDefineModelOnSubModel()
29
- self.use_before_define_model = temp_model.from_map(m['useBeforeDefineModel'])
30
- return self
31
-
32
-
33
- class UseBeforeDefineModel(TeaModel):
34
- def __init__(self, sub_model=None):
35
- self.sub_model = sub_model # type: UseBeforeDefineModelSubModel
36
-
37
- def validate(self):
38
- self.validate_required(self.sub_model, 'sub_model')
39
- if self.sub_model:
40
- self.sub_model.validate()
41
-
42
- def to_map(self):
43
- _map = super(UseBeforeDefineModel, self).to_map()
44
- if _map is not None:
45
- return _map
46
-
47
- result = dict()
48
- if self.sub_model is not None:
49
- result['subModel'] = self.sub_model.to_map()
50
- return result
51
-
52
- def from_map(self, m=None):
53
- m = m or dict()
54
- if m.get('subModel') is not None:
55
- temp_model = UseBeforeDefineModelSubModel()
56
- self.sub_model = temp_model.from_map(m['subModel'])
57
- return self
58
-
59
-
60
- class UseBeforeDefineModelOnSubModel(TeaModel):
61
- def __init__(self, m=None):
62
- self.m = m # type: MyModel
63
-
64
- def validate(self):
65
- self.validate_required(self.m, 'm')
66
- if self.m:
67
- self.m.validate()
68
-
69
- def to_map(self):
70
- _map = super(UseBeforeDefineModelOnSubModel, self).to_map()
71
- if _map is not None:
72
- return _map
73
-
74
- result = dict()
75
- if self.m is not None:
76
- result['m'] = self.m.to_map()
77
- return result
78
-
79
- def from_map(self, m=None):
80
- m = m or dict()
81
- if m.get('m') is not None:
82
- temp_model = MyModel()
83
- self.m = temp_model.from_map(m['m'])
84
- return self
85
-
86
-
87
- class MyModelSubmodel(TeaModel):
88
- def __init__(self, stringfield=None):
89
- self.stringfield = stringfield # type: str
90
-
91
- def validate(self):
92
- self.validate_required(self.stringfield, 'stringfield')
93
-
94
- def to_map(self):
95
- _map = super(MyModelSubmodel, self).to_map()
96
- if _map is not None:
97
- return _map
98
-
99
- result = dict()
100
- if self.stringfield is not None:
101
- result['stringfield'] = self.stringfield
102
- return result
103
-
104
- def from_map(self, m=None):
105
- m = m or dict()
106
- if m.get('stringfield') is not None:
107
- self.stringfield = m.get('stringfield')
108
- return self
109
-
110
-
111
- class MyModelSubModelModel(TeaModel):
112
- def __init__(self, sub_model=None):
113
- self.sub_model = sub_model # type: list[M]
114
-
115
- def validate(self):
116
- self.validate_required(self.sub_model, 'sub_model')
117
- if self.sub_model:
118
- for k in self.sub_model:
119
- if k:
120
- k.validate()
121
-
122
- def to_map(self):
123
- _map = super(MyModelSubModelModel, self).to_map()
124
- if _map is not None:
125
- return _map
126
-
127
- result = dict()
128
- result['subModel'] = []
129
- if self.sub_model is not None:
130
- for k in self.sub_model:
131
- result['subModel'].append(k.to_map() if k else None)
132
- return result
133
-
134
- def from_map(self, m=None):
135
- m = m or dict()
136
- self.sub_model = []
137
- if m.get('subModel') is not None:
138
- for k in m.get('subModel'):
139
- temp_model = M()
140
- self.sub_model.append(temp_model.from_map(k))
141
- return self
142
-
143
-
144
- class MyModel(TeaModel):
145
- def __init__(self, stringfield=None, bytesfield=None, stringarrayfield=None, mapfield=None, name=None,
146
- submodel=None, subarray=None, maparray=None, object=None, numberfield=None, readable=None, exist_model=None,
147
- class_end_time=None, max_length=None, min_length=None, maximum=None, minimum=None, test_3=None,
148
- array_array_model=None, array_map_model=None, map_model=None, submodel_map=None, sub_model_model=None,
149
- map_array_map=None, map_array_model=None):
150
- self.stringfield = stringfield # type: str
151
- self.bytesfield = bytesfield # type: bytes
152
- self.stringarrayfield = stringarrayfield # type: list[str]
153
- self.mapfield = mapfield # type: dict[str, str]
154
- self.name = name # type: str
155
- self.submodel = submodel # type: MyModelSubmodel
156
- self.subarray = subarray # type: list[M]
157
- self.maparray = maparray # type: list[dict[str, any]]
158
- self.object = object # type: dict
159
- self.numberfield = numberfield # type: int
160
- self.readable = readable # type: READABLE
161
- self.exist_model = exist_model # type: M
162
- # 结束时间
163
- self.class_end_time = class_end_time # type: str
164
- # 最大长度
165
- self.max_length = max_length # type: str
166
- # 最小长度
167
- self.min_length = min_length # type: str
168
- # 校验最大值
169
- self.maximum = maximum # type: long
170
- # 校验最小值
171
- self.minimum = minimum # type: long
172
- # test3 desc
173
- self.test_3 = test_3 # type: list[list[str]]
174
- self.array_array_model = array_array_model # type: list[list[M]]
175
- self.array_map_model = array_map_model # type: list[dict[str, M]]
176
- self.map_model = map_model # type: dict[str, M]
177
- self.submodel_map = submodel_map # type: dict[str, MyModelSubmodel]
178
- self.sub_model_model = sub_model_model # type: MyModelSubModelModel
179
- self.map_array_map = map_array_map # type: dict[str, list[dict[str, str]]]
180
- self.map_array_model = map_array_model # type: dict[str, list[M]]
181
-
182
- def validate(self):
183
- self.validate_required(self.stringfield, 'stringfield')
184
- self.validate_required(self.bytesfield, 'bytesfield')
185
- self.validate_required(self.stringarrayfield, 'stringarrayfield')
186
- self.validate_required(self.mapfield, 'mapfield')
187
- self.validate_required(self.name, 'name')
188
- self.validate_required(self.submodel, 'submodel')
189
- if self.submodel:
190
- self.submodel.validate()
191
- self.validate_required(self.subarray, 'subarray')
192
- if self.subarray:
193
- for k in self.subarray:
194
- if k:
195
- k.validate()
196
- self.validate_required(self.maparray, 'maparray')
197
- self.validate_required(self.object, 'object')
198
- self.validate_required(self.numberfield, 'numberfield')
199
- self.validate_required(self.readable, 'readable')
200
- self.validate_required(self.exist_model, 'exist_model')
201
- if self.exist_model:
202
- self.exist_model.validate()
203
- if self.class_end_time is not None:
204
- self.validate_pattern(self.class_end_time, 'class_end_time', '\\d{4}[-]\\d{1,2}[-]\\d{1,2}(\\s\\d{2}:\\d{2}(:\\d{2})?)?')
205
- if self.max_length is not None:
206
- self.validate_max_length(self.max_length, 'max_length', 10)
207
- if self.maximum is not None:
208
- self.validate_maximum(self.maximum, 'maximum', 99000000)
209
- if self.minimum is not None:
210
- self.validate_minimum(self.minimum, 'minimum', 0)
211
- self.validate_required(self.test_3, 'test_3')
212
- self.validate_required(self.array_array_model, 'array_array_model')
213
- if self.array_array_model:
214
- for k in self.array_array_model:
215
- for k1 in k:
216
- if k1:
217
- k1.validate()
218
- self.validate_required(self.array_map_model, 'array_map_model')
219
- self.validate_required(self.map_model, 'map_model')
220
- if self.map_model:
221
- for v in self.map_model.values():
222
- if v:
223
- v.validate()
224
- self.validate_required(self.submodel_map, 'submodel_map')
225
- if self.submodel_map:
226
- for v in self.submodel_map.values():
227
- if v:
228
- v.validate()
229
- self.validate_required(self.sub_model_model, 'sub_model_model')
230
- if self.sub_model_model:
231
- self.sub_model_model.validate()
232
- if self.map_array_model:
233
- for v in self.map_array_model.values():
234
- for k1 in v:
235
- if k1:
236
- k1.validate()
237
-
238
- def to_map(self):
239
- _map = super(MyModel, self).to_map()
240
- if _map is not None:
241
- return _map
242
-
243
- result = dict()
244
- if self.stringfield is not None:
245
- result['stringfield'] = self.stringfield
246
- if self.bytesfield is not None:
247
- result['bytesfield'] = self.bytesfield
248
- if self.stringarrayfield is not None:
249
- result['stringarrayfield'] = self.stringarrayfield
250
- if self.mapfield is not None:
251
- result['mapfield'] = self.mapfield
252
- if self.name is not None:
253
- result['realName'] = self.name
254
- if self.submodel is not None:
255
- result['SubModel'] = self.submodel.to_map()
256
- result['SubArray'] = []
257
- if self.subarray is not None:
258
- for k in self.subarray:
259
- result['SubArray'].append(k.to_map() if k else None)
260
- if self.maparray is not None:
261
- result['MapArray'] = self.maparray
262
- if self.object is not None:
263
- result['object'] = self.object
264
- if self.numberfield is not None:
265
- result['numberfield'] = self.numberfield
266
- if self.readable is not None:
267
- result['readable'] = self.readable
268
- if self.exist_model is not None:
269
- result['existModel'] = self.exist_model.to_map()
270
- if self.class_end_time is not None:
271
- result['class_end_time'] = self.class_end_time
272
- if self.max_length is not None:
273
- result['max-length'] = self.max_length
274
- if self.min_length is not None:
275
- result['min-length'] = self.min_length
276
- if self.maximum is not None:
277
- result['maximum'] = self.maximum
278
- if self.minimum is not None:
279
- result['minimum'] = self.minimum
280
- if self.test_3 is not None:
281
- result['test3'] = self.test_3
282
- result['ArrayArrayModel'] = []
283
- if self.array_array_model is not None:
284
- for k in self.array_array_model:
285
- l1 = []
286
- for k1 in k:
287
- l1.append(k1.to_map() if k1 else None)
288
- result['ArrayArrayModel'].append(l1)
289
- result['ArrayMapModel'] = []
290
- if self.array_map_model is not None:
291
- for k in self.array_map_model:
292
- d1 = {}
293
- for k1 ,v1 in k.items():
294
- d1[k1] = v1.to_map()
295
- result['ArrayMapModel'].append(d1)
296
- result['MapModel'] = {}
297
- if self.map_model is not None:
298
- for k, v in self.map_model.items():
299
- result['MapModel'][k] = v.to_map()
300
- result['SubmodelMap'] = {}
301
- if self.submodel_map is not None:
302
- for k, v in self.submodel_map.items():
303
- result['SubmodelMap'][k] = v.to_map()
304
- if self.sub_model_model is not None:
305
- result['SubModelModel'] = self.sub_model_model.to_map()
306
- if self.map_array_map is not None:
307
- result['MapArrayMap'] = self.map_array_map
308
- result['MapArrayModel'] = {}
309
- if self.map_array_model is not None:
310
- for k, v in self.map_array_model.items():
311
- l1 = []
312
- for k1 in v:
313
- l1.append(k1.to_map() if k1 else None)
314
- result['MapArrayModel'][k] = l1
315
- return result
316
-
317
- def from_map(self, m=None):
318
- m = m or dict()
319
- if m.get('stringfield') is not None:
320
- self.stringfield = m.get('stringfield')
321
- if m.get('bytesfield') is not None:
322
- self.bytesfield = m.get('bytesfield')
323
- if m.get('stringarrayfield') is not None:
324
- self.stringarrayfield = m.get('stringarrayfield')
325
- if m.get('mapfield') is not None:
326
- self.mapfield = m.get('mapfield')
327
- if m.get('realName') is not None:
328
- self.name = m.get('realName')
329
- if m.get('SubModel') is not None:
330
- temp_model = MyModelSubmodel()
331
- self.submodel = temp_model.from_map(m['SubModel'])
332
- self.subarray = []
333
- if m.get('SubArray') is not None:
334
- for k in m.get('SubArray'):
335
- temp_model = M()
336
- self.subarray.append(temp_model.from_map(k))
337
- if m.get('MapArray') is not None:
338
- self.maparray = m.get('MapArray')
339
- if m.get('object') is not None:
340
- self.object = m.get('object')
341
- if m.get('numberfield') is not None:
342
- self.numberfield = m.get('numberfield')
343
- if m.get('readable') is not None:
344
- self.readable = m.get('readable')
345
- if m.get('existModel') is not None:
346
- temp_model = M()
347
- self.exist_model = temp_model.from_map(m['existModel'])
348
- if m.get('class_end_time') is not None:
349
- self.class_end_time = m.get('class_end_time')
350
- if m.get('max-length') is not None:
351
- self.max_length = m.get('max-length')
352
- if m.get('min-length') is not None:
353
- self.min_length = m.get('min-length')
354
- if m.get('maximum') is not None:
355
- self.maximum = m.get('maximum')
356
- if m.get('minimum') is not None:
357
- self.minimum = m.get('minimum')
358
- if m.get('test3') is not None:
359
- self.test_3 = m.get('test3')
360
- self.array_array_model = []
361
- if m.get('ArrayArrayModel') is not None:
362
- for k in m.get('ArrayArrayModel'):
363
- l1 = []
364
- for k1 in k:
365
- temp_model = M()
366
- l1.append(temp_model.from_map(k1))
367
- self.array_array_model.append(l1)
368
- self.array_map_model = []
369
- if m.get('ArrayMapModel') is not None:
370
- for k in m.get('ArrayMapModel'):
371
- d1 = {}
372
- for k1 ,v1 in k.items():
373
- temp_model = M()
374
- d1[k1] = temp_model.from_map(v1)
375
- self.array_map_model.append(d1)
376
- self.map_model = {}
377
- if m.get('MapModel') is not None:
378
- for k, v in m.get('MapModel').items():
379
- temp_model = M()
380
- self.map_model[k] = temp_model.from_map(v)
381
- self.submodel_map = {}
382
- if m.get('SubmodelMap') is not None:
383
- for k, v in m.get('SubmodelMap').items():
384
- temp_model = MyModelSubmodel()
385
- self.submodel_map[k] = temp_model.from_map(v)
386
- if m.get('SubModelModel') is not None:
387
- temp_model = MyModelSubModelModel()
388
- self.sub_model_model = temp_model.from_map(m['SubModelModel'])
389
- if m.get('MapArrayMap') is not None:
390
- self.map_array_map = m.get('MapArrayMap')
391
- self.map_array_model = {}
392
- if m.get('MapArrayModel') is not None:
393
- for k, v in m.get('MapArrayModel').items():
394
- l1 = []
395
- for k1 in v:
396
- temp_model = M()
397
- l1.append(temp_model.from_map(k1))
398
- self.map_array_model['k'] = l1
399
- return self
400
-
401
-
402
- class M(TeaModel):
403
- def __init__(self, oneself=None, self_array=None, self_map=None, self_array_map=None, self_array_array=None):
404
- self.oneself = oneself # type: M
405
- self.self_array = self_array # type: list[M]
406
- self.self_map = self_map # type: dict[str, M]
407
- self.self_array_map = self_array_map # type: list[dict[str, M]]
408
- self.self_array_array = self_array_array # type: list[list[M]]
409
-
410
- def validate(self):
411
- self.validate_required(self.oneself, 'oneself')
412
- if self.oneself:
413
- self.oneself.validate()
414
- self.validate_required(self.self_array, 'self_array')
415
- if self.self_array:
416
- for k in self.self_array:
417
- if k:
418
- k.validate()
419
- self.validate_required(self.self_map, 'self_map')
420
- if self.self_map:
421
- for v in self.self_map.values():
422
- if v:
423
- v.validate()
424
- self.validate_required(self.self_array_map, 'self_array_map')
425
- self.validate_required(self.self_array_array, 'self_array_array')
426
- if self.self_array_array:
427
- for k in self.self_array_array:
428
- for k1 in k:
429
- if k1:
430
- k1.validate()
431
-
432
- def to_map(self):
433
- _map = super(M, self).to_map()
434
- if _map is not None:
435
- return _map
436
-
437
- result = dict()
438
- if self.oneself is not None:
439
- result['oneself'] = self.oneself.to_map()
440
- result['selfArray'] = []
441
- if self.self_array is not None:
442
- for k in self.self_array:
443
- result['selfArray'].append(k.to_map() if k else None)
444
- result['selfMap'] = {}
445
- if self.self_map is not None:
446
- for k, v in self.self_map.items():
447
- result['selfMap'][k] = v.to_map()
448
- result['selfArrayMap'] = []
449
- if self.self_array_map is not None:
450
- for k in self.self_array_map:
451
- d1 = {}
452
- for k1 ,v1 in k.items():
453
- d1[k1] = v1.to_map()
454
- result['selfArrayMap'].append(d1)
455
- result['selfArrayArray'] = []
456
- if self.self_array_array is not None:
457
- for k in self.self_array_array:
458
- l1 = []
459
- for k1 in k:
460
- l1.append(k1.to_map() if k1 else None)
461
- result['selfArrayArray'].append(l1)
462
- return result
463
-
464
- def from_map(self, m=None):
465
- m = m or dict()
466
- if m.get('oneself') is not None:
467
- temp_model = M()
468
- self.oneself = temp_model.from_map(m['oneself'])
469
- self.self_array = []
470
- if m.get('selfArray') is not None:
471
- for k in m.get('selfArray'):
472
- temp_model = M()
473
- self.self_array.append(temp_model.from_map(k))
474
- self.self_map = {}
475
- if m.get('selfMap') is not None:
476
- for k, v in m.get('selfMap').items():
477
- temp_model = M()
478
- self.self_map[k] = temp_model.from_map(v)
479
- self.self_array_map = []
480
- if m.get('selfArrayMap') is not None:
481
- for k in m.get('selfArrayMap'):
482
- d1 = {}
483
- for k1 ,v1 in k.items():
484
- temp_model = M()
485
- d1[k1] = temp_model.from_map(v1)
486
- self.self_array_map.append(d1)
487
- self.self_array_array = []
488
- if m.get('selfArrayArray') is not None:
489
- for k in m.get('selfArrayArray'):
490
- l1 = []
491
- for k1 in k:
492
- temp_model = M()
493
- l1.append(temp_model.from_map(k1))
494
- self.self_array_array.append(l1)
495
- return self
496
-
497
-
498
- class NodeChildSubChild(TeaModel):
499
- def __init__(self, child_node=None):
500
- self.child_node = child_node # type: Node
501
-
502
- def validate(self):
503
- if self.child_node:
504
- self.child_node.validate()
505
-
506
- def to_map(self):
507
- _map = super(NodeChildSubChild, self).to_map()
508
- if _map is not None:
509
- return _map
510
-
511
- result = dict()
512
- if self.child_node is not None:
513
- result['childNode'] = self.child_node.to_map()
514
- return result
515
-
516
- def from_map(self, m=None):
517
- m = m or dict()
518
- if m.get('childNode') is not None:
519
- temp_model = Node()
520
- self.child_node = temp_model.from_map(m['childNode'])
521
- return self
522
-
523
-
524
- class NodeChild(TeaModel):
525
- def __init__(self, sub_child=None):
526
- self.sub_child = sub_child # type: NodeChildSubChild
527
-
528
- def validate(self):
529
- if self.sub_child:
530
- self.sub_child.validate()
531
-
532
- def to_map(self):
533
- _map = super(NodeChild, self).to_map()
534
- if _map is not None:
535
- return _map
536
-
537
- result = dict()
538
- if self.sub_child is not None:
539
- result['subChild'] = self.sub_child.to_map()
540
- return result
541
-
542
- def from_map(self, m=None):
543
- m = m or dict()
544
- if m.get('subChild') is not None:
545
- temp_model = NodeChildSubChild()
546
- self.sub_child = temp_model.from_map(m['subChild'])
547
- return self
548
-
549
-
550
- class Node(TeaModel):
551
- def __init__(self, child=None):
552
- self.child = child # type: NodeChild
553
-
554
- def validate(self):
555
- if self.child:
556
- self.child.validate()
557
-
558
- def to_map(self):
559
- _map = super(Node, self).to_map()
560
- if _map is not None:
561
- return _map
562
-
563
- result = dict()
564
- if self.child is not None:
565
- result['child'] = self.child.to_map()
566
- return result
567
-
568
- def from_map(self, m=None):
569
- m = m or dict()
570
- if m.get('child') is not None:
571
- temp_model = NodeChild()
572
- self.child = temp_model.from_map(m['child'])
573
- return self
574
-
575
-
@@ -1,64 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # This file is auto-generated, don't edit it. Thanks.
3
- from __future__ import unicode_literals
4
-
5
- from Tea.request import TeaRequest
6
- from Tea.exceptions import TeaException
7
- from Tea.core import TeaCore
8
-
9
-
10
- class Client(object):
11
- def __init__(self):
12
- pass
13
-
14
- def hello(self):
15
- _request = TeaRequest()
16
- _request.method = 'GET'
17
- _request.pathname = '/'
18
- _request.headers = {
19
- 'host': 'www.test.com'
20
- }
21
- if True:
22
- _request.headers['host'] = 'www.test2.com'
23
- _last_request = _request
24
- _response = TeaCore.do_action(_request)
25
- if True:
26
- raise TeaException(_request, _response)
27
- else:
28
- True
29
- self.hello_if()
30
- not False
31
- a = None
32
- a = 'string'
33
- return
34
-
35
- @staticmethod
36
- def hello_if():
37
- if True:
38
- pass
39
- if True:
40
- pass
41
- elif True:
42
- pass
43
- else:
44
- pass
45
-
46
- @staticmethod
47
- def hello_throw():
48
- raise TeaException({})
49
-
50
- @staticmethod
51
- def hello_for_break():
52
- for item in {}:
53
- break
54
-
55
- @staticmethod
56
- def hello_while():
57
- while True:
58
- break
59
-
60
- @staticmethod
61
- def hello_declare():
62
- hello = 'world'
63
- hello_null = None
64
- hello = 'hehe'
@@ -1,8 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- # This file is auto-generated, don't edit it. Thanks.
3
- from Source.source_client import SourceClient
4
-
5
-
6
- class Client(SourceClient):
7
- def __init__(self, config):
8
- super(Client, self).__init__(config)