/usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/autograd
NameSizeModeActions
functions/-0755rm
generated/-0755rm
utils/-0755rm
anomaly_mode.h15250644editdlrm
autograd.h52940644editdlrm
autograd_not_implemented_fallback.h2010644editdlrm
cpp_hook.h5180644editdlrm
custom_function.h144700644editdlrm
edge.h16270644editdlrm
engine.h172370644editdlrm
forward_grad.h85830644editdlrm
function.h250460644editdlrm
FunctionsManual.h199040644editdlrm
function_hook.h6410644editdlrm
grad_mode.h2070644editdlrm
InferenceMode.h1820644editdlrm
input_buffer.h15970644editdlrm
input_metadata.h13840644editdlrm
profiler.h1120644editdlrm
profiler_kineto.h91110644editdlrm
profiler_legacy.h169300644editdlrm
profiler_utils.h4390644editdlrm
python_anomaly_mode.h12460644editdlrm
python_autograd.h3880644editdlrm
python_cpp_function.h24560644editdlrm
python_engine.h12620644editdlrm
python_fft_functions.h1280644editdlrm
python_function.h40990644editdlrm
python_hook.h7000644editdlrm
python_legacy_variable.h2990644editdlrm
python_linalg_functions.h1310644editdlrm
python_mode.h4250644editdlrm
python_nn_functions.h1270644editdlrm
python_saved_variable_hooks.h8830644editdlrm
python_special_functions.h1320644editdlrm
python_torch_functions.h6710644editdlrm
python_variable.h16450644editdlrm
python_variable_indexing.h3130644editdlrm
record_function_ops.h5870644editdlrm
saved_variable.h43220644editdlrm
saved_variable_hooks.h2720644editdlrm
symbolic.h3300644editdlrm
variable.h334110644editdlrm
VariableTypeUtils.h150860644editdlrm
Edit: /usr/local/lib64/python3.6/site-packages/torch/include/torch/csrc/autograd/edge.h (1627B)
#pragma once #include #include #include #include namespace torch { namespace autograd { struct Node; /// Represents a particular input of a function. struct Edge { Edge() noexcept : function(nullptr), input_nr(0) {} Edge(std::shared_ptr function_, uint32_t input_nr_) noexcept : function(std::move(function_)), input_nr(input_nr_) {} /// Convenience method to test if an edge is valid. bool is_valid() const noexcept { return function != nullptr; } // Required for use in associative containers. bool operator==(const Edge& other) const noexcept { return this->function == other.function && this->input_nr == other.input_nr; } bool operator!=(const Edge& other) const noexcept { return !(*this == other); } /// The function this `Edge` points to. std::shared_ptr function; /// The identifier of a particular input to the function. uint32_t input_nr; }; }} // namespace torch::autograd // The idiomatic way of enabling use of a custom type as the key of hash // containers in C++11. This method removes the requirement of having to pass // a custom hasher to std::unordered_{map, set}. // See http://en.cppreference.com/w/cpp/utility/hash for more information. namespace std { template <> struct hash { // These type aliases are required by the standard. using argument_type = torch::autograd::Edge; using return_type = size_t; return_type operator()(const argument_type& edge) const noexcept { return c10::get_hash(edge.function, edge.input_nr); } }; } // namespace std