ComputeNodePtr syten::STensorImpl::Autodiff::create | ( | std::string && | opname_, |
Vec< Pair< ComputeNodePtr, Size > > && | input_nodes_, | ||
Vec< STensorId > && | output_ids_, | ||
AdjointEvaluator && | func_, | ||
Vec< STensor > && | output_shapes_, | ||
Vec< AsyncCached< STensor > > && | cached_tensors_ = {} |
||
) |
Helper to create a new ComputeNode and return a shared pointer to it.
make_shared
worked properly with initializer lists (or I understood how it did), this function would not exist... References std::move().
Referenced by create_primer(), syten::STensorImpl::qr(), syten::STensorImpl::STensor::set_autodiff_node(), syten::STensorImpl::STensorProxy::set_autodiff_node(), syten::STensorImpl::STensorProxy::STensorProxy(), and syten::STensorImpl::svd().