

#include "BUILTIN.h"

#include "Nat.h"

#include "Int.h"

#include "Real.h"

#include "Char.h"

#include "CharConv.h"

#include "Denotation.h"

#include "NatConv.h"

#define __ANatConv_AasChar_L8 __ANatConv_8
#define _ANatConv_AasChar_L8 _ANatConv_8
#define ANatConv_8 ANatConv_AasChar_L8
extern OBJ __ANatConv_AasChar_L8;
extern OBJ _ANatConv_AasChar_L8(OBJ);

#define __ANatConv_AzeroOrd_L9 __ANatConv_9
extern OBJ __ANatConv_AzeroOrd_L9;
extern OBJ _ANatConv_Sq(OBJ);OBJ __ANatConv_Sq; /* ` */
extern OBJ _ANatConv_AasChar(OBJ);OBJ __ANatConv_AasChar; /* asChar */
extern OBJ _ANatConv_AasInt(OBJ);OBJ __ANatConv_AasInt; /* asInt */
extern OBJ _ANatConv_AasReal(OBJ);OBJ __ANatConv_AasReal; /* asReal */
extern OBJ _ANatConv_Achr(OBJ);OBJ __ANatConv_Achr; /* chr */
extern OBJ _ANatConv_AuncheckedAsChar(OBJ);OBJ __ANatConv_AuncheckedAsChar; /* uncheckedAsChar */
OBJ __ANatConv_AzeroOrd; /* zeroOrd */
extern OBJ _ANatConv_AasChar_L8(OBJ);OBJ __ANatConv_AasChar_L8; /* asChar'8 */
OBJ __ANatConv_AzeroOrd_L9; /* zeroOrd'9 */

#include "NatConv.hc.c"

extern OBJ _ANatConv_AasChar(OBJ x1) /* asChar */
{OBJ r;
 CPCLS(__ANatConv_AasChar_L8,1);
 {OBJ x2;OBJ x3;
  x2=(*(OBJ(*)(OBJ,OBJ))METHOD(__ANatConv_AasChar_L8,1))(__ANatConv_AasChar_L8,__ABUILTIN_20);
  ANat_78(x1,x2,x3);
  if(ISTGPRM(x3,1)){
   ANatConv_AuncheckedAsChar(x1,r);
  }else{
   HLT("asChar\'NatConv: argument too large");}}
 return r;}

extern OBJ _ANatConv_Achr(OBJ x1) /* chr */
{OBJ r;
 ANatConv_AasChar(x1,r);
 return r;}

extern OBJ _ANatConv_AasChar_L8(OBJ x1) /* asChar'8 */
{OBJ r;
 ACharConv_2(__AChar_3,r);
 return r;}

static void ___ANatConv_7()
{
 /* __ANatConv_AzeroOrd */
 CPPRD(__ANatConv_AzeroOrd_L9,1);
 {OBJ x1;
  AChar_32(__ANatConv_AzeroOrd_L9,x1);
  ACharConv_2(x1,__ANatConv_AzeroOrd);}}

init_ANatConv()
{
 static int visited=0; if(visited) return; visited=1;
 init_ANat();
 init_AInt();
 init_AReal();
 init_AChar();
 init_ACharConv();
 init_ADenotation();
 DEN("0",__ANatConv_9);
 LCLS(1,_ANatConv_8,__ANatConv_8);
 CLS(1,_ANatConv_6,__ANatConv_6);
 CLS(1,_ANatConv_5,__ANatConv_5);
 CLS(1,_ANatConv_4,__ANatConv_4);
 CLS(1,_ANatConv_3,__ANatConv_3);
 CLS(1,_ANatConv_2,__ANatConv_2);
 CLS(1,_ANatConv_1,__ANatConv_1);
 init_const_ANatConv();
 ___ANatConv_7();}

