|
1 | | -from ..errors import CommandException, ApiException |
| 1 | +from ..errors import ApiException |
2 | 2 | from typing import Union |
3 | 3 |
|
4 | 4 |
|
@@ -63,64 +63,6 @@ def lua_args(*params, omit_nulls=True): |
63 | 63 | return ', '.join(ps) |
64 | 64 |
|
65 | 65 |
|
66 | | -def bool_success(v): |
67 | | - if v == [True]: |
68 | | - return |
69 | | - if len(v) == 2 and v[0] is False: |
70 | | - assert isinstance(v[1], str) |
71 | | - raise CommandException(v[1]) |
72 | | - raise ApiException('Bad return value: {}'.format(v)) |
73 | | - |
74 | | - |
75 | | -def single_return(v): |
76 | | - assert len(v) == 1 |
77 | | - return v[0] |
78 | | - |
79 | | - |
80 | | -def make_optional(fn): |
81 | | - def op_fn(v): |
82 | | - if v == []: |
83 | | - return None |
84 | | - return fn(v) |
85 | | - return op_fn |
86 | | - |
87 | | - |
88 | | -def make_single_value_return(validator, converter=None): |
89 | | - def fn(v): |
90 | | - assert len(v) == 1 |
91 | | - if converter is not None: |
92 | | - v[0] = converter(v[0]) |
93 | | - assert validator(v[0]) |
94 | | - return v[0] |
95 | | - return fn |
96 | | - |
97 | | - |
98 | | -bool_return = make_single_value_return(lambda v: isinstance(v, bool)) |
99 | | -int_return = make_single_value_return(lambda v: isinstance(v, int) and not isinstance(v, bool)) |
100 | | -number_return = make_single_value_return(lambda v: isinstance(v, (int, float)) and not isinstance(v, bool)) |
101 | | -str_return = make_single_value_return(lambda v: isinstance(v, str)) |
102 | | -str_bool_return = make_single_value_return(lambda v: isinstance(v, (str, bool))) |
103 | | -list_return = make_single_value_return( |
104 | | - lambda v: isinstance(v, list), |
105 | | - lambda v: [] if v == {} else v, |
106 | | -) |
107 | | -dict_return = make_single_value_return(lambda v: isinstance(v, dict)) |
108 | | - |
109 | | - |
110 | | -@make_optional |
111 | | -def nil_return(v): |
112 | | - assert False |
113 | | - |
114 | | - |
115 | | -opt_bool_return = make_optional(bool_return) |
116 | | -opt_int_return = make_optional(int_return) |
117 | | -opt_number_return = make_optional(number_return) |
118 | | -opt_str_return = make_optional(str_return) |
119 | | -opt_str_bool_return = make_optional(str_bool_return) |
120 | | -opt_list_return = make_optional(list_return) |
121 | | -opt_dict_return = make_optional(dict_return) |
122 | | - |
123 | | - |
124 | 66 | class BaseSubAPI: |
125 | 67 | _API = NotImplemented |
126 | 68 |
|
|
0 commit comments