/* $Header: /general/TFA/unclassified/src/utils/postgres-v3r1/src/lib/H/planner/RCS/createplan.h,v 1.11 1991/11/15 16:22:26 hong Exp $ */ extern Plan create_plan ARGS((Path best_path, List origtlist)); extern Scan create_scan_node ARGS((Path best_path, List tlist)); extern Join create_join_node ARGS((JoinPath best_path, List origtlist, List tlist)); extern SeqScan create_seqscan_node ARGS((Path best_path, LispValue tlist, LispValue scan_clauses)); extern IndexScan create_indexscan_node ARGS((IndexPath best_path, List tlist, List scan_clauses)); extern LispValue fix_indxqual_references ARGS((LispValue clause, Path index_path)); extern NestLoop create_nestloop_node ARGS((JoinPath best_path, List tlist, List clauses, Plan outer_node, List outer_tlist, Plan inner_node, List inner_tlist)); extern MergeJoin create_mergejoin_node ARGS((MergePath best_path, List tlist, List clauses, Plan outer_node, List outer_tlist, Plan inner_node, List inner_tlist)); extern LispValue switch_outer ARGS((LispValue clauses)); extern HashJoin create_hashjoin_node ARGS((HashPath best_path, List tlist, List clauses, Plan outer_node, List outer_tlist, Plan inner_node, List inner_tlist)); extern Temp make_temp ARGS((List tlist, List keys, List operators, Plan plan_node, int temptype)); extern List set_temp_tlist_operators ARGS((List tlist, List pathkeys, List operators)); extern SeqScan make_seqscan ARGS((List qptlist, List qpqual, Index scanrelid, Plan lefttree )); extern NestLoop make_nestloop ARGS((List qptlist, List qpqual, Plan lefttree, Plan righttree )); extern HashJoin make_hashjoin ARGS((LispValue tlist, LispValue qpqual, List hashclauses, Plan outer_node, Plan inner_node)); extern MergeJoin make_mergesort ARGS((LispValue tlist, LispValue qpqual, List mergeclauses, ObjectId opcode, LispValue rightorder, LispValue leftorder, Plan outer_node, Plan inner_node)); extern Hash make_hash ARGS((List tlist, Var hashkey, Plan inner_node)); extern Agg make_agg ARGS((List tlist, ObjectId tempid)); extern Sort make_sort ARGS((List tlist, ObjectId tempid, Plan inner_node, Count keycount)); extern Material make_material ARGS((List tlist, ObjectId tempid, Plan inner_node, Count keycount)); extern IndexScan make_indexscan ARGS((List qptlist, List qpqual, Index scanrelid, List indxid, List indxqual)); extern Unique make_unique ARGS ((List tlist, Plan plannode));