/* ------------------------------------------------------------------------ */
/*                                                                          */
/* [hpat_int.h]               Language Interface                            */
/*                                                                          */
/* ------------------------------------------------------------------------ */

/* File generated by 'ctoh'. Don't change manually. */

#ifndef hpat_int_INCL
#define hpat_int_INCL


#include "ptm.h"
#include "gls.h"


#ifdef __cplusplus
extern "C" {
#endif


/* --------------------- symbol objects - init & quit --------------------- */

void hpat_initSymbols();               /*                                   */
void hpat_quitSymbols();               /*                                   */

/* -------------------------- Types & Constants --------------------------- */

AbstractType( hpat );

AbstractType( hpatHPatDoc );
AbstractType( hpatContent );

/* --------------------------- Access to Tokens --------------------------- */

c_bool Thpat_PatBgn(GLS_Tok x);        /*                                   */
c_bool Thpat_PatEnd(GLS_Tok x);        /*                                   */
c_bool Thpat_PatRef(GLS_Tok x);        /*                                   */
c_bool Thpat__other_(GLS_Tok x);       /*                                   */

/* --------------------------- Access to Terms ---------------------------- */

c_bool hpat_hpat(PT_Term x, hpat* x1);           /*                         */
c_bool hpat_HPatDoc(PT_Term x, hpatHPatDoc* x1); /*                         */
c_bool hpat_Content(PT_Term x, hpatContent* x1); /*                         */

/* --------------------------------- hpat --------------------------------- */

c_bool hpat_Start_HPatDoc(hpat x, hpatHPatDoc* x1)
#define hpat_Start_0   hpat_Start_HPatDoc
;


/* ------------------------------- HPatDoc -------------------------------- */

c_bool hpatHPatDoc_dfn(hpatHPatDoc x, GLS_Lst(hpatContent)* x1); /*         */

/* ------------------------------- Content -------------------------------- */

c_bool hpatContent_pat(hpatContent x, GLS_Tok* x1, GLS_Lst(hpatContent)* x2,
                       GLS_Tok* x3)
;

c_bool hpatContent_else(hpatContent x, GLS_Tok* x1); /*                     */
c_bool hpatContent_ref(hpatContent x, GLS_Tok* x1);  /*                     */


#ifdef __cplusplus
}
#endif

#endif