1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| #pragma once
|
| #include <torch/csrc/python_headers.h>
| #include <memory>
| #include <vector>
| #include <ATen/ATen.h>
|
| namespace torch {
|
| struct TupleParser {
| TupleParser(PyObject* args, int num_args=-1);
|
| void parse(bool& x, const std::string& param_name);
| void parse(int& x, const std::string& param_name);
| void parse(double& x, const std::string& param_name);
| void parse(std::vector<int>& x, const std::string& param_name);
| void parse(std::string& x, const std::string& param_name);
|
| protected:
| std::runtime_error invalid_type(const std::string& expected, const std::string& param_name);
| PyObject* next_arg();
|
| private:
| PyObject* args;
| int idx;
| };
|
| } // namespace torch
|
|