|
31 | 31 |
|
32 | 32 | # typing-------------------------------------------------------
|
33 | 33 |
|
34 |
| -fromtypingimportAny,Callable,Mapping,TYPE_CHECKING,Tuple |
| 34 | +fromtypingimportAny,Callable,List,Mapping,TYPE_CHECKING,Tuple,Union,overload |
35 | 35 |
|
36 | 36 | fromgit.typesimportLiteral,Lit_config_levels,TBD
|
37 | 37 |
|
@@ -164,44 +164,51 @@ def __exit__(self, exception_type: str, exception_value: str, traceback: str) ->
|
164 | 164 | class_OMD(OrderedDict):
|
165 | 165 | """Ordered multi-dict."""
|
166 | 166 |
|
167 |
| -def__setitem__(self,key,value): |
| 167 | +def__setitem__(self,key:str,value:Any)->None: |
168 | 168 | super(_OMD,self).__setitem__(key, [value])
|
169 | 169 |
|
170 |
| -defadd(self,key,value): |
| 170 | +defadd(self,key:str,value:Any)->None: |
171 | 171 | ifkeynotinself:
|
172 | 172 | super(_OMD,self).__setitem__(key, [value])
|
173 |
| -return |
174 |
| - |
| 173 | +returnNone |
175 | 174 | super(_OMD,self).__getitem__(key).append(value)
|
176 | 175 |
|
177 |
| -defsetall(self,key,values): |
| 176 | +defsetall(self,key:str,values:Any)->None: |
178 | 177 | super(_OMD,self).__setitem__(key,values)
|
179 | 178 |
|
180 |
| -def__getitem__(self,key): |
| 179 | +def__getitem__(self,key:str)->Any: |
181 | 180 | returnsuper(_OMD,self).__getitem__(key)[-1]
|
182 | 181 |
|
183 |
| -defgetlast(self,key): |
| 182 | +defgetlast(self,key:str)->Any: |
184 | 183 | returnsuper(_OMD,self).__getitem__(key)[-1]
|
185 | 184 |
|
186 |
| -defsetlast(self,key,value): |
| 185 | +defsetlast(self,key:str,value:Any)->None: |
187 | 186 | ifkeynotinself:
|
188 | 187 | super(_OMD,self).__setitem__(key, [value])
|
189 | 188 | return
|
190 | 189 |
|
191 | 190 | prior=super(_OMD,self).__getitem__(key)
|
192 | 191 | prior[-1]=value
|
193 | 192 |
|
194 |
| -defget(self,key,default=None): |
| 193 | +@overload |
| 194 | +defget(self,key:str,default:None= ...)->None: |
| 195 | + ... |
| 196 | + |
| 197 | +@overload |
| 198 | +defget(self,key:str,default:Any= ...)->Any: |
| 199 | + ... |
| 200 | + |
| 201 | +defget(self,key:str,default:Union[Any,None]=None)->Union[Any,None]: |
195 | 202 | returnsuper(_OMD,self).get(key, [default])[-1]
|
196 | 203 |
|
197 |
| -defgetall(self,key): |
| 204 | +defgetall(self,key:str)->Any: |
198 | 205 | returnsuper(_OMD,self).__getitem__(key)
|
199 | 206 |
|
200 |
| -defitems(self): |
| 207 | +defitems(self)->List[Tuple[str,Any]]: |
201 | 208 | """List of (key, last value for key)."""
|
202 | 209 | return [(k,self[k])forkinself]
|
203 | 210 |
|
204 |
| -defitems_all(self): |
| 211 | +defitems_all(self)->List[Tuple[str,List[Any]]]: |
205 | 212 | """List of (key, list of values for key)."""
|
206 | 213 | return [(k,self.getall(k))forkinself]
|
207 | 214 |
|
|