(pfor_input)
| 2498 | |
| 2499 | @RegisterPFor("Select") |
| 2500 | def _convert_select(pfor_input): |
| 2501 | pfor_input.stack_inputs() |
| 2502 | cond = pfor_input.stacked_input(0) |
| 2503 | t = pfor_input.stacked_input(1) |
| 2504 | e = pfor_input.stacked_input(2) |
| 2505 | cond_rank = array_ops.rank(cond) |
| 2506 | cond, t, e = control_flow_ops.cond( |
| 2507 | cond_rank > 1, lambda: _inputs_with_flattening(pfor_input, [0, 1, 2]), |
| 2508 | lambda: [cond, t, e]) |
| 2509 | outputs = _create_op( |
| 2510 | pfor_input.op_type, [cond, t, e], [x.dtype for x in pfor_input.outputs], |
| 2511 | attrs=pfor_input.op.node_def.attr).outputs |
| 2512 | n = pfor_input.pfor.loop_len_vector |
| 2513 | out = control_flow_ops.cond(cond_rank > 1, |
| 2514 | lambda: _unflatten_first_dim(outputs[0], n), |
| 2515 | lambda: outputs[0]) |
| 2516 | return [wrap(out, True) for x in outputs] |
| 2517 | |
| 2518 | |
| 2519 | @RegisterPFor("SelectV2") |
nothing calls this directly
no test coverage detected