OSDN Git Service

Modify mcxt.h so that it doesn't pull in half of creation.
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 7 Mar 1999 23:03:32 +0000 (23:03 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 7 Mar 1999 23:03:32 +0000 (23:03 +0000)
src/backend/utils/hash/dynahash.c
src/include/nodes/memnodes.h
src/include/utils/mcxt.h

index f9d8712..dd601be 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * 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"
 #endif  /* !FRONTEND */
 #include          "utils/palloc.h"
+#include          "utils/memutils.h"
 
 /*
  * Fast arithmetic, relying on powers of 2,
index 0bd7f92..a44e1fb 100644 (file)
@@ -6,7 +6,7 @@
  *
  * 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;
  *       they are pointers to structures instead of the structures themselves.
@@ -60,7 +60,9 @@ typedef struct MemoryContextData
 {
        NodeTag         type;
        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
    for now -ay 10/94 */
@@ -71,9 +73,11 @@ typedef struct GlobalMemoryData
        AllocSetData setData;
        char       *name;
        OrderedElemData elemData;
-}                 *GlobalMemory;
+}                      GlobalMemoryData;
+
+/* utils/mcxt.h contains typedef struct GlobalMemoryData *GlobalMemory */
 
-typedef MemoryContext *PortalMemoryContext;
+typedef struct MemoryContextData *PortalMemoryContext;
 
 typedef struct PortalVariableMemoryData
 {
index 01ff7b7..6db5619 100644 (file)
@@ -6,14 +6,21 @@
  *
  * 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
 #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 TopMemoryContext;