print_doc_functions.hpp
Go to the documentation of this file.
1 
14 #ifndef MLPACK_BINDINGS_GO_PRINT_DOC_FUNCTIONS_HPP
15 #define MLPACK_BINDINGS_GO_PRINT_DOC_FUNCTIONS_HPP
16 
18 
19 namespace mlpack {
20 namespace bindings {
21 namespace go {
22 
26 inline std::string GetBindingName(const std::string& bindingName);
27 
31 inline std::string PrintImport();
32 
36 inline std::string PrintOutputOptionInfo();
37 
41 inline std::string PrintInputOptionInfo();
42 
46 template<typename T>
47 inline std::string PrintValue(const T& value, bool quotes);
48 
49 // Special overload for booleans.
50 template<>
51 inline std::string PrintValue(const bool& value, bool quotes);
52 
56 inline std::string PrintDefault(const std::string& paramName);
57 
58 // Base case: no modification needed.
59 inline void GetOptions(
60  std::vector<std::tuple<std::string, std::string>>& /* results */);
61 
67 template<typename T, typename... Args>
68 void GetOptions(
69  std::vector<std::tuple<std::string, std::string>>& results,
70  const std::string& paramName,
71  const T& value,
72  Args... args);
73 
74 // Recursion base case.
75 inline std::string PrintOptionalInputs(/* option */);
76 
77 // Recursion base case.
78 inline std::string PrintInputOptions(/* option */);
79 
84 template<typename T, typename... Args>
85 std::string PrintOptionalInputs(const std::string& paramName,
86  const T& value,
87  Args... args);
88 
93 template<typename T, typename... Args>
94 std::string PrintInputOptions(const std::string& paramName,
95  const T& value,
96  Args... args);
97 
98 // Recursion base case.
99 inline std::string PrintOutputOptions();
100 
101 template<typename... Args>
102 std::string PrintOutputOptions(Args... args);
103 
108 template<typename... Args>
109 std::string ProgramCall(const std::string& programName, Args... args);
110 
114 inline std::string PrintModel(const std::string& modelName);
115 
120 inline std::string PrintDataset(const std::string& datasetName);
121 
126 inline std::string ParamString(const std::string& paramName);
127 
131 inline bool IgnoreCheck(const std::string& paramName);
132 
137 inline bool IgnoreCheck(const std::vector<std::string>& constraints);
138 
143 inline bool IgnoreCheck(
144  const std::vector<std::pair<std::string, bool>>& constraints,
145  const std::string& paramName);
146 
147 } // namespace go
148 } // namespace bindings
149 } // namespace mlpack
150 
151 // Include implementation.
152 #include "print_doc_functions_impl.hpp"
153 
154 #endif
std::string PrintOutputOptions()
Linear algebra utility functions, generally performed on matrices or vectors.
void GetOptions(std::vector< std::tuple< std::string, std::string >> &)
std::string PrintDataset(const std::string &datasetName)
Given the name of a matrix, print it.
std::string GetBindingName(const std::string &bindingName)
Given the name of a binding, print its Go name.
go
Definition: CMakeLists.txt:6
std::string PrintModel(const std::string &modelName)
Given the name of a model, print it.
std::string programName
std::string ProgramCall(const std::string &programName, Args... args)
Given a name of a binding and a variable number of arguments (and their contents), print the corresponding function call.
std::string PrintInputOptionInfo()
Print any special information about input options.
std::string PrintOptionalInputs()
std::string PrintDefault(const std::string &paramName)
Given a parameter name, print its corresponding default value.
std::string PrintValue(const T &value, bool quotes)
Given a parameter type, print the corresponding value.
std::string ParamString(const std::string &paramName)
Given the parameter name, determine what it would actually be when passed to the command line...
std::string PrintImport()
Print any import information for the Go binding.
bool IgnoreCheck(const std::string &paramName)
Print whether or not we should ignore a check on the given parameter.
std::string PrintInputOptions()
std::string PrintOutputOptionInfo()
Print any special information about output options.