print_doc_functions.hpp
Go to the documentation of this file.
1 
13 #ifndef MLPACK_BINDINGS_JULIA_PRINT_DOC_FUNCTIONS_HPP
14 #define MLPACK_BINDINGS_JULIA_PRINT_DOC_FUNCTIONS_HPP
15 
17 
18 namespace mlpack {
19 namespace bindings {
20 namespace julia {
21 
26 inline std::string GetBindingName(const std::string& bindingName);
27 
31 inline std::string PrintImport(const std::string& bindingName);
32 
36 inline std::string PrintOutputOptionInfo();
37 
41 inline std::string PrintInputOptionInfo();
42 
46 inline std::string PrintTypeDocs();
47 
51 template<typename T>
52 inline std::string PrintValue(const T& value, bool quotes);
53 
54 // Special overload for booleans.
55 template<>
56 inline std::string PrintValue(const bool& value, bool quotes);
57 
61 inline std::string PrintDefault(const std::string& paramName);
62 
66 inline std::string PrintDataset(const std::string& dataset);
67 
71 inline std::string PrintModel(const std::string& model);
72 
76 inline std::string PrintType(const util::ParamData& param);
77 
78 // Recursion base case.
79 inline std::string PrintInputOptions();
80 
86 template<typename T, typename... Args>
87 std::string PrintInputOptions(const std::string& paramName,
88  const T& value,
89  Args... args);
90 
91 // Recursion base case.
92 inline std::string PrintOutputOptions();
93 
94 template<typename T, typename... Args>
95 std::string PrintOutputOptions(const std::string& paramName,
96  const T& value,
97  Args... args);
98 
103 template<typename... Args>
104 std::string ProgramCall(const std::string& programName, Args... args);
105 
110 inline std::string ParamString(const std::string& paramName);
111 
117 inline bool IgnoreCheck(const std::string& paramName);
118 
124 inline bool IgnoreCheck(const std::vector<std::string>& constraints);
125 
132 inline bool IgnoreCheck(
133  const std::vector<std::pair<std::string, bool>>& constraints,
134  const std::string& paramName);
135 
136 } // namespace julia
137 } // namespace bindings
138 } // namespace mlpack
139 
140 // Include implementation.
141 #include "print_doc_functions_impl.hpp"
142 
143 #endif
std::string PrintValue(const T &value, bool quotes)
Given a parameter type, print the corresponding value.
Linear algebra utility functions, generally performed on matrices or vectors.
Definition: add_to_po.hpp:21
std::string PrintOutputOptionInfo()
Print any special information about output options.
std::string PrintImport(const std::string &bindingName)
Print any imports for Julia.
std::string PrintTypeDocs()
Print documentation for each of the types.
std::string PrintInputOptionInfo()
Print any special information about input options.
std::string PrintModel(const std::string &model)
Print a model type parameter.
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 PrintInputOptions()
std::string GetBindingName(const std::string &bindingName)
Given the name of a binding, print its Julia name (this just returns the binding name).
std::string PrintDefault(const std::string &paramName)
Given a parameter name, print its corresponding default value.
std::string PrintOutputOptions()
std::string PrintType(const util::ParamData &param)
Print the type of a parameter that a user would specify from Julia.
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 PrintDataset(const std::string &dataset)
Print a dataset type parameter.
bool IgnoreCheck(const std::string &paramName)
Print whether or not we should ignore a check on the given parameter.