head     1.6;
branch   ;
access   ;
symbols  Version_2_1:1.6 Version_2:1.4 C_Demo_1:1.4;
locks    ; strict;
comment  @ * @;


1.6
date     90.08.18.00.40.58;  author cimarron;  state Exp;
branches ;
next     1.5;

1.5
date     90.08.17.08.54.13;  author cimarron;  state Exp;
branches ;
next     1.4;

1.4
date     89.09.05.17.07.49;  author mao;  state Version_2;
branches ;
next     1.3;

1.3
date     89.04.12.19.54.53;  author dillon;  state Exp;
branches ;
next     1.2;

1.2
date     89.03.22.17.33.32;  author muir;  state Stab;
branches ;
next     1.1;

1.1
date     89.01.17.05.54.24;  author cimarron;  state Exp;
branches ;
next     ;


desc
@@


1.6
log
@eliminated less significant .h files
@
text
@/*
 * linval.h --
 *	POSTGRES local cache invalidation definitions.
 *
 * Identification:
 *	$Header: RCS/linval.h,v 1.5 90/08/17 08:54:13 cimarron Exp Locker: cimarron $
 */

#ifndef	LInvalIncluded	/* Include this file only once */
#define LInvalIncluded	1

#include "tmp/postgres.h"

typedef struct InvalidationUserData {
	struct InvalidationUserData	*dataP[1];	/* VARIABLE LENGTH */
} InvalidationUserData;	/* VARIABLE LENGTH STRUCTURE */

typedef struct InvalidationEntryData {
	InvalidationUserData	*nextP;
	InvalidationUserData	userData;	/* VARIABLE LENGTH ARRAY */
} InvalidationEntryData;	/* VARIABLE LENGTH STRUCTURE */

typedef Pointer InvalidationEntry;

typedef InvalidationEntry	LocalInvalid;

#define EmptyLocalInvalid	NULL

/*
 * InvalididationEntryAllocate --
 *	Allocates an invalidation entry.
 */
InvalidationEntry
InvalidationEntryAllocate ARGS((
	uint16	size
));

/*
 * LocalInvalidRegister --
 *	Returns a new local cache invalidation state containing a new entry.
 */
extern
LocalInvalid
LocalInvalidRegister ARGS((
	LocalInvalid		invalid,
	InvalidationEntry	entry
));

/*
 * LocalInvalidInvalidate --
 *	Processes, then frees all entries in a local cache invalidation state.
 */
extern
void
LocalInvalidInvalidate ARGS((
	LocalInvalid	invalid,
	void		(*function)(
		InvalidationEntry	entry
	)
));

#endif	/* !defined(LInvalIncluded) */
@


1.5
log
@added pathnames to #include statements
@
text
@d6 1
a6 1
 *	$Header: RCS/linval.h,v 1.4 89/09/05 17:07:49 mao Version_2 Locker: cimarron $
d12 1
a12 1
#include "tmp/c.h"
@


1.4
log
@Working version of C-only demo
@
text
@d6 1
a6 1
 *	$Header: /usr6/postgres/mao/postgres/src/lib/H/RCS/linval.h,v 1.3 89/04/12 19:54:53 dillon Exp $
d12 1
a12 3
#ifndef C_H
#include "c.h"
#endif
@


1.3
log
@c.h
@
text
@d6 1
a6 1
 *	$Header: /usr6/postgres/dillon/ptree/src/lib/H/RCS/linval.h,v 1.2 89/03/22 17:33:32 muir Stab $
@


1.2
log
@copyright removal
@
text
@d6 1
a6 1
 *	$Header: /usr6/postgres/muir/postgres/src/lib/H/RCS/linval.h,v 1.1 89/01/17 05:54:24 cimarron Exp $
d12 1
d14 1
@


1.1
log
@Initial revision
@
text
@a0 27

; /*
; * 
; * POSTGRES Data Base Management System
; * 
; * Copyright (c) 1988 Regents of the University of California
; * 
; * Permission to use, copy, modify, and distribute this software and its
; * documentation for educational, research, and non-profit purposes and
; * without fee is hereby granted, provided that the above copyright
; * notice appear in all copies and that both that copyright notice and
; * this permission notice appear in supporting documentation, and that
; * the name of the University of California not be used in advertising
; * or publicity pertaining to distribution of the software without
; * specific, written prior permission.  Permission to incorporate this
; * software into commercial products can be obtained from the Campus
; * Software Office, 295 Evans Hall, University of California, Berkeley,
; * Ca., 94720 provided only that the the requestor give the University
; * of California a free licence to any derived software for educational
; * and research purposes.  The University of California makes no
; * representations about the suitability of this software for any
; * purpose.  It is provided "as is" without express or implied warranty.
; * 
; */



d6 1
a6 1
 *	$Header: linval.h,v 1.1 88/11/11 16:37:13 postgres Exp $
@
