
/*     
 *      FILE
 *     	pgmacs.l
 *     
 *      DESCRIPTION
 *     	Useful POSTGRES LISP macros
 *     
 *      NOTE
 *     	Much of the contents of tcop/create.l should be moved here.
 *      $Header: /usr/local/dev/postgres/mastertree/src/lib/C/RCS/pgmacs.notes,v 1.2 1989/09/05 17:15:04 mao Version_2 $
 */

/*    
 *    	Conditionals
 *    
 */

/*    
 *     as-block
 *    
 *    	macro to allow evaluation of expressions blocked by a begin and end
 *    
 */

/*  .. init-query-planner
 */
/*
defmacro (as_block,begin (end,rest,body)
*/

/*     	=====================
 *     	GENERAL C DEFINITIONS
 *     	=====================
 */

/*    
 *    	useful C constants
 *    
 */
/*
defvar (c_nil,0,"C (void *) NULL");
defvar (c_true,1,"C boolean true");
defvar (c_false,0,"C boolean false");
defvar (_newline_,ascii (newline));
defvar (_NOTICE_,0,"elog level: print notice message");
defvar (_FATAL_,1,"elog level: KILL backend");
defvar (_DEBUG_,-2,"elog level: print debug message");
defvar (_NOIND_,-3,"elog level: indent oddly");
*/
/*     	==================
 *     	TRANSACTION SYSTEM
 *     	==================
 */

/*    
 *     as-transaction-command
 *    
 *    	evalutes expressions in a transaction command
 *    
 */
/*
defmacro (as_transaction_command,rest (body),as_block (startxcommand (),commitxcommand (),body));
*/
/*    
 *    	macro to cause evaluation of expressions viewing own modification
 *    
 *    XXX This is likely to never be needed.
 *  (defmacro with-self-view (&rest body)
 *    `(as-block (setheapoverride c-true) (setheapoverride c-false) ,@body))
 */

/*     	==========================
 *     	C MEMORY MANAGEMENT SYSTEM
 *     	==========================
 */
