PostgreSQL Source Code  git master
plpy_main.h File Reference
#include "plpy_procedure.h"
Include dependency graph for plpy_main.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  PLyExecutionContext


typedef struct PLyExecutionContext PLyExecutionContext


PLyExecutionContextPLy_current_execution_context (void)
MemoryContext PLy_get_scratch_context (PLyExecutionContext *context)


PyObject * PLy_interp_globals

Typedef Documentation

◆ PLyExecutionContext

Function Documentation

◆ PLy_current_execution_context()

PLyExecutionContext* PLy_current_execution_context ( void  )

◆ PLy_get_scratch_context()

MemoryContext PLy_get_scratch_context ( PLyExecutionContext context)

Definition at line 378 of file plpy_main.c.

379 {
380  /*
381  * A scratch context might never be needed in a given plpython procedure,
382  * so allocate it on first request.
383  */
384  if (context->scratch_ctx == NULL)
385  context->scratch_ctx =
387  "PL/Python scratch context",
389  return context->scratch_ctx;
390 }
MemoryContext TopTransactionContext
Definition: mcxt.c:53
#define AllocSetContextCreate
Definition: memutils.h:173
Definition: memutils.h:197
MemoryContext scratch_ctx
Definition: plpy_main.h:21

References ALLOCSET_DEFAULT_SIZES, AllocSetContextCreate, PLyExecutionContext::scratch_ctx, and TopTransactionContext.

Referenced by PLy_input_convert(), and PLy_input_from_tuple().

Variable Documentation

◆ PLy_interp_globals

PyObject* PLy_interp_globals

Definition at line 53 of file plpy_main.c.

Referenced by PLy_init_interp(), and PLy_procedure_compile().