| 5868 | } |
| 5869 | |
| 5870 | object defineClass(Thread* t, |
| 5871 | GcClassLoader* loader, |
| 5872 | const uint8_t* buffer, |
| 5873 | unsigned length) |
| 5874 | { |
| 5875 | PROTECT(t, loader); |
| 5876 | |
| 5877 | object c = parseClass(t, loader, buffer, length); |
| 5878 | |
| 5879 | // char name[byteArrayLength(t, className(t, c))]; |
| 5880 | // memcpy(name, &byteArrayBody(t, className(t, c), 0), |
| 5881 | // byteArrayLength(t, className(t, c))); |
| 5882 | // replace('/', '-', name); |
| 5883 | |
| 5884 | // const unsigned BufferSize = 1024; |
| 5885 | // char path[BufferSize]; |
| 5886 | // snprintf(path, BufferSize, "/tmp/avian-define-class/%s.class", name); |
| 5887 | |
| 5888 | // FILE* file = fopen(path, "wb"); |
| 5889 | // if (file) { |
| 5890 | // fwrite(buffer, length, 1, file); |
| 5891 | // fclose(file); |
| 5892 | // } |
| 5893 | |
| 5894 | PROTECT(t, c); |
| 5895 | |
| 5896 | saveLoadedClass(t, loader, cast<GcClass>(t, c)); |
| 5897 | |
| 5898 | return c; |
| 5899 | } |
| 5900 | |
| 5901 | void populateMultiArray(Thread* t, |
| 5902 | object array, |
nothing calls this directly
no test coverage detected