Lines Matching refs:op

129 #define WHOLEWORD(op)                           \
130 (op->precedence == 0 \
131 ? (! (op->type & MPEXPR_TYPE_OPERATOR)) \
132 : (op->type & MPEXPR_TYPE_WHOLEWORD))
139 __gmp_const struct mpexpr_operator_t *op, *op_found;
166 for (op = p->table; op->name != NULL; op++)
168 if (op->type == MPEXPR_TYPE_NEW_TABLE)
171 op = (struct mpexpr_operator_t *) op->name - 1;
175 oplen = strlen (op->name);
176 if (! ((WHOLEWORD (op) ? wlen == oplen : p->elen >= oplen)
177 && memcmp (p->e, op->name, oplen) == 0))
189 || (op->type & MPEXPR_TYPE_PREFIX) != prefix))
194 op_found = op;
277 given number of args ready. Local variable "op" is used in case opptr is
281 __gmp_const struct mpexpr_operator_t *op = opptr; \
287 cp->op = op; \
306 p->control_stack[i].op->name, \
381 CP->op = &operator_done;
421 TRACE (printf ("open paren for function \"%s\"\n", CP->op->name));
423 if ((CP->op->type & MPEXPR_TYPE_MASK_ARGCOUNT) == MPEXPR_TYPE_NARY(0))
457 if (PRECEDENCE_TEST_REDUCE (p->token_op->precedence, CP->op->precedence,
458 p->token_op->type, CP->op->type))
462 p->token_op->precedence, CP->op->precedence,
471 if (CP->op->precedence != 0)
475 CP->op->name, CP->argcount));
481 if (IS_PAIRWISE (CP->op->type) && CP->argcount >= 2)
485 CONTROL_PUSH (CP->op, 2);
516 CP->op->name, CP->op->type));
537 p->control_top, CP->op->name, CP->op->type, CP->argcount));
540 CP->op->type & MPEXPR_TYPE_MASK_ARGCOUNT));
541 switch (CP->op->type & MPEXPR_TYPE_MASK_ARGCOUNT) {
548 switch (CP->op->type & MPEXPR_TYPE_MASK_ARGSTYLE) {
550 (* (mpexpr_fun_0ary_t) CP->op->fun) (sp);
553 (*p->mpX_set_si) (sp, (long) (* (mpexpr_fun_i_0ary_t) CP->op->fun) ());
568 switch (CP->op->type & MPEXPR_TYPE_MASK_SPECIAL) {
580 (sp, (long) ((* (mpexpr_fun_i_unary_t) CP->op->fun) (sp) == 0));
585 if (CP->op->type == MPEXPR_TYPE_OPENPAREN)
591 if (CP->op->precedence == 0)
600 CP->op->type & MPEXPR_TYPE_MASK_SPECIAL));
604 switch (CP->op->type & MPEXPR_TYPE_MASK_ARGSTYLE) {
606 (* (mpexpr_fun_unary_t) CP->op->fun) (sp, sp);
610 (* (mpexpr_fun_unary_ui_t) CP->op->fun)
615 (sp, (long) (* (mpexpr_fun_i_unary_t) CP->op->fun) (sp));
621 (long) (* (mpexpr_fun_i_unary_ui_t) CP->op->fun)
636 if ((CP->op->type & MPEXPR_TYPE_PAIRWISE)
637 && CP->op->precedence == 0
647 if (CP->op->type & MPEXPR_TYPE_MASK_CMP)
649 int type = CP->op->type;
650 int cmp = (* (mpexpr_fun_i_binary_t) CP->op->fun)
661 switch (CP->op->type & MPEXPR_TYPE_MASK_SPECIAL) {
672 if (CP->op->type != MPEXPR_TYPE_QUESTION)
682 (sp, (* (mpexpr_fun_i_unary_t) CP->op->fun) (sp)
691 ((* (mpexpr_fun_i_unary_t) CP->op->fun) (sp)
692 && (* (mpexpr_fun_i_unary_t) CP->op->fun) (sp+1)));
700 ((* (mpexpr_fun_i_unary_t) CP->op->fun) (sp)
701 || (* (mpexpr_fun_i_unary_t) CP->op->fun) (sp+1)));
706 if ((* (mpexpr_fun_i_binary_t) CP->op->fun) (sp, sp+1) < 0)
711 if ((* (mpexpr_fun_i_binary_t) CP->op->fun) (sp, sp+1) > 0)
720 switch (CP->op->type & MPEXPR_TYPE_MASK_ARGSTYLE) {
722 (* (mpexpr_fun_binary_t) CP->op->fun) (sp, sp, sp+1);
726 (* (mpexpr_fun_binary_ui_t) CP->op->fun)
732 (long) (* (mpexpr_fun_i_binary_t) CP->op->fun) (sp, sp+1));
738 (long) (* (mpexpr_fun_i_binary_ui_t) CP->op->fun)
759 switch (CP->op->type & MPEXPR_TYPE_MASK_ARGSTYLE) {
761 (* (mpexpr_fun_ternary_t) CP->op->fun) (sp, sp, sp+1, sp+2);
765 (* (mpexpr_fun_ternary_ui_t) CP->op->fun)
771 (long) (* (mpexpr_fun_i_ternary_t) CP->op->fun)
778 (long) (* (mpexpr_fun_i_ternary_ui_t) CP->op->fun)
789 TRACE (printf ("unrecognised operator type: 0x%X\n", CP->op->type));