To implement a new functionality in the aten library, you must
- Add the class or function header in
aten/src/Tensor.h - Add the implementation in the correct file (or create a new one) in
aten./*Tensor/*.cpp. Make sure to updateaten/bindings/CMakeLists.txtif needed. - Add its pybindings (if a public function that will be used in
ember) inaten/bindings/*bindings.cpp. Make sure to updateaten/bindings/CMakeLists.txtif needed. - Add relevant C++ tests in
aten/test/. - Not necessary, but it's good to test it out on a personal script for a sanity check.
- Add to the stub files in
ember/aten/*.pyi. - Add Python tests in
test/. - If everything passes, you can submit a pull request.