Files
Carbon/src/main/org/neoflock/NeoNucleus/nn_Architecture.java
2026-05-28 21:52:10 -03:00

29 lines
1.0 KiB
Java

package org.neoflock.NeoNucleus;
import java.util.function.Function;
public final class nn_Architecture extends PointerBackedClass implements ManuallyAllocated {
public final String name;
public final Function<String, Integer> handler;
public nn_Architecture(String name, Function<String, Integer> handler) { // string is a placeholder; please fix
this.name = name;
this.handler = handler;
}
private nn_Architecture(String name) { // this overload is used by JNI when returning instances of native nn_Architecture(s)
this.name = name;
this.handler = (String tmp) -> {
// maybe in the future we can let this happen idk
throw new IllegalCallerException("Calling native architecture handlers from Java is not allowed!");
};
}
private int handleNative() { // i aint gonna be trying to call that Function from jni man
return handler.apply("placeholder");
}
public native boolean allocate();
public native boolean free();
}