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 418 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().

419 {
420  /*
421  * A scratch context might never be needed in a given plpython procedure,
422  * so allocate it on first request.
423  */
424  if (context->scratch_ctx == NULL)
425  context->scratch_ctx =
427  "PL/Python scratch context",
429  return context->scratch_ctx;
430 }
MemoryContext scratch_ctx
Definition: plpy_main.h:21
MemoryContext TopTransactionContext
Definition: mcxt.c:48
#define ALLOCSET_DEFAULT_SIZES
Definition: memutils.h:197
#define AllocSetContextCreate(parent, name, allocparams)
Definition: memutils.h:165

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().