Do various check on control_inputs and control_outputs. Args: control_inputs: A boolean indicating whether control inputs are enabled. control_outputs: An instance of util.ControlOutputs or None. If not None, control outputs are enabled. control_ios: An instance of util.Control
(control_inputs=False, control_outputs=None, control_ios=None)
| 207 | |
| 208 | |
| 209 | def check_cios(control_inputs=False, control_outputs=None, control_ios=None): |
| 210 | """Do various check on control_inputs and control_outputs. |
| 211 | |
| 212 | Args: |
| 213 | control_inputs: A boolean indicating whether control inputs are enabled. |
| 214 | control_outputs: An instance of util.ControlOutputs or None. If not None, |
| 215 | control outputs are enabled. |
| 216 | control_ios: An instance of util.ControlOutputs or None. If not None, both |
| 217 | control inputs and control outputs are enabled. This is equivalent to set |
| 218 | control_inputs to True and control_outputs to the util.ControlOutputs |
| 219 | instance. |
| 220 | Returns: |
| 221 | A tuple `(control_inputs, control_outputs)` where: |
| 222 | `control_inputs` is a boolean indicating whether to use control inputs. |
| 223 | `control_outputs` is an instance of util.ControlOutputs or None |
| 224 | Raises: |
| 225 | ValueError: if control_inputs is an instance of util.ControlOutputs but |
| 226 | control_outputs is not None |
| 227 | TypeError: if control_outputs is not None and is not a util.ControlOutputs. |
| 228 | """ |
| 229 | if control_ios is not None: |
| 230 | if not isinstance(control_ios, util.ControlOutputs): |
| 231 | raise TypeError("Expected a util.ControlOutputs, got: {}".format( |
| 232 | type(control_ios))) |
| 233 | if control_outputs is not None: |
| 234 | raise ValueError("control_outputs should be None when using control_ios.") |
| 235 | control_inputs = True |
| 236 | control_outputs = control_ios |
| 237 | elif control_outputs is not None: |
| 238 | if not isinstance(control_outputs, util.ControlOutputs): |
| 239 | raise TypeError("Expected a util.ControlOutputs, got: {}".format( |
| 240 | type(control_outputs))) |
| 241 | |
| 242 | if control_outputs is not None: |
| 243 | control_outputs.update() |
| 244 | return control_inputs, control_outputs |
| 245 | |
| 246 | |
| 247 | def get_ops_ios(ops, control_inputs=False, control_outputs=None, |
no test coverage detected