Lines Matching defs:node

10 make_const(expr_ty node, PyObject *val, PyArena *arena)
25 node->kind = Constant_kind;
26 node->v.Constant.kind = NULL;
27 node->v.Constant.value = val;
57 fold_unaryop(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
59 expr_ty arg = node->v.UnaryOp.operand;
63 if (node->v.UnaryOp.op == Not && arg->kind == Compare_kind &&
98 COPY_NODE(node, arg);
112 PyObject *newval = ops[node->v.UnaryOp.op](arg->v.Constant.value);
113 return make_const(node, newval, arena);
393 optimize_format(expr_ty node, PyObject *fmt, asdl_expr_seq *elts, PyArena *arena)
433 node->lineno, node->col_offset,
434 node->end_lineno, node->end_col_offset,
439 COPY_NODE(node, res);
445 fold_binop(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
448 lhs = node->v.BinOp.left;
449 rhs = node->v.BinOp.right;
455 if (node->v.BinOp.op == Mod &&
460 return optimize_format(node, lv, rhs->v.Tuple.elts, arena);
470 switch (node->v.BinOp.op) {
514 return make_const(node, newval, arena);
542 fold_tuple(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
546 if (node->v.Tuple.ctx != Load)
549 newval = make_const_tuple(node->v.Tuple.elts);
550 return make_const(node, newval, arena);
554 fold_subscr(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
559 arg = node->v.Subscript.value;
560 idx = node->v.Subscript.slice;
561 if (node->v.Subscript.ctx != Load ||
569 return make_const(node, newval, arena);
608 fold_compare(expr_ty node, PyArena *arena, _PyASTOptimizeState *state)
614 ops = node->v.Compare.ops;
615 args = node->v.Compare.comparators;