pytorch
928ce29e - Refactor c10::complex and cleanup c10::Scalar (#38593)

Commit
4 years ago
Refactor c10::complex and cleanup c10::Scalar (#38593) Summary: **Main:** - `c10::complex` is refactored: it no longer uses inheritance to specialize constructors, but using SFINAE instead. This implementation is cleaner and avoids some compiler bugs. - `c10::Scalar` is cleaned up: it no longer needs to store complex as `double z[2]`, `c10::complex<double>` will work. **Other cleanups:** - `numeric_limits` of `c10::complex` is moved to `complex_utils.h` - the variable in `c10::complex` storing real and imag is changed from `storage[2]` to `real_` and `imag_` - remove the `c10::` before `complex` when in `c10` namespace Pull Request resolved: https://github.com/pytorch/pytorch/pull/38593 Differential Revision: D21769463 Pulled By: anjali411 fbshipit-source-id: 3cb5bcbb0ff304d137221e00fe481a08dba7bc12
Author
Parents
Loading