All of Input's constructors are implicit. Input can be implicitly constructed from the following objects : Output: This is so that the output of an Operation can be directly used as the input to a op wrapper, which takes Inputs. A scalar, or a multi-dimensional tensor specified as a recursive initializer list. This enables directly passing constants as inputs to op wrappers. A Tensor object.
| 202 | /// inputs to op wrappers. |
| 203 | /// * A Tensor object. |
| 204 | Input(const Output& o) : output_(o) {} // NOLINT(runtime/explicit) |
| 205 | |
| 206 | template <typename T, typename = typename std::enable_if< |
| 207 | std::is_arithmetic<T>::value || |