Fix obsolete comment regarding FSM truncation.
[PostgreSQL.git] / src / include / commands / explain.h
blob7fd4ab9c7fdb47df395f7bb6e3cafbec8d3ea5b3
1 /*-------------------------------------------------------------------------
3 * explain.h
4 * prototypes for explain.c
6 * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994-5, Regents of the University of California
9 * $PostgreSQL$
11 *-------------------------------------------------------------------------
13 #ifndef EXPLAIN_H
14 #define EXPLAIN_H
16 #include "executor/executor.h"
18 /* Hook for plugins to get control in ExplainOneQuery() */
19 typedef void (*ExplainOneQuery_hook_type) (Query *query,
20 ExplainStmt *stmt,
21 const char *queryString,
22 ParamListInfo params,
23 TupOutputState *tstate);
24 extern PGDLLIMPORT ExplainOneQuery_hook_type ExplainOneQuery_hook;
26 /* Hook for plugins to get control in explain_get_index_name() */
27 typedef const char *(*explain_get_index_name_hook_type) (Oid indexId);
28 extern PGDLLIMPORT explain_get_index_name_hook_type explain_get_index_name_hook;
31 extern void ExplainQuery(ExplainStmt *stmt, const char *queryString,
32 ParamListInfo params, DestReceiver *dest);
34 extern TupleDesc ExplainResultDesc(ExplainStmt *stmt);
36 extern void ExplainOneUtility(Node *utilityStmt, ExplainStmt *stmt,
37 const char *queryString,
38 ParamListInfo params,
39 TupOutputState *tstate);
41 extern void ExplainOnePlan(PlannedStmt *plannedstmt, ParamListInfo params,
42 ExplainStmt *stmt, TupOutputState *tstate);
44 extern void ExplainPrintPlan(StringInfo str, QueryDesc *queryDesc,
45 bool analyze, bool verbose);
47 #endif /* EXPLAIN_H */