GLFWErrorScope.java
com.mojang.blaze3d.GLFWErrorScope
信息
- 全限定名:com.mojang.blaze3d.GLFWErrorScope
- 类型:public class
- 包:com.mojang.blaze3d
- 源码路径:src/main/java/com/mojang/blaze3d/GLFWErrorScope.java
- 起始行号:L11
- 实现:AutoCloseable
- 职责:
TODO
字段/常量
-
previousCallback- 类型:
GLFWErrorCallback - 修饰符:
private final - 源码定位:
L12 - 说明:
TODO
- 类型:
-
expectedCallback- 类型:
GLFWErrorCallback - 修饰符:
private final - 源码定位:
L13 - 说明:
TODO
- 类型:
内部类/嵌套类型
- 无
构造器
public GLFWErrorScope(GLFWErrorCallbackI callback) @ L15
- 构造器名:GLFWErrorScope
- 源码定位:L15
- 修饰符:public
参数:
- callback: GLFWErrorCallbackI
说明:
TODO
方法
下面的方法块按源码顺序生成。
public void close() @ L20
- 方法名:close
- 源码定位:L20
- 返回类型:void
- 修饰符:public
参数:
- 无
说明:
TODO
代码
@OnlyIn(Dist.CLIENT)
public class GLFWErrorScope implements AutoCloseable {
private final @Nullable GLFWErrorCallback previousCallback;
private final GLFWErrorCallback expectedCallback;
public GLFWErrorScope(GLFWErrorCallbackI callback) {
this.expectedCallback = GLFWErrorCallback.create(callback);
this.previousCallback = GLFW.glfwSetErrorCallback(this.expectedCallback);
}
@Override
public void close() {
GLFWErrorCallback currentCallback = GLFW.glfwSetErrorCallback(this.previousCallback);
if (currentCallback != null && currentCallback.address() == this.expectedCallback.address()) {
currentCallback.close();
} else {
throw new IllegalStateException("GLFW error callback has unexpectedly changed during this scope!");
}
}
}引用的其他类
- 无