// THIS FILE WAS AUTOMATICALLY GENERATED

#ifdef __cplusplus
extern "C" {
#endif



/* ======================================================================== */
/* PUBLIC */
KNHAPI(knh_Array_t*) new_Array(Ctx *ctx, knh_class_t p1, size_t capacity);
KNHAPI(knh_IArray_t*) new_IArray(Ctx *ctx, knh_class_t p1, size_t capacity);
KNHAPI(knh_FArray_t*) new_FArray(Ctx *ctx, knh_class_t p1, size_t capacity);
KNHAPI(void) knh_Array_add(Ctx *ctx, knh_Array_t *o, Any *value);
KNHAPI(knh_Bytes_t*) new_Bytes(Ctx *ctx, size_t capacity);
KNHAPI(knh_bytes_t) knh_Bytes_tobytes(knh_Bytes_t *o);
KNHAPI(void) knh_Bytes_clear(knh_Bytes_t *o, size_t pos);
KNHAPI(void) knh_Bytes_ensureSize(Ctx *ctx, knh_Bytes_t *o, size_t len);
KNHAPI(void) knh_Bytes_putc(Ctx *ctx, knh_Bytes_t *o, int ch);
KNHAPI(void) knh_Bytes_write(Ctx *ctx, knh_Bytes_t *o, knh_bytes_t v);
KNHAPI(knh_bytes_t) new_bytes(char *c);
KNHAPI(knh_bytes_t) new_bytes__2(char *buf, size_t len);
KNHAPI(int) knh_bytes_indexOf(knh_bytes_t base, knh_bytes_t delim);
KNHAPI(int) knh_bytes_strcmp(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(int) knh_bytes_strcasecmp(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(knh_bool_t) knh_bytes_equals(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(knh_bool_t) knh_bytes_equalsIgnoreCase(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(knh_bool_t) knh_bytes_startsWith(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(knh_bool_t) knh_bytes_endsWith(knh_bytes_t v1, knh_bytes_t v2);
KNHAPI(knh_bool_t) knh_bytes_matchWildCard(knh_bytes_t t, knh_bytes_t p);
KNHAPI(knh_index_t) knh_bytes_index(knh_bytes_t v, knh_intptr_t ch);
KNHAPI(knh_index_t) knh_bytes_rindex(knh_bytes_t v, knh_intptr_t ch);
KNHAPI(knh_bytes_t) knh_bytes_mod(knh_bytes_t t, int ch);
KNHAPI(knh_bytes_t) knh_bytes_rmod(knh_bytes_t t, int ch);
KNHAPI(knh_bytes_t) knh_bytes_first(knh_bytes_t t, knh_intptr_t loc);
KNHAPI(knh_bytes_t) knh_bytes_last(knh_bytes_t t, knh_intptr_t loc);
KNHAPI(knh_bytes_t) knh_bytes_skipscheme(knh_bytes_t t);
KNHAPI(char*) knh_format_bytes(char *buf, size_t bufsiz, knh_bytes_t t);
KNHAPI(char*) knh_format_join2(char *buf, size_t bufsiz, knh_bytes_t t, knh_bytes_t t2);
KNHAPI(knh_intptr_t) knh_bytes_toint(knh_bytes_t t);
KNHAPI(knh_float_t) knh_bytes_tofloat(knh_bytes_t t);
KNHAPI(knh_int64_t) knh_bytes_toint64(knh_bytes_t t);
KNHAPI(knh_bytes_t) knh_bytes_parsecid(Ctx *ctx, knh_bytes_t t, int delim, knh_class_t *cid);
KNHAPI(int) knh_bytes_parseURLscheme(knh_bytes_t url, char *buf, size_t bufsiz);
KNHAPI(int) knh_bytes_parseURLuname(knh_bytes_t url, char *buf, size_t bufsiz);
KNHAPI(int) knh_bytes_parseURL(knh_bytes_t url, char *buf, size_t bufsiz);
KNHAPI(knh_bytes_t) knh_bytes_substringURLpath(knh_bytes_t url);
KNHAPI(int) knh_bytes_parseURLpath(knh_bytes_t url, char *buf, size_t bufsiz);
KNHAPI(int) knh_bytes_parseURLhost(knh_bytes_t url, char *buf, size_t bufsiz);
KNHAPI(int) knh_bytes_parseURLport(knh_bytes_t url, int *port);
KNHAPI(knh_String_t*) new_String__fbcnv(Ctx *ctx, knh_String_t *s, knh_fbyteconv fbcnv, knh_BytesConv_t *bc);
KNHAPI(knh_ClassSpec_t*) new_Enum(Ctx *ctx, char *tag, knh_bytes_t urn, knh_int_t min, knh_int_t max);
KNHAPI(knh_ClassSpec_t*) new_Unit(Ctx *ctx, char *tag, knh_bytes_t urn, knh_float_t min, knh_float_t max, knh_float_t step);
KNHAPI(knh_ClassSpec_t*) new_Vocab(Ctx *ctx, char *tag, knh_bytes_t urn, int base, char **terms);
KNHAPI(void) knh_loadURNAliasData(Ctx *ctx, knh_StringConstData_t *data);
KNHAPI(void) knh_loadClassSpecFuncData(Ctx *ctx, knh_NamedPointerData_t *data);
KNHAPI(void) knh_putsfp(Ctx *ctx, knh_sfp_t *lsfp, int n, Object *obj);
KNHAPI(void) knh_Closure_invokesfp(Ctx *ctx, knh_Closure_t *cc, knh_sfp_t *lsfp, int argc);
KNHAPI(knh_sfp_t*) knh_Closure_invokef(Ctx *ctx, knh_Closure_t *c, const char *fmt, ...);
KNHAPI(void) knh_Closure_invoke(Ctx *ctx, knh_Closure_t *c, const char *fmt, ...);
KNHAPI(knh_Exception_t*) new_Exception(Ctx *ctx, knh_String_t *msg);
KNHAPI(knh_Exception_t*) new_Exception__b(Ctx *ctx, knh_bytes_t msg);
KNHAPI(void) knh_cwb_perrno(Ctx *ctx, knh_cwb_t *cwb, char *emsg, char *func, char *file, int line, int isThrowable);
KNHAPI(void) knh_throw_Unsupported(Ctx *ctx, knh_cwb_t *cwb, const char *func, char *file, int line, int isThrowable);
KNHAPI(void) knh_throw_OutOfIndex(Ctx *ctx, knh_int_t n, size_t max, char *file, int line);
KNHAPI(knh_InputStream_t*) new_InputStream__io(Ctx *ctx, knh_String_t *urn, knh_io_t fd, knh_iodrv_t *drv);
KNHAPI(knh_InputStream_t*) new_InputStream__FILE(Ctx *ctx, knh_String_t *urn, FILE *fp, knh_iodrv_t *drv);
KNHAPI(knh_InputStream_t*) new_FileInputStream(Ctx *ctx, knh_bytes_t file, int isThrowable);
KNHAPI(knh_InputStream_t*) new_BytesInputStream(Ctx *ctx, knh_Bytes_t *ba, size_t s, size_t e);
KNHAPI(knh_InputStream_t*) new_StringInputStream(Ctx *ctx, knh_String_t *str, size_t s, size_t e);
KNHAPI(void) knh_Iterator_close(Ctx *ctx, knh_Iterator_t *it);
KNHAPI(knh_Iterator_t*) new_Iterator(Ctx *ctx, knh_class_t p1, Any *source, knh_fitrnext fnext);
KNHAPI(knh_Iterator_t*) new_GlueIterator(Ctx *ctx, knh_class_t p1, void *ref, knh_fitrnext fnext, knh_ffree ffree);
KNHAPI(knh_Iterator_t*) new_ArrayIterator(Ctx *ctx, knh_Array_t *a);
KNHAPI(knh_Mapper_t*) new_Mapper(Ctx *ctx, knh_flag_t flag, knh_class_t scid, knh_class_t tcid, knh_fmapper fmap, Object *mapdata);
KNHAPI(void) knh_addMapper(Ctx *ctx, knh_Mapper_t *mpr);
KNHAPI(knh_class_t) knh_findcid(Ctx *ctx, knh_bytes_t lname);
KNHAPI(knh_Int_t*) new_Int(Ctx *ctx, knh_int_t value);
KNHAPI(knh_Int_t*) new_IntX__fast(Ctx *ctx, knh_class_t cid, knh_int_t value);
KNHAPI(knh_Int_t*) new_IntX(Ctx *ctx, knh_class_t cid, knh_int_t value);
KNHAPI(knh_Float_t*) new_Float(Ctx *ctx, knh_float_t value);
KNHAPI(knh_Float_t*) new_FloatX__fast(Ctx *ctx, knh_class_t cid, knh_float_t value);
KNHAPI(knh_Float_t*) new_FloatX(Ctx *ctx, knh_class_t cid, knh_float_t value);
KNHAPI(void) knh_addAffineMapper(Ctx *ctx, knh_class_t scid, char *text, knh_float_t scale, knh_float_t shift);
KNHAPI(void) knh_Glue_init(Ctx *ctx, knh_Glue_t *g, void *ptr, knh_fgfree gfree);
KNHAPI(Object*) new_Glue(Ctx *ctx, char *lname, void *ptr, knh_fgfree gfree);
KNHAPI(knh_OutputStream_t*) new_OutputStream__io(Ctx *ctx, knh_String_t *urn, knh_io_t fd, knh_iodrv_t *drv);
KNHAPI(knh_OutputStream_t*) new_OutputStream__FILE(Ctx *ctx, knh_String_t *urn, FILE *fp, knh_iodrv_t *drv);
KNHAPI(knh_OutputStream_t*) new_FileOutputStream(Ctx *ctx, knh_bytes_t file, char *mode, int isThrowable);
KNHAPI(knh_OutputStream_t*) new_BytesOutputStream(Ctx *ctx, knh_Bytes_t *ba);
KNHAPI(void) knh_ResultSet_initColumn(Ctx *ctx, knh_ResultSet_t *o, size_t column_size);
KNHAPI(void) knh_ResultSet_setName(Ctx *ctx, knh_ResultSet_t *o, size_t n, knh_String_t *name);
KNHAPI(void) knh_ResultSet_initData(Ctx *ctx, knh_ResultSet_t *o);
KNHAPI(void) knh_ResultSet_setInt(Ctx *ctx, knh_ResultSet_t *o, size_t n, knh_int_t value);
KNHAPI(void) knh_ResultSet_setFloat(Ctx *ctx, knh_ResultSet_t *o, size_t n, knh_float_t value);
KNHAPI(void) knh_ResultSet_setText(Ctx *ctx, knh_ResultSet_t *o, size_t n, knh_bytes_t t);
KNHAPI(void) knh_ResultSet_setBlob(Ctx *ctx, knh_ResultSet_t *o, size_t n, knh_bytes_t t);
KNHAPI(void) knh_ResultSet_setNULL(Ctx *ctx, knh_ResultSet_t *o, size_t n);
KNHAPI(knh_String_t*) new_String(Ctx *ctx, knh_bytes_t t, knh_String_t *orign);
KNHAPI(knh_bytes_t) __tobytes(knh_String_t *o);
KNHAPI(char*) knh_String_text(Ctx *ctx, knh_String_t *s);
KNHAPI(void) knh_addParserDriver(Ctx *ctx, char *alias, knh_parser_drvapi_t *d);
KNHAPI(void) knh_setSystemPropertyText(Ctx *ctx, char *key, char *value);
KNHAPI(void) knh_putc(Ctx *ctx, knh_OutputStream_t *w, int ch);
KNHAPI(void) knh_write(Ctx *ctx, knh_OutputStream_t *w, knh_bytes_t s);
KNHAPI(void) knh_flush(Ctx *ctx, knh_OutputStream_t *w);
KNHAPI(void) knh_print(Ctx *ctx, knh_OutputStream_t *w, knh_bytes_t s);
KNHAPI(void) knh_println(Ctx *ctx, knh_OutputStream_t *w, knh_bytes_t s);
KNHAPI(void) knh_write_EOL(Ctx *ctx, knh_OutputStream_t *w);
KNHAPI(void) knh_write_TAB(Ctx *ctx, knh_OutputStream_t *w);
KNHAPI(void) knh_write_BOL(Ctx *ctx, knh_OutputStream_t *w);
KNHAPI(void) knh_format(Ctx *ctx, knh_OutputStream_t *w, knh_methodn_t mn, Object *o, Any *m);
KNHAPI(void) knh_printf(Ctx *ctx, knh_OutputStream_t *w, char *fmt, ...);
KNHAPI(void) knh_says(Ctx *ctx, int type, char *fmt, ...);
KNHAPI(FILE*) knh_fopen(Ctx *ctx, char *filename, char *mode, int isThrowable);
KNHAPI(int) knh_fgetc(Ctx *ctx, FILE *fp);
KNHAPI(size_t) knh_fread(Ctx *ctx, void *ptr, size_t size, FILE *fp);
KNHAPI(size_t) knh_fwrite(Ctx *ctx, void *ptr, size_t size, FILE *fp);
KNHAPI(int) knh_fflush(Ctx *ctx, FILE *fp);
KNHAPI(int) knh_fclose(Ctx *ctx, FILE *fp);
KNHAPI(void) knh_addIODriver(Ctx *ctx, char *alias, knh_iodrv_t *d);
KNHAPI(void) knh_addRegexDriver(Ctx *ctx, char *alias, knh_regex_drvapi_t *d);
KNHAPI(knh_Socket_t*) new_Socket(Ctx *ctx, knh_intptr_t sd);
KNHAPI(knh_intptr_t) knh_socket_open(Ctx *ctx, char *ip_or_host, int port, int isThrowable);
KNHAPI(int) knh_socket_send(Ctx *ctx, knh_intptr_t sd, char *buf, size_t bufsiz, int flags);
KNHAPI(int) knh_socket_recv(Ctx *ctx, knh_intptr_t sd, char *buf, size_t bufsiz, int flags);
KNHAPI(int) knh_socket_close(Ctx *ctx, knh_intptr_t sd);
KNHAPI(void) knh_addDBDriver(Ctx *ctx, char *alias, knh_db_drvapi_t *d);
KNHAPI(void) konoha_SETv(Ctx *ctx, Object **v, Object *o);
KNHAPI(void) konoha_FINALv(Ctx *ctx, Object **v);
KNHAPI(Ctx*) knh_beginContext(Ctx *ctx);
KNHAPI(void) knh_endContext(Ctx *ctx);
KNHAPI(Ctx*) knh_getCurrentContext(void);
KNHAPI(int) konoha_debugLevel(void);
KNHAPI(int) konoha_isSystemDump2(void);
KNHAPI(int) konoha_parseopt(konoha_t konoha, int argc, char **argv);
KNHAPI(int) konoha_hasRuntimeError(konoha_t konoha);
KNHAPI(char*) konoha_getRuntimeError(konoha_t konoha);
KNHAPI(void) konoha_setOutputStreamBuffer(konoha_t konoha, size_t osize, size_t esize);
KNHAPI(char*) konoha_getStdOutBufferText(konoha_t konoha);
KNHAPI(char*) konoha_getStdErrBufferText(konoha_t konoha);
KNHAPI(void) konoha_evalScript(konoha_t konoha, char *script);
KNHAPI(int) konoha_loadScript(konoha_t konoha, char *fpath);
KNHAPI(int) konoha_runMain(konoha_t konoha, int argc, char **argv);
KNHAPI(int) konoha_hasScriptFunc(konoha_t konoha, char *fmt);
KNHAPI(void) konoha_invokeScriptFunc(konoha_t konoha, char *fmt, ...);
KNHAPI(knh_int_t) konoha_invokeIntFunc(konoha_t konoha, char *fmt, ...);
KNHAPI(knh_float_t) konoha_invokeFloatFunc(konoha_t konoha, char *fmt, ...);
KNHAPI(int) konoha_invokeBooleanFunc(konoha_t konoha, char *fmt, ...);
KNHAPI(char*) konoha_invokeStringFunc(konoha_t konoha, char *fmt, ...);
KNHAPI(int) konoha_setMethodFunc(konoha_t konoha, char *name, knh_fmethod func);
KNHAPI(void) konoha_shell(konoha_t konoha);
KNHAPI(char*) knh_safefile(char *file);
KNHAPI(Object*) new_Object_boxing(Ctx *ctx, knh_class_t cid, knh_sfp_t *sfp);
KNHAPI(char*) knh_getPassword(Ctx *ctx, knh_bytes_t url);
KNHAPI(void) knh_stack_checkSecurityManager(Ctx *ctx, knh_sfp_t *sfp);
KNHAPI(void) knh_sfp_boxing(Ctx *ctx, knh_sfp_t *sfp);
KNHAPI(void) knh_sfp_unboxing(Ctx *ctx, knh_sfp_t *sfp);
KNHAPI(void) knh_esp1_sformat(Ctx *ctx, knh_Method_t *mtd, knh_OutputStream_t *w, Any *m);
KNHAPI(void) knh_esp1_format(Ctx *ctx, knh_methodn_t mn, knh_OutputStream_t *w, Any *m);
KNHAPI(void) knh_throw_TODO(Ctx *ctx, char *file, int line, char *func);
KNHAPI(void) knh_throw_bugstop(Ctx *ctx, char *file, int line, char *func);
KNHAPI(void) knh_throwException(Ctx *ctx, knh_Exception_t *e, char *file, int line);
KNHAPI(void) knh_throw__s(Ctx *ctx, char *msg, char *file, int line);
KNHAPI(void) knh_throw(Ctx *ctx, Object *e, char *file, int line);
KNHAPI(void) knh_throwStupidException(Ctx *ctx);
KNHAPI(void) konoha_throwSecurityException(void);
KNHAPI(void) knh_loadIntConstData(Ctx *ctx, knh_IntConstData_t *data);
KNHAPI(void) knh_loadFloatConstData(Ctx *ctx, knh_FloatConstData_t *data);
KNHAPI(void) knh_loadStringConstData(Ctx *ctx, knh_StringConstData_t *data);
KNHAPI(konoha_t) konoha_open(size_t stacksize);
KNHAPI(void) konoha_close(konoha_t konoha);

/* ======================================================================== */
/* DEVELOPERS API */
void knh_array_dfree(Ctx *ctx, void *ptr, size_t capacity, size_t usize);
int knh_ResultSet_indexof_(Ctx *ctx, knh_sfp_t *sfp);
void knh_Regex__s(Ctx *ctx, knh_Regex_t *o, knh_OutputStream_t *w, knh_String_t *m);
void knh_DictIdx__k(Ctx *ctx, knh_DictIdx_t *o, knh_OutputStream_t *w, knh_String_t *m);
void knh_HashMap__k(Ctx *ctx, knh_Hash_t *o, knh_OutputStream_t *w, knh_String_t *m);
void knh_System__k(Ctx *ctx, knh_System_t *o, knh_OutputStream_t *w, knh_String_t *m);
void knh_Script__k(Ctx *ctx, knh_Script_t *o, knh_OutputStream_t *w, knh_String_t *m);
void knh_System__dump(Ctx *ctx, knh_System_t *o, knh_OutputStream_t *w, knh_String_t *m);
METHOD Object_opInstanceof(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opAdd(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opNeg(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opSub(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opMul(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opDiv(Ctx *ctx, knh_sfp_t *sfp);
METHOD Any_opMod(Ctx *ctx, knh_sfp_t *sfp);
METHOD Socket_new(Ctx *ctx, knh_sfp_t *sfp);
METHOD Socket_getInputStream(Ctx *ctx, knh_sfp_t *sfp);
METHOD Socket_getOutputStream(Ctx *ctx, knh_sfp_t *sfp);
METHOD Socket_close(Ctx *ctx, knh_sfp_t *sfp);
METHOD Socket_isClosed(Ctx *ctx, knh_sfp_t *sfp);
knh_Array_t *knh_Regex_split(Ctx *ctx, knh_Regex_t *o, knh_String_t *s);
void knh_ObjectField_init(Ctx *ctx, knh_ObjectField_t *of, int init);
void knh_ObjectField_traverse(Ctx *ctx, knh_ObjectField_t *of, knh_ftraverse ftr);
knh_hashcode_t knh_MethodField_hashCode(Ctx *ctx, knh_MethodField_t *o);
size_t knh_fbyteconv_nop(Ctx *ctx, knh_BytesConv_t *bc, knh_bytes_t t, knh_Bytes_t *ba);
void knh_fbyteconvfree_nop(Ctx *ctx, knh_BytesConv_t *bc);
void
knh_OutputStream_init(Ctx *ctx, knh_OutputStream_t *out, int init);
void
knh_ExceptionHandler_traverse(Ctx *ctx, knh_ExceptionHandler_t *hdr, knh_ftraverse ftr);
void knh_Context_init(Ctx *ctx, knh_Context_t *o, int init);
Term *knh_Stmt_done(Ctx *ctx, knh_Stmt_t *o);
char *knh_getStructTableName(Ctx *ctx, knh_struct_t sid);
void knh_loadSystemString(Ctx *ctx);
void knh_loadSystemStructData(Ctx *ctx);
void knh_loadSystemData(Ctx *ctx);
size_t knh_array_newsize(size_t newsize, size_t usize);
size_t knh_array_index0(Ctx *ctx, knh_intptr_t n, size_t size);
size_t knh_array_index(Ctx *ctx, knh_intptr_t n, size_t size);
void knh_Array_grow(Ctx *ctx, knh_Array_t *a, size_t newsize, Object *v);
knh_Array_t* new_Array0(Ctx *ctx, size_t capacity);
Object** knh_Array_list(knh_Array_t *o);
Object* knh_Array_last(knh_Array_t *o);
void knh_Array_clear(Ctx *ctx, knh_Array_t *o);
void knh_Array_subclear(Ctx *ctx, knh_Array_t *o, size_t n);
void knh_Array_addArray(Ctx *ctx, knh_Array_t *o, knh_Array_t *other);
void knh_Array_remove(Ctx *ctx, knh_Array_t *o, size_t n);
Any* knh_Array_pop(Ctx *ctx, knh_Array_t *o);
void knh_IArray_grow(Ctx *ctx, knh_IArray_t *a, size_t newsize, knh_int_t v);
void knh_IArray_add(Ctx *ctx, knh_IArray_t *o, knh_int_t value);
void knh_FArray_grow(Ctx *ctx, knh_FArray_t *a, size_t newsize, knh_float_t v);
void knh_FArray_add(Ctx *ctx, knh_FArray_t *o, knh_float_t value);
size_t knh_bytes_newsize(size_t s);
void knh_Bytes_ensureZero(Ctx *ctx, knh_Bytes_t *o);
void knh_Bytes_concatZero(Ctx *ctx, knh_Bytes_t *o);
void knh_Bytes_remove(Ctx *ctx, knh_Bytes_t *o, size_t offset, size_t len);
void knh_Bytes_unputc(knh_Bytes_t *o);
void knh_Bytes_update(Ctx *ctx, knh_Bytes_t *o, size_t pos, knh_bytes_t t);
knh_cwb_t *knh_cwb_open(Ctx* ctx, knh_cwb_t *cwb);
knh_cwb_t *knh_cwb_openinit(Ctx* ctx, knh_cwb_t *cwb, knh_bytes_t t);
void knh_cwb_putc(Ctx *ctx, knh_cwb_t *cwb, int ch);
void knh_cwb_write(Ctx *ctx, knh_cwb_t *cwb, knh_bytes_t t);
size_t knh_cwb_size(knh_cwb_t *cwb);
knh_bytes_t knh_cwb_tobytes(knh_cwb_t *cwb);
char *knh_cwb__tochar(Ctx *ctx, knh_cwb_t *cwb);
void knh_cwb_close(knh_cwb_t *cwb);
void knh_cwb_subclear(knh_cwb_t *cwb, size_t len);
knh_String_t *knh_cwb_newString(Ctx *ctx, knh_cwb_t *cwb);
knh_String_t *new_StringX__cwb(Ctx *ctx, knh_class_t cid, knh_cwb_t *cwb);
size_t knh_size(size_t s);
knh_bytes_t knh_bytes_subset(knh_bytes_t t, size_t s, size_t e);
knh_bytes_t knh_bytes_offlen(knh_bytes_t t, size_t off, size_t len);
knh_bytes_t knh_bytes_trim(knh_bytes_t t /*, knh_intptr_t ch*/);
int knh_bytes_parseint(knh_bytes_t t, knh_int_t *value);
int knh_bytes_parsefloat(knh_bytes_t t, knh_float_t *value);
size_t knh_BytesConv_conv(Ctx *ctx, knh_BytesConv_t *o, knh_bytes_t t, knh_Bytes_t *ba);
iconv_t knh_iconv_open(Ctx *ctx, char *to, char *from);
void knh_iconv_close(Ctx *ctx, iconv_t cd);
knh_BytesConv_t* new_BytesConv__iconv(Ctx *ctx, char *from, char *to);
knh_BytesConv_t* new_BytesConv__in(Ctx *ctx, char *from);
knh_BytesConv_t* new_BytesConv__out(Ctx *ctx, char *to);
knh_String_t *new_String__bconv(Ctx *ctx, knh_bytes_t t, knh_BytesConv_t *bc);
knh_String_t *new_String__cwbconv(Ctx *ctx, knh_cwb_t *cwb, knh_BytesConv_t *bc);
void knh_OutputStream_write__bconv(Ctx *ctx, knh_OutputStream_t *w, knh_bytes_t t);
knh_struct_t knh_StructTable_newId(Ctx *ctx);
knh_class_t knh_ClassTable_newId(Ctx *ctx);
knh_Class_t *new_Class(Ctx *ctx, knh_class_t cid);
knh_Class_t *new_Type(Ctx *ctx, knh_type_t type);
void knh_setClassName(Ctx *ctx, knh_class_t cid, knh_String_t *lname);
char *knh_ClassTable_CLASSN(Ctx *ctx, knh_class_t cid);
knh_Object_t *knh_fdefault__CONST(Ctx *ctx, knh_class_t cid);
knh_Object_t *knh_fdefault__NEWVALUE(Ctx *ctx, knh_class_t cid);
void knh_setClassDefaultValue(Ctx *ctx, knh_class_t cid, Object *value, knh_fdefault fdefault);
Object *knh_getClassDefaultValue(Ctx *ctx, knh_class_t cid);
void knh_setClassParam(Ctx *ctx, knh_class_t cid, knh_class_t p1, knh_class_t p2);
knh_class_t
knh_addGenericsClass(Ctx *ctx, knh_class_t cid, knh_String_t *name, knh_class_t bcid, knh_class_t p1, knh_class_t p2);
knh_ClassStruct_t* new_ClassStruct0(Ctx *ctx, int field_size, int method_size);
knh_index_t knh_Class_indexOfField(Ctx *ctx, knh_class_t cid, knh_fieldn_t fn);
knh_index_t knh_Class_queryField(Ctx *ctx, knh_class_t cid, knh_fieldn_t fnq);
knh_cfield_t *knh_Class_fieldAt(Ctx *ctx, knh_class_t cid, size_t n);
knh_ClassMap_t* new_ClassMap0(Ctx *ctx, knh_ushort_t capacity);
Object *knh_ClassMap_fdefault(Ctx *ctx, knh_class_t cid);
void knh_readyClassMap(Ctx *ctx, knh_class_t cid);
void knh_ClassMap_resize(Ctx *ctx, knh_ClassMap_t *cmap, size_t newsize);
int
knh_ClassMap_util_cmp(const knh_Mapper_t *m1, const knh_Mapper_t *m2);
void knh_ClassMap_sort(Ctx *ctx, knh_ClassMap_t *cmap);
void knh_ClassMap_add(Ctx *ctx, knh_ClassMap_t *cmap, knh_Mapper_t *mpr);
knh_Array_t* knh_getClassDomain(Ctx *ctx, knh_class_t cid);
void knh_write_intx(Ctx *ctx, knh_OutputStream_t *w, knh_ClassSpec_t *u, knh_int_t v);
void knh_write_floatx(Ctx *ctx, knh_OutputStream_t *w, knh_ClassSpec_t *u, knh_float_t v);
void knh_ClassSpec_reuse(Ctx *ctx, knh_ClassSpec_t *u, knh_class_t cid);
knh_bytes_t knh_getURNAlias(Ctx *ctx, knh_bytes_t aurn);
knh_ClassSpec_t *knh_getClassSpec(Ctx *ctx, knh_class_t cid);
knh_class_t knh_findcidx(Ctx *ctx, knh_bytes_t lname);
int
knh_stack_vpush(Ctx *ctx, knh_sfp_t *sfp, const char *fmt, va_list args);
knh_Object_t *knh_fdefault__NEWCLOSURE(Ctx *ctx, knh_class_t cid);
knh_class_t
knh_addClosureClass(Ctx *ctx, knh_class_t cid, knh_String_t *name, knh_type_t r0, knh_type_t p1, knh_type_t p2, knh_type_t p3);
void knh_Closure_newClass(Ctx *ctx, knh_class_t cid);
knh_class_t knh_class_Closure(Ctx *ctx, knh_type_t r0, knh_type_t p1, knh_type_t p2, knh_type_t p3);
knh_class_t knh_class_MethodClosure(Ctx *ctx, knh_class_t cid, knh_Method_t *mtd);
void knh_Closure_copyEnv(Ctx *ctx, knh_Closure_t *cc, knh_sfp_t *sfp);
knh_class_t knh_Method_gencid(Ctx *ctx, knh_Method_t *mtd, knh_class_t cid);
void knh_Method_toGenerator(knh_Method_t *mtd);
void knh_Connection_open(Ctx *ctx, knh_Connection_t *c, knh_String_t *urn);
knh_Connection_t* new_Connection(Ctx *ctx, knh_String_t *urn);
void knh_Connection_close(Ctx *ctx, knh_Connection_t *c);
Object* knh_Context_getProperty(Ctx *ctx, knh_Context_t *b, knh_bytes_t key);
knh_type_t knh_getPropertyType(Ctx *ctx, knh_bytes_t key);
void knh_Context_setProperty(Ctx *ctx, knh_Context_t *b, knh_String_t *key, Any *value);
void knh_Context_setEncoding(Ctx *ctx, knh_Context_t *o, knh_String_t *enc);
void knh_Context_clearstack(Ctx *ctx);
knh_DictIdx_t* new_DictIdx0(Ctx *ctx, size_t init, knh_intptr_t offset);
knh_DictIdx_t* new_DictIdx0__ignoreCase(Ctx *ctx, size_t init, knh_intptr_t offset);
size_t knh_DictIdx_size(knh_DictIdx_t *o);
knh_index_t knh_DictIdx_index(Ctx *ctx, knh_DictIdx_t *o, knh_bytes_t v);
knh_index_t knh_DictIdx_add__fast(Ctx *ctx, knh_DictIdx_t *o, knh_String_t *term);
knh_index_t knh_DictIdx_add(Ctx *ctx, knh_DictIdx_t *o, knh_String_t *term);
knh_index_t knh_DictIdx_add__b(Ctx *ctx, knh_DictIdx_t *o, knh_bytes_t term);
knh_String_t* knh_DictIdx_get__fast(knh_DictIdx_t *o, knh_intptr_t termid);
knh_String_t* knh_DictIdx_get(Ctx *ctx, knh_DictIdx_t *o, knh_intptr_t termid);
void knh_DictIdx_clear(Ctx *ctx, knh_DictIdx_t *o);
size_t knh_dict_capacity(knh_dict_t *a);
knh_dict_t* knh_dict_resize(Ctx *ctx, knh_dict_t *a, size_t newsize);
void knh_dict_traverse(Ctx *ctx, knh_dict_t *a, knh_ftraverse ftr);
void knh_DictMap_sort(knh_DictMap_t *o);
void knh_DictSet_sort(knh_DictSet_t *o);
void knh_DictMap_toIgnoreCase(knh_DictMap_t *o);
void knh_DictSet_toIgnoreCase(knh_DictSet_t *o);
knh_dict_t *knh_dictmap_malloc(Ctx *ctx, size_t init);
knh_DictMap_t* new_DictMap0(Ctx *ctx, knh_intptr_t capacity);
knh_DictMap_t* new_DictMap(Ctx *ctx, knh_class_t p1, knh_intptr_t capacity);
size_t knh_DictMap_size(knh_DictMap_t *o);
knh_String_t* knh_DictMap_keyAt(knh_DictMap_t *o, size_t n);
Object* knh_DictMap_valueAt(knh_DictMap_t *o, size_t n);
void knh_DictMap_removeAt(Ctx *ctx, knh_DictMap_t *o, size_t n);
knh_index_t knh_DictMap_index(knh_DictMap_t *o, knh_bytes_t key);
knh_index_t knh_DictMap_firstIndex(knh_DictMap_t *o, knh_bytes_t key);
knh_String_t *new_String__DictMap(Ctx *ctx, knh_DictMap_t *o, knh_bytes_t key);
Object *knh_DictMap_get__b(Ctx *ctx, knh_DictMap_t *o, knh_bytes_t key);
Object *knh_DictMap_get(Ctx *ctx, knh_DictMap_t *o, knh_String_t *key);
void knh_DictMap_append(Ctx *ctx, knh_DictMap_t *o, knh_String_t *key, Any *value);
void knh_DictMap_set(Ctx *ctx, knh_DictMap_t *o, knh_String_t *key, Any *v);
void knh_DictMap_remove(Ctx *ctx, knh_DictMap_t *o, knh_String_t *key);
void knh_DictMap_clear(Ctx *ctx, knh_DictMap_t *o);
knh_dict_t *knh_dictset_malloc(Ctx *ctx, size_t init);
knh_DictSet_t* new_DictSet0(Ctx *ctx, knh_intptr_t capacity);
size_t knh_DictSet_size(knh_DictSet_t *o);
knh_String_t* knh_DictSet_keyAt(knh_DictSet_t *o, size_t n);
knh_uintptr_t knh_DictSet_valueAt(knh_DictSet_t *o, size_t n);
void knh_DictSet_removeAt(Ctx *ctx, knh_DictSet_t *o, size_t n);
knh_String_t *new_String__DictSet(Ctx *ctx, knh_DictSet_t *o, knh_bytes_t key);
knh_uintptr_t knh_DictSet_get__b(knh_DictSet_t *o, knh_bytes_t key);
knh_uintptr_t knh_DictSet_get(Ctx *ctx, knh_DictSet_t *o, knh_String_t *key);
void knh_DictSet_append(Ctx *ctx, knh_DictSet_t *o, knh_String_t *key, knh_uintptr_t n);
void knh_DictSet_set(Ctx *ctx, knh_DictSet_t *o, knh_String_t *key, knh_uintptr_t n);
void knh_DictSet_add(Ctx *ctx, knh_DictSet_t *o, knh_String_t *key);
void knh_DictSet_remove(Ctx *ctx, knh_DictSet_t *o, knh_String_t *key);
void knh_DictSet_clear(Ctx *ctx, knh_DictSet_t *o);
int knh_expt_isa(Ctx *ctx, knh_expt_t eid, knh_expt_t parent);
knh_String_t *knh_getExptName(Ctx *ctx, knh_expt_t eid);
knh_expt_t knh_geteid(Ctx *ctx, knh_bytes_t msg, knh_expt_t def);
knh_expt_t
knh_addException(Ctx *ctx, knh_flag_t flag, knh_class_t eid, knh_String_t *name, knh_class_t peid);
knh_Exception_t* knh_Exception_new__init(Ctx *ctx, knh_Exception_t *o, knh_String_t *e, knh_String_t *msg, Object *bag);
int knh_Exception_isa(Ctx *ctx, knh_Exception_t *o, knh_String_t *msg);
knh_Exception_t* new_NullException (Ctx *ctx, Object *o);
knh_ExceptionHandler_t* new_ExceptionHandler(Ctx *ctx);
void knh_ExceptionHandler_longjmp(Ctx *ctx, knh_ExceptionHandler_t *o, knh_Exception_t *e);
knh_Exception_t* knh_ExceptionHandler_getCaughtException(knh_ExceptionHandler_t *o);
knh_hashentry_t *new_hashentry(Ctx *ctx, knh_Hash_t *o);
void knh_hashentry_collect(Ctx *ctx, knh_Hash_t *o, knh_hashentry_t *e);
knh_hashentry_t *knh_hashentry_at(knh_Hash_t *o, size_t n);
knh_HashMap_t* new_HashMap(Ctx *ctx, char *name, size_t capacity);
knh_hashentry_t *knh_Hash_get__hcode(Ctx *ctx, knh_Hash_t *o, knh_hashcode_t hcode);
Object *knh_HashMap_get__hcode(Ctx *ctx, knh_HashMap_t *o, knh_hashcode_t hcode);
knh_uintptr_t knh_HashSet_get__hcode(Ctx *ctx, knh_HashSet_t *o, knh_hashcode_t hcode);
void knh_Hash_remove__hcode(Ctx *ctx, knh_Hash_t *o, knh_hashcode_t hcode);
void knh_Hash_rehash(Ctx *ctx, knh_Hash_t *o);
void knh_HashMap_set__hcode(Ctx *ctx, knh_HashMap_t *o, knh_hashcode_t hcode, Any *value);
void knh_HashSet_set__hcode(Ctx *ctx, knh_HashSet_t *o, knh_hashcode_t hcode, knh_uintptr_t uvalue);
Object *knh_InputStream_open(Ctx *ctx, knh_InputStream_t *o, knh_String_t *urn, knh_String_t *m);
int knh_InputStream_getc(Ctx *ctx, knh_InputStream_t *o);
size_t
knh_InputStream_read(Ctx *ctx, knh_InputStream_t *o, char *buf, size_t bufsiz);
knh_String_t* knh_InputStream_readLine(Ctx *ctx, knh_InputStream_t *in);
void knh_InputStream_close(Ctx *ctx, knh_InputStream_t *o);
int knh_InputStream_isClosed(Ctx *ctx, knh_InputStream_t *o);
void knh_InputStream_setEncoding(Ctx *ctx, knh_InputStream_t *o, knh_String_t *enc);
MAPPER knh_Bytes_InputStream(Ctx *ctx, knh_sfp_t *sfp);
knh_Mapper_t* new_MapMap(Ctx *ctx, knh_Mapper_t *m1, knh_Mapper_t *m2);
void knh_addMapperFunc(Ctx *ctx, knh_flag_t flag, knh_type_t stype, knh_type_t ttype, knh_fmapper fmap, Object *mapdata);
MAPPER knh_fmapper_asis(Ctx *ctx, knh_sfp_t *sfp);
MAPPER knh_fmapper_null(Ctx *ctx, knh_sfp_t *sfp);
knh_bool_t knh_Mapper_isNoSuchMapping(knh_Mapper_t *mpr);
knh_Mapper_t *knh_findMapper_(Ctx *ctx, knh_class_t scid, knh_class_t tcid, int isgen);
knh_MethodField_t* new_MethodField(Ctx *ctx, knh_type_t rtype, size_t psize);
knh_hashcode_t knh_mparam_hcode(knh_hashcode_t h, knh_type_t type, knh_fieldn_t fn);
void knh_MethodField_set(knh_MethodField_t *o, size_t n, knh_type_t type, knh_fieldn_t fn);
knh_type_t knh_MethodField_pztype(knh_MethodField_t *o, size_t n);
knh_mparam_t knh_MethodField_param(knh_MethodField_t *o, size_t n);
knh_type_t knh_Method_rtype(Ctx *ctx, knh_Method_t *mtd, knh_class_t cid);
knh_type_t knh_Method_ptype(Ctx *ctx, knh_Method_t *o, knh_class_t cid, size_t n);
knh_mparam_t knh_Method_param(knh_Method_t *o, size_t n);
int knh_MethodField_equalsType(knh_MethodField_t *o, knh_MethodField_t *o2);
METHOD knh_fmethod_abstract(Ctx *ctx, knh_sfp_t *sfp);
knh_bool_t knh_Method_isAbstract(knh_Method_t *o);
void knh_Method_toAbstract(Ctx *ctx, knh_Method_t *o);
void knh_Method_syncFunc(knh_Method_t *o, knh_fmethod f);
knh_Method_t* new_Method(Ctx *ctx, knh_flag_t flag, knh_class_t cid, knh_methodn_t mn, knh_fmethod func);
knh_bool_t knh_Method_isNoSuchMethod(knh_Method_t *o);
knh_Method_t* new_Method__NoSuchMethod(Ctx *ctx, knh_class_t cid, knh_methodn_t mn);
int knh_methodn_isNew(Ctx *ctx, knh_methodn_t mn);
int knh_Method_isConstructor(Ctx *ctx, knh_Method_t *o);
int knh_methodn_isOp(Ctx *ctx, knh_methodn_t mn);
knh_String_t* knh_Method_getName(Ctx *ctx, knh_Method_t *o);
int knh_Method_isWoven(knh_Method_t *mtd);
int knh_Method_canWeave(Ctx *ctx, knh_Method_t *mtd, knh_Method_t *aspect);
void knh_Method_weave(Ctx *ctx, knh_Method_t *aspect, knh_Method_t *mtd);
void knh_Class_addMethod(Ctx *ctx, knh_class_t cid, knh_Method_t *mtd);
void knh_addMethodFieldTable(Ctx *ctx, knh_MethodField_t *mf);
knh_MethodField_t *knh_findMethodField0(Ctx *ctx, knh_type_t rtype);
knh_MethodField_t *knh_findMethodField1(Ctx *ctx, knh_type_t rtype, knh_type_t p1, knh_fieldn_t fn1);
knh_Method_t*
knh_Class_getMethod__(Ctx *ctx, knh_class_t this_cid, knh_methodn_t mn, knh_bool_t gen);
knh_Method_t *knh_lookupMethod(Ctx *ctx, knh_class_t cid, knh_methodn_t mn);
knh_Method_t *knh_lookupFormatter(Ctx *ctx, knh_class_t cid, knh_methodn_t mn);
knh_NameSpace_t* new_NameSpace(Ctx *ctx, knh_String_t *nsname);
void knh_NameSpace_importNameSpace(Ctx *ctx, knh_NameSpace_t *ns, knh_NameSpace_t *other);
knh_Script_t *knh_NameSpace_getScript(Ctx *ctx, knh_NameSpace_t *ns);
knh_class_t knh_getcid(Ctx *ctx, knh_bytes_t /*don't use cwb*/ lname);
void knh_NameSpace_setcid(Ctx *ctx, knh_NameSpace_t *o, knh_String_t *name, knh_class_t c);
void knh_NameSpace_setLocalName(Ctx *ctx, knh_NameSpace_t *o, knh_class_t cid);
knh_class_t knh_NameSpace_getcid(Ctx *ctx, knh_NameSpace_t *o, knh_bytes_t name);
char* knh_Context_CLASSN(Ctx *ctx, knh_class_t cid);
void knh_NameSpace_importClass(Ctx *ctx, knh_NameSpace_t *o, knh_bytes_t pkgname);
knh_type_t knh_NameSpace_gettype(Ctx *ctx, knh_NameSpace_t *ns, knh_bytes_t name, int isNullable);
Object *
knh_NameSpace_getConstNULL(Ctx *ctx, knh_NameSpace_t *ns, knh_bytes_t name);
void knh_NameSpace_addConst(Ctx *ctx, knh_NameSpace_t *ns, knh_String_t *name, Object *value);
void knh_NameSpace_setFuncClass(Ctx *ctx, knh_NameSpace_t *o, knh_methodn_t mn, knh_class_t c);
knh_class_t
knh_NameSpace_getFuncClass(Ctx *ctx, knh_NameSpace_t *o, knh_methodn_t mn);
knh_type_t knh_NameSpace_tagcid(Ctx *ctx, knh_NameSpace_t *o, knh_class_t cid, knh_bytes_t tag);
knh_int_t knh_Number_tointeger(Any *o);
knh_float_t knh_Number_tofloat(Any *o);
knh_String_t *knh_Object_getkey(Ctx *ctx, Object *o);
Object *knh_Object_copy(Ctx *ctx, Object *b);
knh_hashcode_t knh_Object_hashCode(Ctx *ctx, Object *o);
knh_String_t *knh_Object_key(Ctx *ctx, Object *o);
int knh_Object_compareTo(Ctx *ctx, Object *o1, Object *o2);
int knh_Object_compareTo2(Ctx *ctx, Object **o1, Object **o2);
knh_bool_t knh_Object_equals(Ctx *ctx, Object *o1, Object *o2);
knh_bytes_t knh_Object_tobytes(Ctx *ctx, Object *o);
Object *knh_OutputStream_open(Ctx *ctx, knh_OutputStream_t *o, knh_String_t *urn, knh_String_t *m);
void knh_OutputStream_putc(Ctx *ctx, knh_OutputStream_t *o, knh_int_t ch);
void knh_OutputStream_write(Ctx *ctx, knh_OutputStream_t *o, knh_bytes_t buf);
void knh_OutputStream_flush(Ctx *ctx, knh_OutputStream_t *o);
void knh_OutputStream_clear(Ctx *ctx, knh_OutputStream_t *o);
void knh_OutputStream_close(Ctx *ctx, knh_OutputStream_t *o);
int knh_OutputStream_isClosed(knh_OutputStream_t *o);
void knh_OutputStream_setEncoding(Ctx *ctx, knh_OutputStream_t *o, knh_String_t *enc);
void knh_OutputStream_print_(Ctx *ctx, knh_OutputStream_t *o, knh_bytes_t str, knh_bool_t isnl);
knh_ResultSet_t* new_ResultSet(Ctx *ctx);
knh_bool_t knh_ResultSet_next(Ctx *ctx, knh_ResultSet_t *o);
void knh_ResultSet_close(Ctx *ctx, knh_ResultSet_t *o);
void knh_ResultSet_initTargetClass(knh_ResultSet_t *o, knh_class_t tcid);
knh_String_t *knh_ResultSet_getName(Ctx *ctx, knh_ResultSet_t *o, size_t n);
int knh_ResultSet_findColumn(Ctx *ctx, knh_ResultSet_t *o, knh_bytes_t name);
knh_type_t knh_ResultSet_get_type(Ctx *ctx, knh_ResultSet_t *o, size_t n);
knh_int_t knh_ResultSet_getInt(Ctx *ctx, knh_ResultSet_t *o, size_t n);
knh_float_t knh_ResultSet_getFloat(Ctx *ctx, knh_ResultSet_t *o, size_t n);
knh_String_t* knh_ResultSet_getString(Ctx *ctx, knh_ResultSet_t *o, size_t n);
knh_Script_t *new_Script(Ctx *ctx, knh_bytes_t nsname);
knh_bool_t knh_hasScriptFunc(Ctx *ctx, char *fmt);
knh_sfp_t *knh_invokeScriptFunc(Ctx *ctx, char *fmt, va_list args);
knh_hashcode_t knh_uchar_hcode(knh_hashcode_t h, knh_uchar_t *buf, size_t len);
void knh_String_checkAscii(knh_String_t *o);
knh_String_t *new_StringX__T(Ctx *ctx, knh_class_t cid, const char *text);
knh_String_t *new_StringX__fast(Ctx *ctx, knh_class_t cid, knh_bytes_t t, knh_String_t *orign);
knh_String_t *new_StringX(Ctx *ctx, knh_class_t cid, knh_bytes_t t, knh_String_t *orign);
knh_String_t *new_String__int(Ctx *ctx, knh_int_t n);
knh_String_t *new_String__float(Ctx *ctx, knh_float_t n);
knh_bool_t knh_String_equals(knh_String_t *o, knh_bytes_t s);
knh_bool_t knh_String_startsWith(knh_String_t *b, knh_bytes_t s);
knh_bool_t knh_String_endsWith(knh_String_t *b, knh_bytes_t s);
Object* new_String_parseOf(Ctx *ctx, knh_String_t *p);
int knh_bytes_splitTag(knh_bytes_t t, knh_bytes_t *tag, knh_bytes_t *body);
Object *new_Object_parseOf(Ctx *ctx, knh_String_t *s);
knh_bool_t knh_bytes_checkENCODING(knh_bytes_t s);
size_t knh_bytes_mlen(knh_bytes_t s);
knh_bytes_t knh_bytes_mofflen(knh_bytes_t m, size_t moff, size_t mlen);
knh_int_t knh_uchar_toucs4(knh_uchar_t *utf8);
char *knh_format_utf8(char *buf, size_t bufsiz, knh_int_t ucs4);
char *
knh_bytes_nzenvkey(knh_bytes_t t, char *buf, size_t bufsiz);
Any* knh_System_getProperty(Ctx *ctx, knh_System_t *o, knh_bytes_t key);
void knh_System_setProperty(Ctx *ctx, knh_System_t *o, knh_String_t *key, Any *value);
knh_bool_t konoha_initcheck(void);
knh_class_t knh_pmztype_toclass(Ctx *ctx, knh_type_t t, knh_class_t this_cid);
knh_type_t knh_pmztype_totype(Ctx *ctx, knh_type_t t, knh_class_t this_cid);
knh_class_t knh_class_Array(Ctx *ctx, knh_class_t p1);
knh_class_t knh_class_Iterator(Ctx *ctx, knh_class_t p1);
knh_class_t knh_class_Generics(Ctx *ctx, knh_class_t bcid, knh_class_t p1, knh_class_t p2);
char *TYPEQ(knh_type_t type);
char *knh_TYPEN(Ctx *ctx, knh_type_t type);
void knh_write_begin(Ctx *ctx, knh_OutputStream_t *w, int ch);
void knh_write_end(Ctx *ctx, knh_OutputStream_t *w, int ch);
void knh_write_char(Ctx *ctx, knh_OutputStream_t *w, char *s);
void knh_write__p(Ctx *ctx, knh_OutputStream_t *w, void *ptr);
void knh_write_dfmt(Ctx *ctx, knh_OutputStream_t *w, char *fmt, knh_intptr_t n);
void knh_write_ifmt(Ctx *ctx, knh_OutputStream_t *w, char *fmt, knh_int_t n);
void knh_write_ffmt(Ctx *ctx, knh_OutputStream_t *w, char *fmt, knh_float_t n);
void knh_write__flag(Ctx *ctx, knh_OutputStream_t *w, knh_flag_t flag);
void knh_write_cid(Ctx *ctx, knh_OutputStream_t *w, knh_class_t cid);
void knh_write_lcid(Ctx *ctx, knh_OutputStream_t *w, knh_class_t cid);
void knh_write_mn(Ctx *ctx, knh_OutputStream_t *w, knh_type_t rtype, knh_methodn_t mn);
void knh_write_type_(Ctx *ctx, knh_OutputStream_t *w, knh_type_t type, int isLongName);
void knh_write_fline(Ctx *ctx, knh_OutputStream_t *w, char *file, int line);
void knh_vprintf(Ctx *ctx, knh_OutputStream_t *w, char *fmt, va_list ap);
void knh_setverbose(int v);
METHOD knh_fmethod_formatter(Ctx *ctx, knh_sfp_t *sfp);
knh_bool_t knh_stack_isRecuriveFormatting(Ctx *ctx, knh_sfp_t *sfp, Object *o, knh_OutputStream_t *w, void *mtdcode);
void knh_Context_initGamma(Ctx *ctx);
knh_NameSpace_t *knh_getGammaNameSpace(Ctx *ctx);
knh_NameSpace_t *knh_setGammaNameSpace(Ctx *ctx, knh_String_t *nsname);
knh_NameSpace_t *knh_switchGammaNameSpace(Ctx *ctx, knh_NameSpace_t *newns);
knh_Script_t *knh_getGammaScript(Ctx *ctx);
void knh_Gamma_initGamma(Ctx *ctx, knh_Gamma_t *abr, size_t c);
void knh_Gamma_prepare(Ctx *ctx, knh_Gamma_t *abr, knh_Method_t *mtd, knh_Stmt_t *stmt);
void knh_Gamma_initThis(Ctx *ctx, knh_Gamma_t *abr, knh_class_t cid);
void knh_Gamma_initThisScript(Ctx *ctx, knh_Gamma_t *abr);
void *knh_Gamma_asmmalloc(Ctx *ctx, knh_Gamma_t *abr, size_t size);
void knh_Gamma_rewind(Ctx *ctx, knh_Gamma_t *abr);
void KNH_ASM_SETLINE(Ctx *ctx, knh_Gamma_t *abr, int line);
void
knh_StmtEXPR_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_type_t reqt, int sfpidx);
void knh_StmtLETM_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
void knh_StmtPRINT_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
void knh_StmtASSERT_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
void knh_Stmt_asmBLOCK(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, int isIteration);
void KNH_ASM_METHOD(Ctx *ctx, knh_Gamma_t *abr, knh_Method_t *mtd, knh_Stmt_t *params, knh_Stmt_t *body, int isIteration);
void knh_StmtMETHOD_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
void knh_StmtFORMAT_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
void knh_StmtCLASS_asm(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr);
knh_KLRCode_t* new_KLRCode(Ctx *ctx, knh_uri_t uri, knh_bytes_t elf, knh_bytes_t dwarf);
void knh_Method_setKLRCode(Ctx *ctx, knh_Method_t *mtd, knh_KLRCode_t *code);
knh_code_t* knh_Method_pcstartNULL(knh_Method_t *mtd);
knh_bytes_t knh_KLRCode_tobytes(knh_KLRCode_t *o);
char *knh_Method_file(Ctx *ctx, knh_Method_t *mtd);
int knh_Method_pctoline(knh_Method_t *mtd, knh_code_t *pc);
void knh_Gamma_loadCompiledMethod(Ctx *ctx, knh_Gamma_t *abr);
knh_fmethod knh_Gamma_getCompiledMethod(Ctx *ctx, knh_Gamma_t *abr, knh_bytes_t cname, knh_bytes_t mname);
size_t knh_code_opsize(int opcode);
knh_code_t* KNH_ASM_HALT_(Ctx *ctx, knh_Gamma_t *o);
knh_code_t* KNH_ASM_MOVa_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_MOVn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_MOVo_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_MOVx_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_MOVDEF_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_MOVSYS_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2);
knh_code_t* KNH_ASM_XMOVs_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_XMOVo_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_XMOVx_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVDEF_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_XMOVSYS_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_ushort_t a2);
knh_code_t* KNH_ASM_MOVxi_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVsi_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_XMOVoi_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_XMOVxi_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVxio_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVxBXi_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2,knh_class_t a3);
knh_code_t* KNH_ASM_MOVxf_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVsf_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_XMOVof_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_XMOVxf_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVxfo_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVxBXf_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2,knh_class_t a3);
knh_code_t* KNH_ASM_MOVxb_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_XMOVsb_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_XMOVob_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_XMOVxb_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_EMOVs_(Ctx *ctx, knh_Gamma_t *o,knh_sfe_t a1,knh_sfe_t a2);
knh_code_t* KNH_ASM_EMOVo_(Ctx *ctx, knh_Gamma_t *o,knh_sfe_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_EMOVe_(Ctx *ctx, knh_Gamma_t *o,knh_sfe_t a1,knh_sfe_t a2);
knh_code_t* KNH_ASM_EMOVDEF_(Ctx *ctx, knh_Gamma_t *o,knh_sfe_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_EMOVSYS_(Ctx *ctx, knh_Gamma_t *o,knh_sfe_t a1,knh_ushort_t a2);
knh_code_t* KNH_ASM_SWAP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_PINIDEF_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_PINIo_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_PARAMS_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_SETESP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_CHECKESP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_RET_(Ctx *ctx, knh_Gamma_t *o);
knh_code_t* KNH_ASM_RETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_RETa_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_RETo_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_RETx_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfx_t a2);
knh_code_t* KNH_ASM_YEILDBREAK_(Ctx *ctx, knh_Gamma_t *o);
knh_code_t* KNH_ASM_BOX_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_BOXnc_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_NNBOX_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_NNBOXnc_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_UNBOX_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_CHECKNULL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_CHECKNULLx_(Ctx *ctx, knh_Gamma_t *o,knh_sfx_t a1);
knh_code_t* KNH_ASM_CHECKTYPE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_CHECKNNTYPE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_type_t a2);
knh_code_t* KNH_ASM_FCALL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2,knh_sfi_t a3,knh_Object_t* a4);
knh_code_t* KNH_ASM_SCALL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2,knh_Object_t* a3);
knh_code_t* KNH_ASM_AINVOKE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2);
knh_code_t* KNH_ASM_CALL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2,knh_methodn_t a3);
knh_code_t* KNH_ASM_ACALL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_ushort_t a2,knh_methodn_t a3);
knh_code_t* KNH_ASM_NEW_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_flag_t a2,knh_class_t a3,knh_ushort_t a4,knh_Object_t* a5);
knh_code_t* KNH_ASM_COPYSFP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_TOSTR_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_methodn_t a2);
knh_code_t* KNH_ASM_TOSTRf_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_methodn_t a2,knh_Object_t* a3);
knh_code_t* KNH_ASM_SMAP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_SMAPnc_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_MAP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_MAPnc_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_AMAP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_NNMAP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_class_t a2);
knh_code_t* KNH_ASM_JMP_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1);
knh_code_t* KNH_ASM_SKIP_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1);
knh_code_t* KNH_ASM_bJIFT_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_bJIFF_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_bJIFF_LOOP_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_JIFNUL_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_JIFNN_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_NEXT_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_INEXT_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_class_t a2,knh_sfi_t a3,knh_sfi_t a4);
knh_code_t* KNH_ASM_MAPNEXT_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_class_t a2,knh_sfi_t a3,knh_sfi_t a4);
knh_code_t* KNH_ASM_SMAPNEXT_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2,knh_sfi_t a3,knh_Object_t* a4);
knh_code_t* KNH_ASM_TRY_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_TRYEND_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_CATCH_(Ctx *ctx, knh_Gamma_t *o,knh_labelid_t a1,knh_sfi_t a2,knh_sfi_t a3,knh_Object_t* a4);
knh_code_t* KNH_ASM_PUSH_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_POP_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_THROW_(Ctx *ctx, knh_Gamma_t *o,knh_ushort_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_THROWs_(Ctx *ctx, knh_Gamma_t *o,knh_ushort_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_THROW_AGAIN_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_P_(Ctx *ctx, knh_Gamma_t *o,knh_flag_t a1,knh_methodn_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_PMSG_(Ctx *ctx, knh_Gamma_t *o,knh_flag_t a1,knh_Object_t* a2);
knh_code_t* KNH_ASM_iCAST_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_inCAST_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_fCAST_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_fnCAST_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_bNOT_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_iNEG_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_iADD_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iADDn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iSUB_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iSUBn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iMUL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iMULn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iDIV_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iDIVn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iMOD_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iMODn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iEQ_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iEQn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iNEQ_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iNEQn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iLT_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iLTn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iLTE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iLTEn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iGT_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iGTn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_iGTE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_iGTEn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_int_t a3);
knh_code_t* KNH_ASM_fNEG_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2);
knh_code_t* KNH_ASM_fADD_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fADDn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fSUB_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fSUBn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fMUL_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fMULn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fDIV_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fDIVn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fEQ_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fEQn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fNEQ_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fNEQn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fLT_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fLTn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fLTE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fLTEn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fGT_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fGTn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_fGTE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_fGTEn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_float_t a3);
knh_code_t* KNH_ASM_AGET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_AGETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_IAGET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_IAGETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_FAGET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_FAGETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_ASET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_ASETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_IASET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_IASETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_FASET_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_sfi_t a3);
knh_code_t* KNH_ASM_FASETn_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1,knh_sfi_t a2,knh_intptr_t a3);
knh_code_t* KNH_ASM_INITCODE_(Ctx *ctx, knh_Gamma_t *o,knh_sfi_t a1);
knh_code_t* KNH_ASM_NOP_(Ctx *ctx, knh_Gamma_t *o);
void knh_rewrite_addr(Ctx *ctx, knh_Gamma_t *o, knh_code_t *pc_start, knh_kode_t *op);
void knh_rewrite_NOP(Ctx *ctx, knh_Gamma_t *o, knh_code_t *pc_start, knh_kode_t *op);
void knh_Gamma_writeAddress(Ctx *ctx, knh_Gamma_t *o, knh_code_t *pc_start);
void knh_code_traverse(Ctx *ctx, knh_code_t *pc, knh_ftraverse ftr);
void knh_KLRCode__dumpmtd(Ctx *ctx, knh_KLRCode_t *o, knh_OutputStream_t *w, knh_Method_t *mtd);
METHOD knh_KLRCode_exec(Ctx *ctx, knh_sfp_t *sfp);
METHOD knh_KLRCode_exec(Ctx *ctx, knh_sfp_t *sfp);
knh_InputStream_t* new_ScriptInputStream(Ctx *ctx, knh_bytes_t path, knh_cwb_t *cwb, knh_NameSpace_t *ns, int isThrowable);
knh_Stmt_t *knh_InputStream_parseStmt(Ctx *ctx, knh_InputStream_t *in, int isData);
int knh_NameSpace_load(Ctx *ctx, knh_NameSpace_t *ns, knh_InputStream_t *in, int isEval, int isThrowable);
int knh_bytes_checkStmtLine(knh_bytes_t line);
Object* knh_InputStream_readData(Ctx *ctx, knh_InputStream_t *in);
void knh_invokeMethodTypingListener(Ctx *ctx, knh_DictMap_t *meta, knh_Method_t *mtd);
void knh_invokeMethodCompilationListener(Ctx *ctx, knh_DictMap_t *meta, knh_Method_t *mtd);
char* knh_token_tochar(knh_token_t t);
knh_methodn_t knh_token_tomethodn(knh_token_t t);
int knh_token_getOpPriority(knh_token_t t);
int knh_token_getOpSize(knh_token_t t);
knh_bool_t knh_token_isBeginOfStmt(knh_token_t t);
int knh_token_isKeyword(knh_token_t tt);
knh_Token_t *
knh_cwb_parseToken(Ctx *ctx, knh_cwb_t *cwb, knh_flag_t flag, knh_InputStream_t *in);
int knh_bytes_istoken(knh_bytes_t t, int ch);
char* knh_stmt_tochar(knh_stmt_t t);
int knh_stmt_isExpr(knh_stmt_t t);
knh_String_t* knh_Stmt_getPropertyNameNULL(Ctx *ctx, knh_Stmt_t *stmt);
int isSHORTCLASSN(Ctx *ctx, knh_Token_t *tk);
int knh_tokens_findPEACHBRACEIDX(knh_tkc_t *tc);
knh_Stmt_t *new_StmtSTMTBLOCK(Ctx *ctx, knh_tkc_t *tc, int isData);
void knh_resetSourceMoniter(void);
void knh_addSourceLine(size_t line);
void knh_foundKonohaStyle(size_t score);
size_t knh_getSourceScore(void);
size_t knh_getKonohaScore(void);
void knh_vperror(Ctx *ctx, knh_uri_t uri, int line, int pe, char *fmt, va_list ap);
void knh_perror(Ctx *ctx, knh_uri_t uri, int line, int pe, char *fmt, ...);
void knh_Token_perror(Ctx *ctx, knh_Token_t *tk, int pe, char *fmt, ...);
void knh_Gamma_perror(Ctx *ctx, knh_Gamma_t *abr, int pe, char *fmt, ...);
knh_Stmt_t* new_Stmt(Ctx *ctx, knh_flag_t flag, knh_stmt_t stt);
knh_Stmt_t* knh_Stmt_copy(Ctx *ctx, knh_Stmt_t *stmt);
void knh_Stmt_toERR(Ctx *ctx, knh_Stmt_t *stmt, Term *tm);
void knh_Stmt_add(Ctx *ctx, knh_Stmt_t *o, Term *tm);
void knh_Stmt_resize(Ctx *ctx, knh_Stmt_t *o, size_t n);
void knh_Stmt_swap(Ctx *ctx, knh_Stmt_t *o, size_t n, size_t m);
void knh_Stmt_insert(Ctx *ctx, knh_Stmt_t *o, size_t n, Term *tm);
knh_Stmt_t *knh_Stmt_tail(Ctx *ctx, knh_Stmt_t *o);
knh_Stmt_t* knh_StmtNULL_tail_append(Ctx *ctx, knh_Stmt_t *o, knh_Stmt_t *stmt);
knh_bool_t knh_Stmt_hasMeta(knh_Stmt_t *o);
knh_flag_t knh_StmtMETHOD_flag(Ctx *ctx, knh_Stmt_t *o);
knh_flag_t knh_StmtPRINT_flag(Ctx *ctx, knh_Stmt_t *o);
knh_bool_t knh_StmtMETA_isOverride(Ctx *ctx, knh_Stmt_t *o);
int knh_StmtMETA_is(Ctx *ctx, knh_Stmt_t *stmt, knh_bytes_t name);
knh_Token_t* new_Token(Ctx *ctx, knh_flag_t flag, knh_uri_t uri, knh_sline_t line, knh_token_t tt);
void knh_Token_setFL(knh_Token_t *o, Any *fln);
knh_Token_t *new_TokenASIS(Ctx *ctx, Any *fln);
knh_Token_t *new_TokenCID(Ctx *ctx, Any *fln, knh_class_t cid);
knh_Token_t *new_TokenMN(Ctx *ctx, Any *fln, knh_methodn_t mn);
knh_Token_t *new_TokenFN(Ctx *ctx, Any *fln, knh_fieldn_t fn);
knh_tkc_t* knh_Token_tc(Ctx *ctx, knh_Token_t *o, knh_tkc_t *tc);
void knh_Token_tokens_add(Ctx *ctx, knh_Token_t *o, knh_Token_t *tk);
void knh_Token_tokens_empty(Ctx *ctx, knh_Token_t *o);
char *knh_Token__tochar(Ctx *ctx, knh_Token_t *o);
knh_bytes_t knh_Token_tobytes(Ctx *ctx, knh_Token_t *o);
knh_String_t *new_StringSYMBOL(Ctx *ctx, knh_bytes_t t);
knh_Token_t *knh_cwb_newTokenSYMBOL(Ctx *ctx, knh_cwb_t *cwb, knh_flag_t flag, knh_InputStream_t *in);
void knh_InputStream_parseToken(Ctx *ctx, knh_InputStream_t *in, knh_Token_t *tk);
knh_Token_t* new_TokenCONST(Ctx *ctx, Any *fln, Any *data);
void knh_Token_setCONST(Ctx *ctx, knh_Token_t *o, Any *data);
knh_Token_t* knh_Token_toCONST(Ctx *ctx, knh_Token_t *o);
knh_Token_t* new_TokenNULL(Ctx *ctx, Any *fln, knh_type_t type);
knh_index_t knh_Gamma_indexOfLocalVariable(knh_Gamma_t *abr, knh_fieldn_t fnq);
int knh_bytes_findMT(Ctx *ctx, knh_bytes_t text, knh_bytes_t *mt, knh_bytes_t *expr, knh_bytes_t *next);
int TERMs_isCONST(knh_Stmt_t *stmt, size_t n);
int TERMs_isTRUE(knh_Stmt_t *stmt, size_t n);
int TERMs_isFALSE(knh_Stmt_t *stmt, size_t n);
int TERMs_isASIS(knh_Stmt_t *stmt, size_t n);
knh_type_t TERMs_gettype(knh_Stmt_t *stmt, size_t n);
Term * knh_StmtDECL_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns, int declClass);
Term *knh_StmtLET_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns, knh_type_t reqt);
Term *knh_StmtLETM_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns);
char *METHODN_op(knh_methodn_t mn);
Term *knh_StmtEXPR_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns, knh_class_t reqt);
Term *knh_StmtSEPARATOR_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns);
void knh_Gamma_initReg(Ctx *ctx, knh_Gamma_t *abr);
void knh_StmtMETHOD_typingBODY(Ctx *ctx, knh_Gamma_t *abr, knh_NameSpace_t *ns, knh_Method_t *mtd, knh_Stmt_t *stmtPARAMS, knh_Stmt_t *stmtBODY, int isIteration);
Term * knh_StmtMETHOD_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns);
Term * knh_StmtFUNCTION_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns, knh_type_t reqt);
Term *knh_StmtFORMAT_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns);
Term *knh_StmtCLASS_typing(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns);
int
knh_Stmt_typingBLOCK(Ctx *ctx, knh_Stmt_t *stmt, knh_Gamma_t *abr, knh_NameSpace_t *ns, int isIteration);
void *knh_cwb_dlopen(Ctx *ctx, knh_cwb_t *cwb);
void *knh_dlsym(Ctx *ctx, void* hdr, const char* symbol);
const char *knh_dlerror(Ctx *ctx);
int knh_dlclose(Ctx *ctx, void* hdr);
knh_iodrv_t *knh_getIODriver(Ctx *ctx, knh_bytes_t name);
knh_iodrv_t *knh_getDefaultIODriver(void);
void knh_InputStream_newClass(Ctx *ctx, knh_class_t cid);
knh_InputStream_t *new_InputStream__stdio(Ctx *ctx, FILE *fp, knh_String_t *enc);
knh_OutputStream_t *new_OutputStream__stdio(Ctx *ctx, FILE *fp, knh_String_t *enc);
char* knh_cwb_ospath(Ctx *ctx, knh_cwb_t* cwb);
char* knh_cwb_realpath(Ctx *ctx, knh_cwb_t *cwb);
knh_bool_t knh_cwb_isfile(Ctx *ctx, knh_cwb_t *cwb);
knh_bool_t knh_cwb_isdir(Ctx *ctx, knh_cwb_t *cwb);
knh_bool_t knh_cwb_parentpath(Ctx *ctx, knh_cwb_t *cwb, char *subbuf);
knh_bool_t knh_mkdir(Ctx *ctx, knh_bytes_t path, int isThrowable);
knh_bool_t knh_unlink(Ctx *ctx, knh_bytes_t path, int isThrowable);
knh_bool_t knh_rename(Ctx *ctx, knh_bytes_t on, knh_bytes_t nn, int isThrowable);
void knh_System_initPath(Ctx *ctx, knh_System_t *o);
char *konoha_encoding(void);
char *knh_format_lang(char *buf, size_t bufsiz);
void knh_write_USING_REGEX(Ctx *ctx, knh_OutputStream_t *w);
knh_regex_drvapi_t *knh_System_getRegexDriver(Ctx *ctx, knh_bytes_t name);
void knh_Regex_newClass(Ctx *ctx, knh_class_t cid);
knh_iodrv_t *knh_getSocketDriver(void);
void knh_Socket_newClass(Ctx *ctx, knh_class_t cid);
void knh_dbcurfree__NOP(knh_dbcur_t *dbcur);
void knh_write_USING_SQLITE3(Ctx *ctx, knh_OutputStream_t *w);
void knh_write_USING_MYSQL(Ctx *ctx, knh_OutputStream_t *w);
knh_db_drvapi_t *knh_System_getDefaultDBDriver(void);
knh_db_drvapi_t *knh_System_getDBDriver(Ctx *ctx, knh_bytes_t name);
void knh_Connection_newClass(Ctx *ctx, knh_class_t cid);
knh_thread_t knh_thread_self(void);
int knh_thread_detach(Ctx *ctx, knh_thread_t th);
int knh_thread_join(Ctx *ctx, knh_thread_t *thread, void **ret);
void knh_stack_threadRun(Ctx *ctx, knh_sfp_t *sfp);
int knh_mutex_init(knh_mutex_t *m);
int knh_mutex_lock(knh_mutex_t *m);
int knh_mutex_unlock(knh_mutex_t *m);
int knh_mutex_destroy(knh_mutex_t *m);
int knh_thread_key_create(knh_thread_key_t *key);
int knh_thread_setspecific(knh_thread_key_t key, const void *data);
void* knh_thread_getspecific(knh_thread_key_t key);
int knh_thread_key_delete(knh_thread_key_t key);
int knh_getpid(void);
knh_uint_t knh_initseed(void);
knh_uint64_t knh_getTimeMilliSecond(void);
knh_uint64_t knh_getProfCount(void);
knh_uint64_t knh_getProfCountPerSecond(void);
METHOD Script_changeChannel(Ctx *ctx, knh_sfp_t *sfp);
METHOD Script_hook(Ctx *ctx, knh_sfp_t *sfp);
int package_init(Ctx *ctx);
int knh_fcallback_cmpr(Object *obj, Object *obj2);
void *knh_generateCallBackFunc(Ctx *ctx, void *func, knh_Closure_t *c);
void konoha_init(void);
int knh_isToInteractiveMode(void);
int knh_isUserExperienceProgram(Ctx *ctx);
void knh_startUserExperienceProgram(Ctx *ctx);
void knh_setRuntimeError(Ctx *ctx, knh_String_t *msg);
void knh_setArgv(Ctx* ctx, int argc, char** argv);
char *knh_readline(char *prompt);
void knh_add_history(char *line);
int knh_ask(Ctx *ctx, char *prompt, int def);
knh_String_t *knh_Context_getScriptLineNULL(Ctx *ctx, size_t at);
METHOD Script_getLines(Ctx *ctx, knh_sfp_t *sfp);
void knh_srand(knh_uint_t seed);
knh_uint_t knh_rand(void);
knh_float_t knh_float_rand(void);
void knh_stack_pmsg(Ctx *ctx, knh_sfp_t *sfp, knh_flag_t flag, knh_String_t *s);
void knh_stack_p(Ctx *ctx, knh_sfp_t *sfp, knh_flag_t flag, knh_methodn_t mn, int sfpidx);
int knh_verbose(void);
void *knh_malloc(Ctx *ctx, size_t size);
void knh_free(Ctx *ctx, void *block, size_t size);
void *DBG2_malloc(Ctx *ctx, size_t size, char *func);
void DBG2_free(Ctx *ctx, void *p, size_t size, char *func);
int knh_isFastMallocMemory(void *p);
void *knh_fastmalloc(Ctx *ctx, size_t size);
void knh_fastfree(Ctx *ctx, void *block, size_t size);
knh_Object_t *new_hObject(Ctx *ctx, knh_flag_t flag, knh_class_t bcid, knh_class_t cid);
knh_Object_t *new_Object_bcid(Ctx *ctx, knh_class_t bcid, int init);
knh_Object_t *new_Object_init(Ctx *ctx, knh_flag_t flag, knh_class_t cid, int init);
void knh_Object_free(Ctx *ctx, knh_Object_t *o);
void knh_Object_traverse(Ctx *ctx, knh_Object_t *o, knh_ftraverse ftr);
void knh_Object_mark1(Ctx *ctx, Object *o);
void knh_System_gc(Ctx *ctx);
void knh_Object_RCsweep(Ctx *ctx, Object *o);
knh_ftraverse knh_getDefaultSweepFunc(void);
Object *knh_getKeyObject(Ctx *ctx, knh_String_t *key);
void knh_addKeyObject(Ctx *ctx, Object *value);
void knh_setSecureMode(void);
knh_bool_t knh_isTrustedPath(Ctx *ctx, knh_bytes_t path);
knh_bool_t knh_isTrustedHost(Ctx *ctx, knh_bytes_t host);
int knh_stack_argc(Ctx *ctx, knh_sfp_t *v);
knh_Array_t* knh_stack_toArray(Ctx *ctx, knh_sfp_t *sfp, knh_class_t cid);
METHOD System_stackdump(Ctx *ctx, knh_sfp_t *sfp);
void knh_stack_typecheck(Ctx *ctx, knh_sfp_t *sfp, knh_Method_t *mtd, knh_code_t *pc);
Object *knh_getClassConstNULL(Ctx *ctx, knh_class_t cid, knh_bytes_t name);
int knh_addClassConst(Ctx *ctx, knh_class_t cid, knh_String_t* name, Object *value);
Object *knh_getSystemConst(Ctx *ctx, int n);
int knh_bytes_isOptionalMT(knh_bytes_t t);
knh_bytes_t knh_bytes_mtoption(knh_bytes_t t);
char *knh_format_newFMT(char *buf, size_t bufsiz, knh_bytes_t t, int dot, char *fmt);
knh_String_t *knh_getFieldName(Ctx *ctx, knh_fieldn_t fn);
knh_fieldn_t knh_getfnq(Ctx *ctx, knh_bytes_t tname, knh_fieldn_t def);
knh_methodn_t knh_getmn(Ctx *ctx, knh_bytes_t tname, knh_methodn_t def);
knh_uri_t knh_getResourceId(Ctx *ctx, knh_bytes_t t);
knh_uri_t knh_cwb_getResourceId(Ctx *ctx, knh_cwb_t *cwb);
knh_String_t *knh_getResourceName(Ctx *ctx, knh_uri_t uri);
void knh_addDriverAPI(Ctx *ctx, char *alias, knh_drvapi_t* p);
knh_drvapi_t *knh_getDriverAPI(Ctx *ctx, int type, knh_bytes_t name);
knh_NameSpace_t *knh_getNameSpace(Ctx *ctx, knh_bytes_t name);
void knh_lockID(Ctx *ctx, knh_lock_t lockid, Object *ref, char *filename, int lineno);
void knh_unlockID(Ctx *ctx, knh_lock_t lockid, char *filename, int lineno);
void knh_Context_traverse(Ctx *ctx, knh_Context_t *o, knh_ftraverse ftr);
Ctx *new_ThreadContext(Ctx *parent);
void knh_ThreadContext_dispose(Ctx *ctx);
void knh_traverseAll(Ctx* ctx, knh_ftraverse ftr);
knh_bool_t knh_class_instanceof(Ctx *ctx, knh_class_t scid, knh_class_t tcid);
knh_bool_t knh_Object_opTypeOf(Ctx *ctx, Object *o, knh_type_t t);
knh_class_t knh_class_parent(Ctx *ctx, knh_class_t c1, knh_class_t c2);
knh_Exception_t* new_Exception__type(Ctx *ctx, Object *value, knh_type_t spec_type);

#ifdef __cplusplus
}
#endif

// THIS FILE WAS AUTOMATICALLY GENERATED. DON'T EDIT.

