Modify mcxt.h so that it doesn't pull in half of creation.

This commit is contained in:
Tom Lane 1999-03-07 23:03:32 +00:00
parent dffb88b024
commit 86c2eadb18
3 changed files with 19 additions and 7 deletions

View File

@ -7,7 +7,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/utils/hash/dynahash.c,v 1.20 1999/03/06 21:17:56 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/utils/hash/dynahash.c,v 1.21 1999/03/07 23:03:32 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
@ -49,6 +49,7 @@
#include "utils/mcxt.h" #include "utils/mcxt.h"
#endif /* !FRONTEND */ #endif /* !FRONTEND */
#include "utils/palloc.h" #include "utils/palloc.h"
#include "utils/memutils.h"
/* /*
* Fast arithmetic, relying on powers of 2, * Fast arithmetic, relying on powers of 2,

View File

@ -6,7 +6,7 @@
* *
* Copyright (c) 1994, Regents of the University of California * Copyright (c) 1994, Regents of the University of California
* *
* $Id: memnodes.h,v 1.10 1999/02/13 23:21:38 momjian Exp $ * $Id: memnodes.h,v 1.11 1999/03/07 23:03:31 tgl Exp $
* *
* XXX the typedefs in this file are different from the other ???nodes.h; * XXX the typedefs in this file are different from the other ???nodes.h;
* they are pointers to structures instead of the structures themselves. * they are pointers to structures instead of the structures themselves.
@ -60,7 +60,9 @@ typedef struct MemoryContextData
{ {
NodeTag type; NodeTag type;
MemoryContextMethods method; MemoryContextMethods method;
} *MemoryContext; } MemoryContextData;
/* utils/mcxt.h contains typedef struct MemoryContextData *MemoryContext */
/* think about doing this right some time but we'll have explicit fields /* think about doing this right some time but we'll have explicit fields
for now -ay 10/94 */ for now -ay 10/94 */
@ -71,9 +73,11 @@ typedef struct GlobalMemoryData
AllocSetData setData; AllocSetData setData;
char *name; char *name;
OrderedElemData elemData; OrderedElemData elemData;
} *GlobalMemory; } GlobalMemoryData;
typedef MemoryContext *PortalMemoryContext; /* utils/mcxt.h contains typedef struct GlobalMemoryData *GlobalMemory */
typedef struct MemoryContextData *PortalMemoryContext;
typedef struct PortalVariableMemoryData typedef struct PortalVariableMemoryData
{ {

View File

@ -6,14 +6,21 @@
* *
* Copyright (c) 1994, Regents of the University of California * Copyright (c) 1994, Regents of the University of California
* *
* $Id: mcxt.h,v 1.12 1999/02/13 23:22:24 momjian Exp $ * $Id: mcxt.h,v 1.13 1999/03/07 23:03:31 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
#ifndef MCXT_H #ifndef MCXT_H
#define MCXT_H #define MCXT_H
#include <nodes/memnodes.h> /* These types are declared in nodes/memnodes.h, but most users of memory
* allocation should just treat them as abstract types, so we do not provide
* the struct contents here.
*/
typedef struct MemoryContextData *MemoryContext;
typedef struct GlobalMemoryData *GlobalMemory;
extern MemoryContext CurrentMemoryContext; extern MemoryContext CurrentMemoryContext;
extern MemoryContext TopMemoryContext; extern MemoryContext TopMemoryContext;