83 if (glob->extension_state == NULL)
106 glob->extension_state[extension_id] = opaque;
116 Assert(extension_id >= 0);
119 if (
root->extension_state == NULL)
123 root->extension_state_allocated =
125 sz =
root->extension_state_allocated *
sizeof(
void *);
130 if (extension_id >=
root->extension_state_allocated)
136 root->extension_state_allocated,
i);
137 root->extension_state_allocated =
i;
140 root->extension_state[extension_id] = opaque;
150 Assert(extension_id >= 0);
153 if (rel->extension_state == NULL)
176 rel->extension_state[extension_id] = opaque;
static const char ** PlannerExtensionNameArray
static int PlannerExtensionNamesAssigned
void SetRelOptInfoExtensionState(RelOptInfo *rel, int extension_id, void *opaque)
void SetPlannerInfoExtensionState(PlannerInfo *root, int extension_id, void *opaque)
int GetPlannerExtensionId(const char *extension_name)
static int PlannerExtensionNamesAllocated
void SetPlannerGlobalExtensionState(PlannerGlobal *glob, int extension_id, void *opaque)
Assert(PointerIsAligned(start, uint64))
void * MemoryContextAlloc(MemoryContext context, Size size)
void * MemoryContextAllocZero(MemoryContext context, Size size)
void * repalloc(void *pointer, Size size)
MemoryContext TopMemoryContext
MemoryContext GetMemoryChunkContext(void *pointer)
#define repalloc0_array(pointer, type, oldcount, count)
static uint32 pg_nextpower2_32(uint32 num)
int extension_state_allocated
int extension_state_allocated