MCPcopy Create free account
hub / github.com/SakuraEngine/SakuraEngine / MAIN_FUNC_NAME

Function MAIN_FUNC_NAME

tools/dascript_aot/aot_cc/src/main.cpp:377–541  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

375#endif
376
377int MAIN_FUNC_NAME ( int argc, char * argv[] ) {
378 if ( argc>2 && strcmp(argv[1],"-aot")==0 ) {
379 return das_aot_main(argc, argv);
380 }
381 use_utf8();
382 if ( argc<=1 ) {
383 print_help();
384 return -1;
385 }
386 setCommandLineArguments(argc,argv);
387 das::vector<string> files;
388 string mainName = "main";
389 bool scriptArgs = false;
390 bool outputProgramCode = false;
391 bool pauseAfterDone = false;
392 bool dryRun = false;
393 for ( int i=1; i < argc; ++i ) {
394 if ( argv[i][0]=='-' ) {
395 string cmd(argv[i]+1);
396 if ( cmd=="-" ) {
397 scriptArgs = true;
398 }
399 if ( cmd=="main" ) {
400 if ( i+1 > argc ) {
401 printf("main requires argument\n");
402 print_help();
403 return -1;
404 }
405 mainName = argv[i+1];
406 i += 1;
407 } else if ( cmd=="dasroot" ) {
408 if ( i+1 > argc ) {
409 printf("dasroot requires argument\n");
410 print_help();
411 return -1;
412 }
413 setDasRoot(argv[i+1]);
414 i += 1;
415 } else if ( cmd=="log" ) {
416 outputProgramCode = true;
417 } else if ( cmd=="dry-run" ) {
418 dryRun = true;
419 } else if ( cmd=="args" ) {
420 break;
421 } else if ( cmd=="pause" ) {
422 pauseAfterErrors = true;
423 pauseAfterDone = true;
424 } else if ( cmd=="project") {
425 if ( i+1 > argc ) {
426 printf("das-project requires argument\n");
427 print_help();
428 return -1;
429 }
430 projectFile = argv[i+1];
431 i += 1;
432 } else if ( cmd=="-track-smart-ptr" ) {
433 // script will pick up next argument by itself
434 if ( i+1 > argc ) {

Callers

nothing calls this directly

Calls 15

setCommandLineArgumentsFunction · 0.85
setDasRootFunction · 0.85
requireFunction · 0.85
InitializeFunction · 0.85
getDasRootFunction · 0.85
ShutdownFunction · 0.85
das_aot_mainFunction · 0.70
use_utf8Function · 0.70
print_helpFunction · 0.70
replaceFunction · 0.70
compile_and_runFunction · 0.70

Tested by

no test coverage detected