static void knh_write_Method(CTX ctx, knh_OutputStream_t *w, const knh_ClassTBL_t *ct, knh_Method_t *o) { knh_write_TAB(ctx, w); if(Method_isAbstract(o)) { knh_write_ascii(ctx, w, "@Abstract "); } knh_write_type(ctx, w, knh_type_tocid(ctx, knh_ParamArray_rtype(DP(o)->mp), ct->cid)); knh_putc(ctx, w, ' '); if(Method_isStatic(o)) { knh_write_ascii(ctx, w, S_tochar(ct->sname)); knh_putc(ctx, w, '.'); } knh_write_mn(ctx, w, SP(o)->mn); knh_putc(ctx, w, '('); size_t i; for(i = 0; i < knh_Method_psize(o); i++) { knh_param_t *p = knh_ParamArray_get(DP(o)->mp, i); if(i > 0) { knh_write_delim(ctx, w); } knh_write_type(ctx, w, knh_type_tocid(ctx, p->type, ct->cid)); knh_putc(ctx, w, ' '); knh_write_ascii(ctx, w, FN__(p->fn)); } if(ParamArray_isVARGs(DP(o)->mp)) { knh_write_delim(ctx, w); knh_write_dots(ctx, w); } knh_putc(ctx, w, ')'); knh_write_EOL(ctx, w); }
static void ClassTYPEMAP_man(CTX ctx, knh_OutputStream_t *w, const knh_ClassTBL_t *ct, knh_NameSpace_t *ns) { size_t i; int hasCaption = 0; knh_Array_t *typemaps = ct->typemaps; for(i = 0; i < typemaps->size; i++) { if(hasCaption == 0) { knh_write_ctext(ctx, w, _("TYPEMAP")); hasCaption = 1; } knh_TypeMap_t *mpr = typemaps->trans[i]; knh_write_TAB(ctx, w); /*knh_write_TAB(ctx, w);*/ if(TypeMap_isInterface(mpr)) { knh_write_ascii(ctx, w, "interface "); } else { knh_write_ascii(ctx, w, "to "); } knh_write_cid(ctx, w, SP(mpr)->tcid); knh_write_EOL(ctx, w); } if(hasCaption == 1) { knh_write_EOL(ctx, w); } }
static void knh_showSecurityAlert(CTX ctx, kOutputStream *w) { if(SecurityAlertMessage != NULL /*&& CTX_isInteractive(ctx)*/) { knh_write_ascii(ctx, w, TERM_BBOLD(ctx)); knh_write_ascii(ctx, w, "SECURITY ALERT: "); knh_write_ascii(ctx, w, SecurityAlertMessage); knh_write_ascii(ctx, w, TERM_EBOLD(ctx)); knh_write_EOL(ctx, w); knh_write_EOL(ctx, w); knh_setSecurityAlertMessage(NULL, 0); } }
static void knh_write_ctext(CTX ctx, knh_OutputStream_t *w, const char *msg) { // knh_write_ascii(ctx, w, TERM_BBOLD(ctx)); knh_write_ascii(ctx, w, msg); // knh_write_ascii(ctx, w, TERM_EBOLD(ctx)); knh_write_EOL(ctx, w); }
static void ClassOP_man(CTX ctx, knh_OutputStream_t *w, const knh_ClassTBL_t *ct, knh_NameSpace_t *ns) { size_t i, cnt = 0, hasCaption = 0; knh_Array_t *a = ct->methods; int isBOL = 1; char buf[40]; for(i = 0; i < knh_Array_size(a); i++) { knh_Method_t *mtd = a->methods[i]; char *op = MNOP__(SP(mtd)->mn); if(op == NULL) continue; if(hasCaption == 0) { knh_write_ctext(ctx, w, _("OPERATOR")); hasCaption = 1; } if(isBOL == 1) { knh_write_TAB(ctx, w); isBOL = 0; } knh_snprintf(buf, sizeof(buf), "%-14s", op); knh_write_ascii(ctx, w, buf); if(cnt % 5 == 4) { knh_write_EOL(ctx, w); isBOL = 1; } cnt++; } if(isBOL != 1) { knh_write_EOL(ctx, w); } if(hasCaption == 1) { knh_write_EOL(ctx, w); } }
static void knh_write_cline(CTX ctx, kOutputStream *w, const char *file, kuintptr_t line) { knh_putc(ctx, w, '('); knh_write_ascii(ctx, w, knh_sfile(file)); knh_putc(ctx, w, ':'); knh_write_dfmt(ctx, w, K_INTPTR_FMT, line); knh_putc(ctx, w, ')'); knh_putc(ctx, w, ' '); }
static void ClassNAME_man(CTX ctx, knh_OutputStream_t *w, const knh_ClassTBL_t *ct) { knh_write_ctext(ctx, w, _("CLASS")); knh_write_TAB(ctx, w); knh_write_cid(ctx, w, ct->cid); knh_write_EOL(ctx, w); while(ct->supcid != CLASS_Object) { knh_class_t cid = ct->supcid; knh_write_TAB(ctx, w); knh_write_ascii(ctx, w, _("extends ")); knh_write_cid(ctx, w, cid); knh_write_EOL(ctx, w); ct = ct->supTBL; } knh_write_EOL(ctx, w); }
void knh_write_now(CTX ctx, kOutputStream *w) { char buf[80]; time_t t; struct tm tm; time(&t); #if defined(K_USING_WINDOWS_) #if defined(K_USING_MINGW_) tm = *localtime(&t); #else localtime_s(&tm, &t); #endif /* defined(K_USING_MINGW_) */ #else localtime_r(&t, &tm); #endif /* defined(K_USING_WINDOWS_) */ knh_write_ascii(ctx, w, knh_format_w3cdtf(buf, sizeof(buf), &tm)); }
static knh_String_t *Gamma_vperror(CTX ctx, int pe, const char *fmt, va_list ap) { knh_String_t *msg = TS_EMPTY; int isPRINT = (pe <= KC_DWARN) ? 1 : 0; if(pe != KC_DEBUG && (CTX_isInteractive(ctx) || knh_isCompileOnly(ctx))) { isPRINT = 1; } if(Gamma_isQuiet(ctx->gma) || ctx->gma->uline == 0) { isPRINT = 0; } //DBG_P("/*isPRINT=%d*/ uline=%d", isPRINT, ctx->gma->uline); if(isPRINT == 1) { knh_cwb_t cwbbuf, *cwb = knh_cwb_open(ctx, &cwbbuf); knh_write_uline(ctx, cwb->w, ctx->gma->uline); knh_write_ascii(ctx, cwb->w, KC__(pe)); knh_vprintf(ctx, cwb->w, fmt, ap); msg = knh_cwb_newString(ctx, cwb); knh_Array_add(ctx, DP(ctx->gma)->errmsgs, msg); fprintf(stderr, "%s - %s%s\n", TERM_BNOTE(ctx, pe), S_tochar(msg), TERM_ENOTE(ctx, pe)); } return msg; }