frontend: split interactive and non-interactive modes into separate commands

This commit is contained in:
2024-11-18 09:55:02 +00:00
parent d5c86c4eea
commit 29447bf5ec
3 changed files with 104 additions and 32 deletions

View File

@@ -2,38 +2,6 @@
#include <blue/cmd.h>
enum {
ARG_FILE
};
B_COMMAND(CMD_ROOT, B_COMMAND_INVALID_ID)
{
B_COMMAND_NAME("ivy");
B_COMMAND_DESC("evaluate an Ivy source file or Ivy object file.");
B_COMMAND_HELP_OPTION();
B_COMMAND_FLAGS(B_COMMAND_SHOW_HELP_BY_DEFAULT);
B_COMMAND_ARG(ARG_FILE)
{
B_ARG_NAME("file");
B_ARG_DESC("The file to execute.");
B_ARG_NR_VALUES(1);
}
B_COMMAND_USAGE()
{
B_COMMAND_USAGE_OPT_PLACEHOLDER();
B_COMMAND_USAGE_ARG(ARG_FILE);
}
B_COMMAND_USAGE()
{
B_COMMAND_USAGE_COMMAND_PLACEHOLDER();
B_COMMAND_USAGE_OPT_PLACEHOLDER();
B_COMMAND_USAGE_ARG_PLACEHOLDER();
}
}
int main(int argc, const char **argv)
{
return b_command_dispatch(CMD_ROOT, argc, argv);