* Call ExecPrepareExpr() on each member of a list of Exprs, and return * a list of ExprStates. * * See ExecPrepareExpr() for details. */
| 829 | * See ExecPrepareExpr() for details. |
| 830 | */ |
| 831 | List * |
| 832 | ExecPrepareExprList(List *nodes, EState *estate) |
| 833 | { |
| 834 | List *result = NIL; |
| 835 | MemoryContext oldcontext; |
| 836 | ListCell *lc; |
| 837 | |
| 838 | /* Ensure that the list cell nodes are in the right context too */ |
| 839 | oldcontext = MemoryContextSwitchTo(estate->es_query_cxt); |
| 840 | |
| 841 | foreach(lc, nodes) |
| 842 | { |
| 843 | Expr *e = (Expr *) lfirst(lc); |
| 844 | |
| 845 | result = lappend(result, ExecPrepareExpr(e, estate)); |
| 846 | } |
| 847 | |
| 848 | MemoryContextSwitchTo(oldcontext); |
| 849 | |
| 850 | return result; |
| 851 | } |
| 852 | |
| 853 | /* |
| 854 | * ExecCheck - evaluate a check constraint |
no test coverage detected