Lines Matching refs:iop
914 struct ioword *iop = alloc(sizeof(struct ioword), ATEMP);
917 iop->unit = c == '<' ? 0 : 1;
918 else for (iop->unit = 0, c2 = 0; c2 < Xlength(ws, wp); c2 += 2) {
923 iop->unit = (iop->unit * 10) + dp[c2 + 1] - '0';
926 if (iop->unit >= FDBASE)
935 iop->flag = IOBASH;
937 iop->flag = 0;
942 iop->flag |= c == c2 ?
944 if (iop->flag == IOHERE) {
946 iop->flag |= IOSKIP;
949 iop->flag |= IOHERESTR;
952 iop->flag |= IONDELIM;
955 iop->flag |= IODUP | (c == '<' ? IORDUP : 0);
957 iop->flag |= c == '>' ? IOWRITE : IOREAD;
959 iop->flag |= IOCLOB;
964 iop->name = NULL;
965 iop->delim = NULL;
966 iop->heredoc = NULL;
969 yylval.iop = iop;
972 afree(iop, ATEMP);
1126 readhere(struct ioword *iop)
1134 if (iop->flag & IOHERESTR) {
1136 iop->heredoc = xp = evalstr(iop->delim, DOBLANK);
1143 eof = iop->flag & IONDELIM ? "<<" : evalstr(iop->delim, 0);
1145 if (!(iop->flag & IOEVAL))
1154 if (iop->flag & IOSKIP) {
1214 iop->heredoc = Xclose(xs, xp);
1216 if (!(iop->flag & IOEVAL))