1 /*-------------------------------------------------------------------------
5 * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
6 * Portions Copyright (c) 1994, Regents of the University of California
10 *-------------------------------------------------------------------------
15 #include "nodes/plannodes.h"
16 #include "nodes/relation.h"
18 extern void SS_process_ctes(PlannerInfo
*root
);
19 extern bool convert_ANY_sublink_to_join(PlannerInfo
*root
, SubLink
*sublink
,
20 Relids available_rels
,
21 Node
**new_qual
, List
**fromlist
);
22 extern bool convert_EXISTS_sublink_to_join(PlannerInfo
*root
, SubLink
*sublink
,
24 Relids available_rels
,
25 Node
**new_qual
, List
**fromlist
);
26 extern Node
*SS_replace_correlation_vars(PlannerInfo
*root
, Node
*expr
);
27 extern Node
*SS_process_sublinks(PlannerInfo
*root
, Node
*expr
, bool isQual
);
28 extern void SS_finalize_plan(PlannerInfo
*root
, Plan
*plan
,
29 bool attach_initplans
);
30 extern Param
*SS_make_initplan_from_plan(PlannerInfo
*root
, Plan
*plan
,
31 Oid resulttype
, int32 resulttypmod
);
32 extern int SS_assign_worktable_param(PlannerInfo
*root
);
34 #endif /* SUBSELECT_H */