Lines Matching refs:cmdp
402 struct tblentry *cmdp; in hashcmd() local
434 for (cmdp = *pp ; cmdp ; cmdp = cmdp->next) { in hashcmd()
435 switch (cmdp->cmdtype) { in hashcmd()
456 cmdp->cmdtype == CMDNORMAL) in hashcmd()
457 printentry(cmdp, verbose); in hashcmd()
469 if ((cmdp = cmdlookup(name, 0)) != NULL) { in hashcmd()
470 switch (cmdp->cmdtype) { in hashcmd()
497 cmdp = cmdlookup(name, 0); in hashcmd()
498 if (cmdp != NULL) in hashcmd()
499 printentry(cmdp, verbose); in hashcmd()
508 printentry(struct tblentry *cmdp, int verbose) in printentry() argument
514 switch (cmdp->cmdtype) { in printentry()
516 idx = cmdp->param.index; in printentry()
519 name = padvance(&path, cmdp->cmdname, 1); in printentry()
524 cmdp->param.index); in printentry()
534 out1fmt("%s", cmdp->cmdname); in printentry()
539 out1fmt("%s", cmdp->cmdname); in printentry()
544 commandtext(&ps, getfuncnode(cmdp->param.func)); in printentry()
553 cmdp->cmdname, cmdp->cmdtype); in printentry()
555 if (cmdp->rehash) in printentry()
570 struct tblentry *cmdp, loc_cmd; in find_command() local
608 if ((cmdp = cmdlookup(name, 0)) != NULL) { in find_command()
609 switch (cmdp->cmdtype) { in find_command()
612 cmdp = NULL; in find_command()
616 cmdp = NULL; in find_command()
620 cmdp = NULL; in find_command()
624 if (cmdp != NULL && cmdp->rehash == 0) in find_command()
635 if (cmdp) { /* doing a rehash */ in find_command()
636 if (cmdp->cmdtype == CMDBUILTIN) in find_command()
639 prev = cmdp->param.index; in find_command()
688 if ((cmdp = cmdlookup(name, 0)) == NULL || in find_command()
689 cmdp->cmdtype != CMDFUNCTION) in find_command()
717 cmdp = &loc_cmd; in find_command()
719 cmdp = cmdlookup(name, 1); in find_command()
721 if (cmdp->cmdtype == CMDFUNCTION) in find_command()
722 cmdp = &loc_cmd; in find_command()
724 cmdp->cmdtype = CMDNORMAL; in find_command()
725 cmdp->param.index = idx; in find_command()
731 if (cmdp) in find_command()
742 cmdp = &loc_cmd; in find_command()
744 cmdp = cmdlookup(name, 1); in find_command()
745 if (cmdp->cmdtype == CMDFUNCTION) in find_command()
747 cmdp = &loc_cmd; in find_command()
748 cmdp->cmdtype = CMDBUILTIN; in find_command()
749 cmdp->param.bltin = bltin; in find_command()
752 if (cmdp) { in find_command()
753 cmdp->rehash = 0; in find_command()
754 entry->cmdtype = cmdp->cmdtype; in find_command()
755 entry->lineno = cmdp->lineno; in find_command()
756 entry->lno_frel = cmdp->fn_ln1; in find_command()
757 entry->u = cmdp->param; in find_command()
806 struct tblentry *cmdp; in hash_special_builtins() local
809 cmdp = cmdlookup(bp->name, 1); in hash_special_builtins()
810 cmdp->cmdtype = CMDSPLBLTIN; in hash_special_builtins()
811 cmdp->param.bltin = bp->builtin; in hash_special_builtins()
826 struct tblentry *cmdp; in hashcd() local
829 for (cmdp = *pp ; cmdp ; cmdp = cmdp->next) { in hashcd()
830 if (cmdp->cmdtype == CMDNORMAL in hashcd()
831 || (cmdp->cmdtype == CMDBUILTIN && builtinloc >= 0)) in hashcd()
832 cmdp->rehash = 1; in hashcd()
895 struct tblentry *cmdp; in clearcmdentry() local
900 while ((cmdp = *pp) != NULL) { in clearcmdentry()
901 if ((cmdp->cmdtype == CMDNORMAL && in clearcmdentry()
902 cmdp->param.index >= firstchange) in clearcmdentry()
903 || (cmdp->cmdtype == CMDBUILTIN && in clearcmdentry()
905 *pp = cmdp->next; in clearcmdentry()
906 ckfree(cmdp); in clearcmdentry()
908 pp = &cmdp->next; in clearcmdentry()
938 struct tblentry *cmdp; in deletefuncs() local
943 while ((cmdp = *pp) != NULL) { in deletefuncs()
944 if (cmdp->cmdtype == CMDFUNCTION) { in deletefuncs()
945 *pp = cmdp->next; in deletefuncs()
946 freefunc(cmdp->param.func); in deletefuncs()
947 ckfree(cmdp); in deletefuncs()
949 pp = &cmdp->next; in deletefuncs()
974 struct tblentry *cmdp; in cmdlookup() local
983 for (cmdp = *pp ; cmdp ; cmdp = cmdp->next) { in cmdlookup()
984 if (equal(cmdp->cmdname, name)) in cmdlookup()
986 pp = &cmdp->next; in cmdlookup()
988 if (add && cmdp == NULL) { in cmdlookup()
990 cmdp = *pp = ckmalloc(sizeof (struct tblentry) - ARB in cmdlookup()
992 cmdp->next = NULL; in cmdlookup()
993 cmdp->cmdtype = CMDUNKNOWN; in cmdlookup()
994 cmdp->rehash = 0; in cmdlookup()
995 strcpy(cmdp->cmdname, name); in cmdlookup()
999 return cmdp; in cmdlookup()
1009 struct tblentry *cmdp; in delete_cmd_entry() local
1012 cmdp = *lastcmdentry; in delete_cmd_entry()
1013 *lastcmdentry = cmdp->next; in delete_cmd_entry()
1014 ckfree(cmdp); in delete_cmd_entry()
1024 struct tblentry *cmdp = cmdlookup(name, 0); in getcmdentry() local
1026 if (cmdp) { in getcmdentry()
1027 entry->u = cmdp->param; in getcmdentry()
1028 entry->cmdtype = cmdp->cmdtype; in getcmdentry()
1045 struct tblentry *cmdp; in addcmdentry() local
1048 cmdp = cmdlookup(name, 1); in addcmdentry()
1049 if (cmdp->cmdtype != CMDSPLBLTIN) { in addcmdentry()
1050 if (cmdp->cmdtype == CMDFUNCTION) in addcmdentry()
1051 unreffunc(cmdp->param.func); in addcmdentry()
1052 cmdp->cmdtype = entry->cmdtype; in addcmdentry()
1053 cmdp->lineno = entry->lineno; in addcmdentry()
1054 cmdp->fn_ln1 = entry->lno_frel; in addcmdentry()
1055 cmdp->param = entry->u; in addcmdentry()
1087 struct tblentry *cmdp; in unsetfunc() local
1089 if ((cmdp = cmdlookup(name, 0)) != NULL && in unsetfunc()
1090 cmdp->cmdtype == CMDFUNCTION) { in unsetfunc()
1091 unreffunc(cmdp->param.func); in unsetfunc()
1106 struct tblentry *cmdp; in typecmd() local
1169 if (!p_flag && (cmdp = cmdlookup(arg, 0)) != NULL) { in typecmd()
1170 entry.cmdtype = cmdp->cmdtype; in typecmd()
1171 entry.u = cmdp->param; in typecmd()
1173 cmdp = NULL; in typecmd()
1194 cmdp ? " a tracked alias for" : ""); in typecmd()