49 template<
typename main_function_t>
51 return internal_run(main_function, std::nullopt, std::nullopt);
74 template<
typename main_function_t>
75 static auto run(main_function_t main_function,
int argc,
char* argv[]) ->
xtd::int32 {
76 return internal_run(main_function, argc, argv);
81 static auto run(xtd::delegate<
void()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
82 static auto run(xtd::delegate<
void()> main_function) ->
xtd::int32;
83 static auto run(xtd::delegate<
void(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
84 static auto run(xtd::delegate<
void(
int,
char* [])> main_function) ->
xtd::int32;
87 static auto run(xtd::delegate<
int()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
88 static auto run(xtd::delegate<
int()> main_function) ->
xtd::int32;
89 static auto run(xtd::delegate<
int(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
90 static auto run(xtd::delegate<
int(
int,
char* [])> main_function) ->
xtd::int32;
120 static auto run(
void (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
121 static auto run(
void (*main_function)(
int,
char* [])) ->
xtd::int32;
124 static auto run(
int (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
125 static auto run(
int (*main_function)(
int,
char* [])) ->
xtd::int32;
157 template<
typename main_function_t>
158 static auto internal_run(main_function_t main_function, std::optional<int> argc, std::optional<char**> argv) ->
xtd::int32 {
162 auto exit_code = argc == std::nullopt && argv == std::nullopt ? run_(main_function) : run_(main_function, argc.value(), argv.value());
165 }
catch (
const std::exception& e) {
166 __show_generic_exception_message__(e);
170 __show_generic_exception_message__();
175 static auto init_run() -> void;
177 static auto end_run() -> void;
179 static auto run_(xtd::delegate<
void()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
180 static auto run_(xtd::delegate<
void()> main_function) ->
xtd::int32;
181 static auto run_(xtd::delegate<
void(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
182 static auto run_(xtd::delegate<
void(
int,
char* [])> main_function) ->
xtd::int32;
185 static auto run_(xtd::delegate<
int()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
186 static auto run_(xtd::delegate<
int()> main_function) ->
xtd::int32;
187 static auto run_(xtd::delegate<
int(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
188 static auto run_(xtd::delegate<
int(
int,
char* [])> main_function) ->
xtd::int32;
192 static auto run_(xtd::delegate<xtd::threading::tasks::task<>()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
193 static auto run_(xtd::delegate<xtd::threading::tasks::task<>()> main_function) ->
xtd::int32;
194 static auto run_(xtd::delegate<xtd::threading::tasks::task<>(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
195 static auto run_(xtd::delegate<xtd::threading::tasks::task<>(
int,
char* [])> main_function) ->
xtd::int32;
198 static auto run_(xtd::delegate<xtd::threading::tasks::task<int>()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
199 static auto run_(xtd::delegate<xtd::threading::tasks::task<int>()> main_function) ->
xtd::int32;
200 static auto run_(xtd::delegate<xtd::threading::tasks::task<int>(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
201 static auto run_(xtd::delegate<xtd::threading::tasks::task<int>(
int,
char* [])> main_function) ->
xtd::int32;
205 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<>()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
206 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<>()> main_function) ->
xtd::int32;
207 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<>(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
208 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<>(
int,
char* [])> main_function) ->
xtd::int32;
211 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<int>()> main_function,
int argc,
char* argv[]) ->
xtd::int32;
212 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<int>()> main_function) ->
xtd::int32;
213 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<int>(
int,
char* [])> main_function,
int argc,
char* argv[]) ->
xtd::int32;
214 static auto run_(xtd::delegate<xtd::threading::tasks::wtask<int>(
int,
char* [])> main_function) ->
xtd::int32;
218 static auto run_(
void (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
219 static auto run_(
void (*main_function)()) ->
xtd::int32;
220 static auto run_(
void (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
221 static auto run_(
void (*main_function)(
int,
char* [])) ->
xtd::int32;
224 static auto run_(
int (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
225 static auto run_(
int (*main_function)()) ->
xtd::int32;
226 static auto run_(
int (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
227 static auto run_(
int (*main_function)(
int,
char* [])) ->
xtd::int32;
231 static auto run_(xtd::threading::tasks::task<> (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
232 static auto run_(xtd::threading::tasks::task<> (*main_function)()) ->
xtd::int32;
233 static auto run_(xtd::threading::tasks::task<> (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
234 static auto run_(xtd::threading::tasks::task<> (*main_function)(
int,
char* [])) ->
xtd::int32;
237 static auto run_(xtd::threading::tasks::task<int> (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
238 static auto run_(xtd::threading::tasks::task<int> (*main_function)()) ->
xtd::int32;
239 static auto run_(xtd::threading::tasks::task<int> (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
240 static auto run_(xtd::threading::tasks::task<int> (*main_function)(
int,
char* [])) ->
xtd::int32;
244 static auto run_(xtd::threading::tasks::wtask<> (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
245 static auto run_(xtd::threading::tasks::wtask<> (*main_function)()) ->
xtd::int32;
246 static auto run_(xtd::threading::tasks::wtask<> (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
247 static auto run_(xtd::threading::tasks::wtask<> (*main_function)(
int,
char* [])) ->
xtd::int32;
250 static auto run_(xtd::threading::tasks::wtask<int> (*main_function)(),
int argc,
char* argv[]) ->
xtd::int32;
251 static auto run_(xtd::threading::tasks::wtask<int> (*main_function)()) ->
xtd::int32;
252 static auto run_(xtd::threading::tasks::wtask<int> (*main_function)(
int,
char* []),
int argc,
char* argv[]) ->
xtd::int32;
253 static auto run_(xtd::threading::tasks::wtask<int> (*main_function)(
int,
char* [])) ->
xtd::int32;
static auto run(main_function_t main_function, int argc, char *argv[]) -> xtd::int32
Safely call the specified application's main entry point, argc and argv.
Definition startup.hpp:75
The xtd namespace contains all fundamental classes to access Hardware, Os, System,...
Definition abstract_object.hpp:8