diff options
Diffstat (limited to 'llvm/utils/Spiff/command.c')
-rw-r--r-- | llvm/utils/Spiff/command.c | 193 |
1 files changed, 0 insertions, 193 deletions
diff --git a/llvm/utils/Spiff/command.c b/llvm/utils/Spiff/command.c deleted file mode 100644 index 6c9da47ac9b..00000000000 --- a/llvm/utils/Spiff/command.c +++ /dev/null @@ -1,193 +0,0 @@ -/* Copyright (c) 1988 Bellcore -** All Rights Reserved -** Permission is granted to copy or use this program, EXCEPT that it -** may not be sold for profit, the copyright notice must be reproduced -** on copies, and credit should be given to Bellcore where it is due. -** BELLCORE MAKES NO WARRANTY AND ACCEPTS NO LIABILITY FOR THIS PROGRAM. -*/ - - -#ifndef lint -static char rcsid[]= "$Header$"; -#endif - - -#include "misc.h" -#include "tol.h" -#include "comment.h" -#include "command.h" -#include "strings.h" -#include "parse.h" - -/* -** storage for the string that signals an embedded command -*/ -static char _C_cmdword[Z_WORDLEN]; - -/* -** storage for the command script -*/ -static int _C_nextcmd = 0; -static char *_C_cmds[_C_CMDMAX]; - - -/* -** add a string to the command buffer -*/ -void -C_addcmd(str) -char *str; -{ - S_savestr(&_C_cmds[_C_nextcmd++],str); - return; -} - -/* -** execute a single command -*/ -static void -_C_do_a_cmd(str) -char *str; -{ - /* - ** place holder for the beginning of the string - */ - char *beginning = str; - - S_skipspace(&str); - - /* - ** set the command string to allow embedded commands - */ - if (!S_wordcmp(str,"command")) - { - S_nextword(&str); - if (strlen(str) >= Z_WORDLEN) - { - Z_fatal("command word is too long"); - } - S_wordcpy(_C_cmdword,str); - } - /* - ** set the tolerances - */ - else if (!S_wordcmp(str,"tol")) - { - S_nextword(&str); - T_tolline(str); - } - /* - ** add a comment specification - */ - else if (!S_wordcmp(str,"comment")) - { - S_nextword(&str); - if (strlen(str) >= Z_WORDLEN) - { - Z_fatal("command word is too long"); - } - W_addcom(str,0); - } - else if (!S_wordcmp(str,"nestcom")) - { - S_nextword(&str); - if (strlen(str) >= Z_WORDLEN) - { - Z_fatal("command word is too long"); - } - W_addcom(str,1); - } - /* - ** add a literal string specification - */ - else if (!S_wordcmp(str,"literal")) - { - S_nextword(&str); - if (strlen(str) >= Z_WORDLEN) - { - Z_fatal("command word is too long"); - } - W_addlit(str); - } - else if (!S_wordcmp(str,"resetcomments")) - { - W_clearcoms(); - } - else if (!S_wordcmp(str,"resetliterals")) - { - W_clearlits(); - } - else if (!S_wordcmp(str,"beginchar")) - { - S_nextword(&str); - W_setbolchar(*str); - } - else if (!S_wordcmp(str,"endchar")) - { - S_nextword(&str); - W_seteolchar(*str); - } - else if (!S_wordcmp(str,"addalpha")) - { - S_nextword(&str); - P_addalpha(str); - } - else if ((0 == strlen(str)) || !S_wordcmp(str,"rem") - || ('#' == *str)) - { - /* do nothing */ - } - else - { - (void) sprintf(Z_err_buf, - "don't understand command %s\n", - beginning); - Z_fatal(Z_err_buf); - } - return; -} - -/* -** execute the commands in the command buffer -*/ -void -C_docmds() -{ - int i; - for (i=0;i<_C_nextcmd;i++) - { - _C_do_a_cmd(_C_cmds[i]); - } - return; -} - -/* -** disable embedded command key word recognition -*/ -void -C_clear_cmd() -{ - _C_cmdword[0] = '\0'; - return; -} - -#define inline spiff_inline -int -C_is_cmd(inline) -char *inline; -{ - char *ptr; - /* - ** see if this is a command line - ** and if so, do the command right away - */ - if (('\0' != _C_cmdword[0]) && (!S_wordcmp(inline,_C_cmdword))) - { - ptr = inline; - S_nextword(&ptr); - _C_do_a_cmd(ptr); - return(1); - } - return(0); -} - |