const knh_ConverterDPI_t *knh_KonohaSpace_getConverterDPINULL(CTX, kKonohaSpace *ns, kbytes_t path) { kbytes_t bpath = knh_KonohaSpace_getDpiPath(_ctx, ns, knh_bytes_next(path, ':')); void *d; if(path.text[0] == 'f') { d = (void*)knh_DictSet_get(_ctx, ctx->share->rconvDpiDictSet, bpath); } else { d = (void*)knh_DictSet_get(_ctx, ctx->share->convDpiDictSet, bpath); } return (const knh_ConverterDPI_t*)d; }
const knh_MapDPI_t *knh_KonohaSpace_getMapDPINULL(CTX, kKonohaSpace *ns, kbytes_t path) { kbytes_t hpath = knh_KonohaSpace_getDpiPath(_ctx, ns, knh_bytes_head(path, ':')); return (const knh_MapDPI_t*)knh_DictSet_get(_ctx, ctx->share->mapDpiDictSet, hpath); }
const knh_PathDPI_t *knh_NameSpace_getStreamDPINULL(CTX ctx, kNameSpace *ns, kbytes_t path) { kbytes_t hpath = knh_NameSpace_getDpiPath(ctx, ns, knh_bytes_head(path, ':')); return (const knh_PathDPI_t *)knh_DictSet_get(ctx, ctx->share->streamDpiDictSet, hpath); }