/*
** Copyright (c) Massachusetts Institute of Technology 1994-1998.
**          All Rights Reserved.
**          Unpublished rights reserved under the copyright laws of
**          the United States.
**
** THIS MATERIAL IS PROVIDED AS IS, WITH ABSOLUTELY NO WARRANTY EXPRESSED
** OR IMPLIED.  ANY USE IS AT YOUR OWN RISK.
**
** This code is distributed freely and may be used freely under the 
** following conditions:
**
**     1. This notice may not be removed or altered.
**
**     2. Works derived from this code are not distributed for
**        commercial gain without explicit permission from MIT 
**        (for permission contact lclint-request@sds.lcs.mit.edu).
*/
/*
** lh.h
*/

extern void lhCleanup (void) /*@modifies internalState, fileSystem@*/ ;
extern void lhIncludeBool (void) /*@modifies internalState@*/ ;
extern void lhInit (tsource *p_f) /*@modifies internalState, fileSystem@*/ ;
extern void lhOutLine (/*@only@*/ cstring p_s) /*@modifies internalState@*/ ;
extern void lhExternals (interfaceNodeList p_x) /*@modifies internalState@*/ ;

extern  cstring 
  lhVarDecl (lclTypeSpecNode p_lclTypeSpec, initDeclNodeList p_initDecls, 
	     qualifierKind p_qualifier); 
extern cstring lhType (typeNode) ;
extern cstring 
  lhFunction (lclTypeSpecNode p_lclTypeSpec, declaratorNode p_declarator);
extern void lhForwardStruct (ltoken p_t) /*@modifies internalState@*/ ;
extern void lhForwardUnion (ltoken p_t) /*@modifies internalState@*/ ;
