// void javax.darjeeling.Darjeeling.print(int) void javax_darjeeling_Darjeeling_void_print_int() { char temp[16]; snprintf(temp, 16, "%ld", dj_exec_stackPopInt()); if (nesc_printf(temp)==0) blockThreadForPrintf(); }
// void javax.darjeeling.Darjeeling.printBytesAsString(byte[]) void javax_darjeeling_Darjeeling_void_printBytesAsString_byte__() { dj_int_array* byteStr = REF_TO_VOIDP(dj_exec_stackPopRef()); // check null if (byteStr==nullref) { dj_exec_createAndThrow(BASE_CDEF_java_lang_NullPointerException); } //nesc_printf(byteStr->data.bytes); if (nesc_printf(byteStr->data.bytes)==0) blockThreadForPrintf(); }
// void javax.darjeeling.Darjeeling.print(byte[]) void javax_darjeeling_Darjeeling_void_print_byte__() { int i; dj_int_array * byteArray = REF_TO_VOIDP(dj_exec_stackPopRef()); // check null if (byteArray==nullref) { dj_exec_createAndThrow(BASE_CDEF_java_lang_NullPointerException); } char temp[byteArray->array.length]; for (i = 0; i < byteArray->array.length; i ++) { temp[i] = byteArray->data.bytes[i]; } if (nesc_printf(temp)==0) blockThreadForPrintf(); }
//TODO: check if exit (-1) terminates the node void dj_panic(int32_t panictype) { switch(panictype) { case DJ_PANIC_OUT_OF_MEMORY: nesc_printf("PANIC: OUT OF MEMORY\n"); break; case DJ_PANIC_ILLEGAL_INTERNAL_STATE: nesc_printf("PANIC: ILLEGAL INTERNAL STATE\n"); break; case DJ_PANIC_UNIMPLEMENTED_FEATURE: nesc_printf("PANIC: UNIMPLEMENTED FEATURE\n"); break; case DJ_PANIC_UNCAUGHT_EXCEPTION: nesc_printf("PANIC: UNCAUGHT EXCEPTION\n"); break; default: nesc_printf("PANIC: UNKNOWN TYPE\n"); break; } // exit(-1); while(1) {}; }