From 4fb67201414169a2687f41c4056b2e284b4938cb Mon Sep 17 00:00:00 2001 From: Sebastiano Tronto Date: Thu, 11 Nov 2021 22:05:00 +0100 Subject: Removed old files --- old/2021-11-10-beforeremovingchecker/shell.c | 99 ---------------------------- 1 file changed, 99 deletions(-) delete mode 100644 old/2021-11-10-beforeremovingchecker/shell.c (limited to 'old/2021-11-10-beforeremovingchecker/shell.c') diff --git a/old/2021-11-10-beforeremovingchecker/shell.c b/old/2021-11-10-beforeremovingchecker/shell.c deleted file mode 100644 index e591faa..0000000 --- a/old/2021-11-10-beforeremovingchecker/shell.c +++ /dev/null @@ -1,99 +0,0 @@ -#include "shell.h" - -static void cleanwhitespaces(char *line); -static int parseline(char *line, char **v); - -static void -cleanwhitespaces(char *line) -{ - char *i; - - for (i = line; *i != 0; i++) - if (*i == '\t' || *i == '\n') - *i = ' '; -} - -/* This function assumes that **v is large enough */ -static int -parseline(char *line, char **v) -{ - char *t; - int n = 0; - - cleanwhitespaces(line); - - for (t = strtok(line, " "); t != NULL; t = strtok(NULL, " ")) - strcpy(v[n++], t); - - return n; -} - -void -exec_args(int c, char **v) -{ - int i; - Command *cmd = NULL; - CommandArgs *args; - - for (i = 0; i < NCOMMANDS; i++) - if (commands[i] != NULL && !strcmp(v[0], commands[i]->name)) - cmd = commands[i]; - - if (cmd == NULL) { - fprintf(stderr, "%s: command not found\n", v[0]); - return; - } - - args = cmd->parse_args(c-1, &v[1]); - if (!args->success) { - fprintf(stderr, "usage: %s\n", cmd->usage); - return; - } - - cmd->exec(args); - free_args(args); -} - -void -launch() -{ - int i, shell_argc; - char line[MAXLINELEN], **shell_argv; - - shell_argv = malloc(MAXNTOKENS * sizeof(char *)); - for (i = 0; i < MAXNTOKENS; i++) - shell_argv[i] = malloc((MAXTOKENLEN+1) * sizeof(char)); - - fprintf(stderr, "Welcome to Nissy 2.0 (demo version).\n"); - fprintf(stderr, "Limited commands available. "); - fprintf(stderr, "Type 'help' for a list.\n"); - - while (true) { - fprintf(stderr, "nissy-# "); - if (fgets(line, MAXLINELEN, stdin) == NULL) - break; - shell_argc = parseline(line, shell_argv); - exec_args(shell_argc, shell_argv); - } - - for (i = 0; i < MAXNTOKENS; i++) - free(shell_argv[i]); - free(shell_argv); -} - -/* We will have our main() here, for now */ -int -main(int argc, char *argv[]) -{ - init_moves(); - init_trans(); - init_coord(); - init_symcoord(); - - if (argc > 1) - exec_args(argc-1, &argv[1]); - else - launch(); - - return 0; -} -- cgit v1.3