Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Postgres/src/include/executor/   (Postgres Database Version 18.4©)  Datei vom 11.4.2026 mit Größe 2 kB image not shown  

Quelle  execdesc.h

  Sprache: C
 

/*-------------------------------------------------------------------------
 *
 * execdesc.h
 *   plan and query descriptor accessor macros used by the executor
 *   and related modules.
 *
 *
 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
 * Portions Copyright (c) 1994, Regents of the University of California
 *
 * src/include/executor/execdesc.h
 *
 *-------------------------------------------------------------------------
 */

#ifndef EXECDESC_H
#define EXECDESC_H

#include "nodes/execnodes.h"
#include "tcop/dest.h"


/* ----------------
 *  query descriptor:
 *
 * a QueryDesc encapsulates everything that the executor
 * needs to execute the query.
 *
 * For the convenience of SQL-language functions, we also support QueryDescs
 * containing utility statements; these must not be passed to the executor
 * however.
 * ---------------------
 */

typedef struct QueryDesc
{
 /* These fields are provided by CreateQueryDesc */
 CmdType  operation;  /* CMD_SELECT, CMD_UPDATE, etc. */
 PlannedStmt *plannedstmt; /* planner's output (could be utility, too) */
 const char *sourceText;  /* source text of the query */
 Snapshot snapshot;  /* snapshot to use for query */
 Snapshot crosscheck_snapshot; /* crosscheck for RI update/delete */
 DestReceiver *dest;   /* the destination for tuple output */
 ParamListInfo params;  /* param values being passed in */
 QueryEnvironment *queryEnv; /* query environment passed in */
 int   instrument_options; /* OR of InstrumentOption flags */

 /* These fields are set by ExecutorStart */
 TupleDesc tupDesc;  /* descriptor for result tuples */
 EState    *estate;   /* executor's query-wide state */
 PlanState  *planstate;  /* tree of per-plan-node state */

 /* This field is set by ExecutePlan */
 bool  already_executed; /* true if previously executed */

 /* This is always set NULL by the core system, but plugins can change it */
 struct Instrumentation *totaltime; /* total time spent in ExecutorRun */
} QueryDesc;

/* in pquery.c */
extern QueryDesc *CreateQueryDesc(PlannedStmt *plannedstmt,
          const char *sourceText,
          Snapshot snapshot,
          Snapshot crosscheck_snapshot,
          DestReceiver *dest,
          ParamListInfo params,
          QueryEnvironment *queryEnv,
          int instrument_options);

extern void FreeQueryDesc(QueryDesc *qdesc);

#endif       /* EXECDESC_H  */

Messung V0.5 in Prozent
C=92 H=96 G=93

¤ Dauer der Verarbeitung: 0.12 Sekunden  (vorverarbeitet am  2026-08-08) ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

PVS Prover

Isabelle Prover

NIST Cobol Testsuite

Cephes Mathematical Library

Vienna Development Method

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.