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
 

Typedefs

typedef struct PLyExecutionContext PLyExecutionContext
 

Functions

PLyExecutionContextPLy_current_execution_context (void)
 
MemoryContext PLy_get_scratch_context (PLyExecutionContext *context)
 

Variables

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 423 of file plpy_main.c.

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

Referenced by PLy_input_convert(), and PLy_input_from_tuple().

424 {
425  /*
426  * A scratch context might never be needed in a given plpython procedure,
427  * so allocate it on first request.
428  */
429  if (context->scratch_ctx == NULL)
430  context->scratch_ctx =
432  "PL/Python scratch context",
434  return context->scratch_ctx;
435 }
MemoryContext scratch_ctx
Definition: plpy_main.h:21
MemoryContext TopTransactionContext
Definition: mcxt.c:49
#define ALLOCSET_DEFAULT_SIZES
Definition: memutils.h:192
#define AllocSetContextCreate(parent, name, allocparams)
Definition: memutils.h:170

Variable Documentation

◆ PLy_interp_globals

PyObject* PLy_interp_globals

Definition at line 71 of file plpy_main.c.

Referenced by PLy_init_interp(), and PLy_procedure_compile().