#![allow(non_snake_case, clippy::type_complexity, clippy::too_many_arguments, clippy::missing_safety_doc, clippy::missing_transmute_annotations, dead_code)]
use std::ffi::{c_void, CStr};
pub struct Gles {
pub glActiveTexture: unsafe extern "system" fn(u32),
pub glAttachShader: unsafe extern "system" fn(u32, u32),
pub glBindAttribLocation: unsafe extern "system" fn(u32, u32, *const c_void),
pub glBindBuffer: unsafe extern "system" fn(u32, u32),
pub glBindFramebuffer: unsafe extern "system" fn(u32, u32),
pub glBindRenderbuffer: unsafe extern "system" fn(u32, u32),
pub glBindTexture: unsafe extern "system" fn(u32, u32),
pub glBlendColor: unsafe extern "system" fn(f32, f32, f32, f32),
pub glBlendEquation: unsafe extern "system" fn(u32),
pub glBlendEquationSeparate: unsafe extern "system" fn(u32, u32),
pub glBlendFunc: unsafe extern "system" fn(u32, u32),
pub glBlendFuncSeparate: unsafe extern "system" fn(u32, u32, u32, u32),
pub glBufferData: unsafe extern "system" fn(u32, isize, *const c_void, u32),
pub glBufferSubData: unsafe extern "system" fn(u32, isize, isize, *const c_void),
pub glCheckFramebufferStatus: unsafe extern "system" fn(u32) -> u32,
pub glClear: unsafe extern "system" fn(u32),
pub glClearColor: unsafe extern "system" fn(f32, f32, f32, f32),
pub glClearDepthf: unsafe extern "system" fn(f32),
pub glClearStencil: unsafe extern "system" fn(i32),
pub glColorMask: unsafe extern "system" fn(u8, u8, u8, u8),
pub glCompileShader: unsafe extern "system" fn(u32),
pub glCompressedTexImage2D: unsafe extern "system" fn(u32, i32, u32, i32, i32, i32, i32, *const c_void),
pub glCompressedTexSubImage2D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, u32, i32, *const c_void),
pub glCopyTexImage2D: unsafe extern "system" fn(u32, i32, u32, i32, i32, i32, i32, i32),
pub glCopyTexSubImage2D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, i32, i32),
pub glCreateProgram: unsafe extern "system" fn() -> u32,
pub glCreateShader: unsafe extern "system" fn(u32) -> u32,
pub glCullFace: unsafe extern "system" fn(u32),
pub glDeleteBuffers: unsafe extern "system" fn(i32, *const c_void),
pub glDeleteFramebuffers: unsafe extern "system" fn(i32, *const c_void),
pub glDeleteProgram: unsafe extern "system" fn(u32),
pub glDeleteRenderbuffers: unsafe extern "system" fn(i32, *const c_void),
pub glDeleteShader: unsafe extern "system" fn(u32),
pub glDeleteTextures: unsafe extern "system" fn(i32, *const c_void),
pub glDepthFunc: unsafe extern "system" fn(u32),
pub glDepthMask: unsafe extern "system" fn(u8),
pub glDepthRangef: unsafe extern "system" fn(f32, f32),
pub glDetachShader: unsafe extern "system" fn(u32, u32),
pub glDisable: unsafe extern "system" fn(u32),
pub glDisableVertexAttribArray: unsafe extern "system" fn(u32),
pub glDrawArrays: unsafe extern "system" fn(u32, i32, i32),
pub glDrawElements: unsafe extern "system" fn(u32, i32, u32, *const c_void),
pub glEnable: unsafe extern "system" fn(u32),
pub glEnableVertexAttribArray: unsafe extern "system" fn(u32),
pub glFinish: unsafe extern "system" fn(),
pub glFlush: unsafe extern "system" fn(),
pub glFramebufferRenderbuffer: unsafe extern "system" fn(u32, u32, u32, u32),
pub glFramebufferTexture2D: unsafe extern "system" fn(u32, u32, u32, u32, i32),
pub glFrontFace: unsafe extern "system" fn(u32),
pub glGenBuffers: unsafe extern "system" fn(i32, *mut c_void),
pub glGenerateMipmap: unsafe extern "system" fn(u32),
pub glGenFramebuffers: unsafe extern "system" fn(i32, *mut c_void),
pub glGenRenderbuffers: unsafe extern "system" fn(i32, *mut c_void),
pub glGenTextures: unsafe extern "system" fn(i32, *mut c_void),
pub glGetActiveAttrib: unsafe extern "system" fn(u32, u32, i32, *mut c_void, *mut c_void, *mut c_void, *mut c_void),
pub glGetActiveUniform: unsafe extern "system" fn(u32, u32, i32, *mut c_void, *mut c_void, *mut c_void, *mut c_void),
pub glGetAttachedShaders: unsafe extern "system" fn(u32, i32, *mut c_void, *mut c_void),
pub glGetAttribLocation: unsafe extern "system" fn(u32, *const c_void) -> i32,
pub glGetBooleanv: unsafe extern "system" fn(u32, *mut c_void),
pub glGetBufferParameteriv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetError: unsafe extern "system" fn() -> u32,
pub glGetFloatv: unsafe extern "system" fn(u32, *mut c_void),
pub glGetFramebufferAttachmentParameteriv: unsafe extern "system" fn(u32, u32, u32, *mut c_void),
pub glGetIntegerv: unsafe extern "system" fn(u32, *mut c_void),
pub glGetProgramiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetProgramInfoLog: unsafe extern "system" fn(u32, i32, *mut c_void, *mut c_void),
pub glGetRenderbufferParameteriv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetShaderiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetShaderInfoLog: unsafe extern "system" fn(u32, i32, *mut c_void, *mut c_void),
pub glGetShaderPrecisionFormat: unsafe extern "system" fn(u32, u32, *mut c_void, *mut c_void),
pub glGetShaderSource: unsafe extern "system" fn(u32, i32, *mut c_void, *mut c_void),
pub glGetString: unsafe extern "system" fn(u32) -> *const c_void,
pub glGetTexParameterfv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetTexParameteriv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetUniformfv: unsafe extern "system" fn(u32, i32, *mut c_void),
pub glGetUniformiv: unsafe extern "system" fn(u32, i32, *mut c_void),
pub glGetUniformLocation: unsafe extern "system" fn(u32, *const c_void) -> i32,
pub glGetVertexAttribfv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetVertexAttribiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetVertexAttribPointerv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glHint: unsafe extern "system" fn(u32, u32),
pub glIsBuffer: unsafe extern "system" fn(u32) -> u8,
pub glIsEnabled: unsafe extern "system" fn(u32) -> u8,
pub glIsFramebuffer: unsafe extern "system" fn(u32) -> u8,
pub glIsProgram: unsafe extern "system" fn(u32) -> u8,
pub glIsRenderbuffer: unsafe extern "system" fn(u32) -> u8,
pub glIsShader: unsafe extern "system" fn(u32) -> u8,
pub glIsTexture: unsafe extern "system" fn(u32) -> u8,
pub glLineWidth: unsafe extern "system" fn(f32),
pub glLinkProgram: unsafe extern "system" fn(u32),
pub glPixelStorei: unsafe extern "system" fn(u32, i32),
pub glPolygonOffset: unsafe extern "system" fn(f32, f32),
pub glReadPixels: unsafe extern "system" fn(i32, i32, i32, i32, u32, u32, *mut c_void),
pub glReleaseShaderCompiler: unsafe extern "system" fn(),
pub glRenderbufferStorage: unsafe extern "system" fn(u32, u32, i32, i32),
pub glSampleCoverage: unsafe extern "system" fn(f32, u8),
pub glScissor: unsafe extern "system" fn(i32, i32, i32, i32),
pub glShaderBinary: unsafe extern "system" fn(i32, *const c_void, u32, *const c_void, i32),
pub glShaderSource: unsafe extern "system" fn(u32, i32, *const c_void, *const c_void),
pub glStencilFunc: unsafe extern "system" fn(u32, i32, u32),
pub glStencilFuncSeparate: unsafe extern "system" fn(u32, u32, i32, u32),
pub glStencilMask: unsafe extern "system" fn(u32),
pub glStencilMaskSeparate: unsafe extern "system" fn(u32, u32),
pub glStencilOp: unsafe extern "system" fn(u32, u32, u32),
pub glStencilOpSeparate: unsafe extern "system" fn(u32, u32, u32, u32),
pub glTexImage2D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, u32, u32, *const c_void),
pub glTexParameterf: unsafe extern "system" fn(u32, u32, f32),
pub glTexParameterfv: unsafe extern "system" fn(u32, u32, *const c_void),
pub glTexParameteri: unsafe extern "system" fn(u32, u32, i32),
pub glTexParameteriv: unsafe extern "system" fn(u32, u32, *const c_void),
pub glTexSubImage2D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, u32, u32, *const c_void),
pub glUniform1f: unsafe extern "system" fn(i32, f32),
pub glUniform1fv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform1i: unsafe extern "system" fn(i32, i32),
pub glUniform1iv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform2f: unsafe extern "system" fn(i32, f32, f32),
pub glUniform2fv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform2i: unsafe extern "system" fn(i32, i32, i32),
pub glUniform2iv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform3f: unsafe extern "system" fn(i32, f32, f32, f32),
pub glUniform3fv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform3i: unsafe extern "system" fn(i32, i32, i32, i32),
pub glUniform3iv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform4f: unsafe extern "system" fn(i32, f32, f32, f32, f32),
pub glUniform4fv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform4i: unsafe extern "system" fn(i32, i32, i32, i32, i32),
pub glUniform4iv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniformMatrix2fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix3fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix4fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUseProgram: unsafe extern "system" fn(u32),
pub glValidateProgram: unsafe extern "system" fn(u32),
pub glVertexAttrib1f: unsafe extern "system" fn(u32, f32),
pub glVertexAttrib1fv: unsafe extern "system" fn(u32, *const c_void),
pub glVertexAttrib2f: unsafe extern "system" fn(u32, f32, f32),
pub glVertexAttrib2fv: unsafe extern "system" fn(u32, *const c_void),
pub glVertexAttrib3f: unsafe extern "system" fn(u32, f32, f32, f32),
pub glVertexAttrib3fv: unsafe extern "system" fn(u32, *const c_void),
pub glVertexAttrib4f: unsafe extern "system" fn(u32, f32, f32, f32, f32),
pub glVertexAttrib4fv: unsafe extern "system" fn(u32, *const c_void),
pub glVertexAttribPointer: unsafe extern "system" fn(u32, i32, u32, u8, i32, *const c_void),
pub glViewport: unsafe extern "system" fn(i32, i32, i32, i32),
pub glReadBuffer: unsafe extern "system" fn(u32),
pub glDrawRangeElements: unsafe extern "system" fn(u32, u32, u32, i32, u32, *const c_void),
pub glTexImage3D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, i32, u32, u32, *const c_void),
pub glTexSubImage3D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, u32, *const c_void),
pub glCopyTexSubImage3D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, i32, i32, i32),
pub glCompressedTexImage3D: unsafe extern "system" fn(u32, i32, u32, i32, i32, i32, i32, i32, *const c_void),
pub glCompressedTexSubImage3D: unsafe extern "system" fn(u32, i32, i32, i32, i32, i32, i32, i32, u32, i32, *const c_void),
pub glGenQueries: unsafe extern "system" fn(i32, *mut c_void),
pub glDeleteQueries: unsafe extern "system" fn(i32, *const c_void),
pub glIsQuery: unsafe extern "system" fn(u32) -> u8,
pub glBeginQuery: unsafe extern "system" fn(u32, u32),
pub glEndQuery: unsafe extern "system" fn(u32),
pub glGetQueryiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetQueryObjectuiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glUnmapBuffer: unsafe extern "system" fn(u32) -> u8,
pub glGetBufferPointerv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glDrawBuffers: unsafe extern "system" fn(i32, *const c_void),
pub glUniformMatrix2x3fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix3x2fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix2x4fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix4x2fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix3x4fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glUniformMatrix4x3fv: unsafe extern "system" fn(i32, i32, u8, *const c_void),
pub glBlitFramebuffer: unsafe extern "system" fn(i32, i32, i32, i32, i32, i32, i32, i32, u32, u32),
pub glRenderbufferStorageMultisample: unsafe extern "system" fn(u32, i32, u32, i32, i32),
pub glFramebufferTextureLayer: unsafe extern "system" fn(u32, u32, u32, i32, i32),
pub glMapBufferRange: unsafe extern "system" fn(u32, isize, isize, u32) -> *mut c_void,
pub glFlushMappedBufferRange: unsafe extern "system" fn(u32, isize, isize),
pub glBindVertexArray: unsafe extern "system" fn(u32),
pub glDeleteVertexArrays: unsafe extern "system" fn(i32, *const c_void),
pub glGenVertexArrays: unsafe extern "system" fn(i32, *mut c_void),
pub glIsVertexArray: unsafe extern "system" fn(u32) -> u8,
pub glGetIntegeri_v: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glBeginTransformFeedback: unsafe extern "system" fn(u32),
pub glEndTransformFeedback: unsafe extern "system" fn(),
pub glBindBufferRange: unsafe extern "system" fn(u32, u32, u32, isize, isize),
pub glBindBufferBase: unsafe extern "system" fn(u32, u32, u32),
pub glTransformFeedbackVaryings: unsafe extern "system" fn(u32, i32, *const c_void, u32),
pub glGetTransformFeedbackVarying: unsafe extern "system" fn(u32, u32, i32, *mut c_void, *mut c_void, *mut c_void, *mut c_void),
pub glVertexAttribIPointer: unsafe extern "system" fn(u32, i32, u32, i32, *const c_void),
pub glGetVertexAttribIiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetVertexAttribIuiv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glVertexAttribI4i: unsafe extern "system" fn(u32, i32, i32, i32, i32),
pub glVertexAttribI4ui: unsafe extern "system" fn(u32, u32, u32, u32, u32),
pub glVertexAttribI4iv: unsafe extern "system" fn(u32, *const c_void),
pub glVertexAttribI4uiv: unsafe extern "system" fn(u32, *const c_void),
pub glGetUniformuiv: unsafe extern "system" fn(u32, i32, *mut c_void),
pub glGetFragDataLocation: unsafe extern "system" fn(u32, *const c_void) -> i32,
pub glUniform1ui: unsafe extern "system" fn(i32, u32),
pub glUniform2ui: unsafe extern "system" fn(i32, u32, u32),
pub glUniform3ui: unsafe extern "system" fn(i32, u32, u32, u32),
pub glUniform4ui: unsafe extern "system" fn(i32, u32, u32, u32, u32),
pub glUniform1uiv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform2uiv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform3uiv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glUniform4uiv: unsafe extern "system" fn(i32, i32, *const c_void),
pub glClearBufferiv: unsafe extern "system" fn(u32, i32, *const c_void),
pub glClearBufferuiv: unsafe extern "system" fn(u32, i32, *const c_void),
pub glClearBufferfv: unsafe extern "system" fn(u32, i32, *const c_void),
pub glClearBufferfi: unsafe extern "system" fn(u32, i32, f32, i32),
pub glGetStringi: unsafe extern "system" fn(u32, u32) -> *const c_void,
pub glCopyBufferSubData: unsafe extern "system" fn(u32, u32, isize, isize, isize),
pub glGetUniformIndices: unsafe extern "system" fn(u32, i32, *const c_void, *mut c_void),
pub glGetActiveUniformsiv: unsafe extern "system" fn(u32, i32, *const c_void, u32, *mut c_void),
pub glGetUniformBlockIndex: unsafe extern "system" fn(u32, *const c_void) -> u32,
pub glGetActiveUniformBlockiv: unsafe extern "system" fn(u32, u32, u32, *mut c_void),
pub glGetActiveUniformBlockName: unsafe extern "system" fn(u32, u32, i32, *mut c_void, *mut c_void),
pub glUniformBlockBinding: unsafe extern "system" fn(u32, u32, u32),
pub glDrawArraysInstanced: unsafe extern "system" fn(u32, i32, i32, i32),
pub glDrawElementsInstanced: unsafe extern "system" fn(u32, i32, u32, *const c_void, i32),
pub glFenceSync: unsafe extern "system" fn(u32, u32) -> *const c_void,
pub glIsSync: unsafe extern "system" fn(*const c_void) -> u8,
pub glDeleteSync: unsafe extern "system" fn(*const c_void),
pub glClientWaitSync: unsafe extern "system" fn(*const c_void, u32, u64) -> u32,
pub glWaitSync: unsafe extern "system" fn(*const c_void, u32, u64),
pub glGetInteger64v: unsafe extern "system" fn(u32, *mut c_void),
pub glGetSynciv: unsafe extern "system" fn(*const c_void, u32, i32, *mut c_void, *mut c_void),
pub glGetInteger64i_v: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetBufferParameteri64v: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGenSamplers: unsafe extern "system" fn(i32, *mut c_void),
pub glDeleteSamplers: unsafe extern "system" fn(i32, *const c_void),
pub glIsSampler: unsafe extern "system" fn(u32) -> u8,
pub glBindSampler: unsafe extern "system" fn(u32, u32),
pub glSamplerParameteri: unsafe extern "system" fn(u32, u32, i32),
pub glSamplerParameteriv: unsafe extern "system" fn(u32, u32, *const c_void),
pub glSamplerParameterf: unsafe extern "system" fn(u32, u32, f32),
pub glSamplerParameterfv: unsafe extern "system" fn(u32, u32, *const c_void),
pub glGetSamplerParameteriv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glGetSamplerParameterfv: unsafe extern "system" fn(u32, u32, *mut c_void),
pub glVertexAttribDivisor: unsafe extern "system" fn(u32, u32),
pub glBindTransformFeedback: unsafe extern "system" fn(u32, u32),
pub glDeleteTransformFeedbacks: unsafe extern "system" fn(i32, *const c_void),
pub glGenTransformFeedbacks: unsafe extern "system" fn(i32, *mut c_void),
pub glIsTransformFeedback: unsafe extern "system" fn(u32) -> u8,
pub glPauseTransformFeedback: unsafe extern "system" fn(),
pub glResumeTransformFeedback: unsafe extern "system" fn(),
pub glGetProgramBinary: unsafe extern "system" fn(u32, i32, *mut c_void, *mut c_void, *mut c_void),
pub glProgramBinary: unsafe extern "system" fn(u32, u32, *const c_void, i32),
pub glProgramParameteri: unsafe extern "system" fn(u32, u32, i32),
pub glInvalidateFramebuffer: unsafe extern "system" fn(u32, i32, *const c_void),
pub glInvalidateSubFramebuffer: unsafe extern "system" fn(u32, i32, *const c_void, i32, i32, i32, i32),
pub glTexStorage2D: unsafe extern "system" fn(u32, i32, u32, i32, i32),
pub glTexStorage3D: unsafe extern "system" fn(u32, i32, u32, i32, i32, i32),
pub glGetInternalformativ: unsafe extern "system" fn(u32, u32, u32, i32, *mut c_void),
pub glRequestExtensionANGLE: unsafe extern "system" fn(*const c_void),
}
impl Gles {
pub unsafe fn load(get: impl Fn(&CStr) -> *const c_void) -> Result<Gles, String> {
let f = |name: &CStr| -> Result<*const c_void, String> {
let p = get(name);
if p.is_null() { Err(format!("{} is missing", name.to_string_lossy())) } else { Ok(p) }
};
unsafe {
Ok(Gles {
glActiveTexture: std::mem::transmute::<*const c_void, _>(f(c"glActiveTexture")?),
glAttachShader: std::mem::transmute::<*const c_void, _>(f(c"glAttachShader")?),
glBindAttribLocation: std::mem::transmute::<*const c_void, _>(f(c"glBindAttribLocation")?),
glBindBuffer: std::mem::transmute::<*const c_void, _>(f(c"glBindBuffer")?),
glBindFramebuffer: std::mem::transmute::<*const c_void, _>(f(c"glBindFramebuffer")?),
glBindRenderbuffer: std::mem::transmute::<*const c_void, _>(f(c"glBindRenderbuffer")?),
glBindTexture: std::mem::transmute::<*const c_void, _>(f(c"glBindTexture")?),
glBlendColor: std::mem::transmute::<*const c_void, _>(f(c"glBlendColor")?),
glBlendEquation: std::mem::transmute::<*const c_void, _>(f(c"glBlendEquation")?),
glBlendEquationSeparate: std::mem::transmute::<*const c_void, _>(f(c"glBlendEquationSeparate")?),
glBlendFunc: std::mem::transmute::<*const c_void, _>(f(c"glBlendFunc")?),
glBlendFuncSeparate: std::mem::transmute::<*const c_void, _>(f(c"glBlendFuncSeparate")?),
glBufferData: std::mem::transmute::<*const c_void, _>(f(c"glBufferData")?),
glBufferSubData: std::mem::transmute::<*const c_void, _>(f(c"glBufferSubData")?),
glCheckFramebufferStatus: std::mem::transmute::<*const c_void, _>(f(c"glCheckFramebufferStatus")?),
glClear: std::mem::transmute::<*const c_void, _>(f(c"glClear")?),
glClearColor: std::mem::transmute::<*const c_void, _>(f(c"glClearColor")?),
glClearDepthf: std::mem::transmute::<*const c_void, _>(f(c"glClearDepthf")?),
glClearStencil: std::mem::transmute::<*const c_void, _>(f(c"glClearStencil")?),
glColorMask: std::mem::transmute::<*const c_void, _>(f(c"glColorMask")?),
glCompileShader: std::mem::transmute::<*const c_void, _>(f(c"glCompileShader")?),
glCompressedTexImage2D: std::mem::transmute::<*const c_void, _>(f(c"glCompressedTexImage2D")?),
glCompressedTexSubImage2D: std::mem::transmute::<*const c_void, _>(f(c"glCompressedTexSubImage2D")?),
glCopyTexImage2D: std::mem::transmute::<*const c_void, _>(f(c"glCopyTexImage2D")?),
glCopyTexSubImage2D: std::mem::transmute::<*const c_void, _>(f(c"glCopyTexSubImage2D")?),
glCreateProgram: std::mem::transmute::<*const c_void, _>(f(c"glCreateProgram")?),
glCreateShader: std::mem::transmute::<*const c_void, _>(f(c"glCreateShader")?),
glCullFace: std::mem::transmute::<*const c_void, _>(f(c"glCullFace")?),
glDeleteBuffers: std::mem::transmute::<*const c_void, _>(f(c"glDeleteBuffers")?),
glDeleteFramebuffers: std::mem::transmute::<*const c_void, _>(f(c"glDeleteFramebuffers")?),
glDeleteProgram: std::mem::transmute::<*const c_void, _>(f(c"glDeleteProgram")?),
glDeleteRenderbuffers: std::mem::transmute::<*const c_void, _>(f(c"glDeleteRenderbuffers")?),
glDeleteShader: std::mem::transmute::<*const c_void, _>(f(c"glDeleteShader")?),
glDeleteTextures: std::mem::transmute::<*const c_void, _>(f(c"glDeleteTextures")?),
glDepthFunc: std::mem::transmute::<*const c_void, _>(f(c"glDepthFunc")?),
glDepthMask: std::mem::transmute::<*const c_void, _>(f(c"glDepthMask")?),
glDepthRangef: std::mem::transmute::<*const c_void, _>(f(c"glDepthRangef")?),
glDetachShader: std::mem::transmute::<*const c_void, _>(f(c"glDetachShader")?),
glDisable: std::mem::transmute::<*const c_void, _>(f(c"glDisable")?),
glDisableVertexAttribArray: std::mem::transmute::<*const c_void, _>(f(c"glDisableVertexAttribArray")?),
glDrawArrays: std::mem::transmute::<*const c_void, _>(f(c"glDrawArrays")?),
glDrawElements: std::mem::transmute::<*const c_void, _>(f(c"glDrawElements")?),
glEnable: std::mem::transmute::<*const c_void, _>(f(c"glEnable")?),
glEnableVertexAttribArray: std::mem::transmute::<*const c_void, _>(f(c"glEnableVertexAttribArray")?),
glFinish: std::mem::transmute::<*const c_void, _>(f(c"glFinish")?),
glFlush: std::mem::transmute::<*const c_void, _>(f(c"glFlush")?),
glFramebufferRenderbuffer: std::mem::transmute::<*const c_void, _>(f(c"glFramebufferRenderbuffer")?),
glFramebufferTexture2D: std::mem::transmute::<*const c_void, _>(f(c"glFramebufferTexture2D")?),
glFrontFace: std::mem::transmute::<*const c_void, _>(f(c"glFrontFace")?),
glGenBuffers: std::mem::transmute::<*const c_void, _>(f(c"glGenBuffers")?),
glGenerateMipmap: std::mem::transmute::<*const c_void, _>(f(c"glGenerateMipmap")?),
glGenFramebuffers: std::mem::transmute::<*const c_void, _>(f(c"glGenFramebuffers")?),
glGenRenderbuffers: std::mem::transmute::<*const c_void, _>(f(c"glGenRenderbuffers")?),
glGenTextures: std::mem::transmute::<*const c_void, _>(f(c"glGenTextures")?),
glGetActiveAttrib: std::mem::transmute::<*const c_void, _>(f(c"glGetActiveAttrib")?),
glGetActiveUniform: std::mem::transmute::<*const c_void, _>(f(c"glGetActiveUniform")?),
glGetAttachedShaders: std::mem::transmute::<*const c_void, _>(f(c"glGetAttachedShaders")?),
glGetAttribLocation: std::mem::transmute::<*const c_void, _>(f(c"glGetAttribLocation")?),
glGetBooleanv: std::mem::transmute::<*const c_void, _>(f(c"glGetBooleanv")?),
glGetBufferParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glGetBufferParameteriv")?),
glGetError: std::mem::transmute::<*const c_void, _>(f(c"glGetError")?),
glGetFloatv: std::mem::transmute::<*const c_void, _>(f(c"glGetFloatv")?),
glGetFramebufferAttachmentParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glGetFramebufferAttachmentParameteriv")?),
glGetIntegerv: std::mem::transmute::<*const c_void, _>(f(c"glGetIntegerv")?),
glGetProgramiv: std::mem::transmute::<*const c_void, _>(f(c"glGetProgramiv")?),
glGetProgramInfoLog: std::mem::transmute::<*const c_void, _>(f(c"glGetProgramInfoLog")?),
glGetRenderbufferParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glGetRenderbufferParameteriv")?),
glGetShaderiv: std::mem::transmute::<*const c_void, _>(f(c"glGetShaderiv")?),
glGetShaderInfoLog: std::mem::transmute::<*const c_void, _>(f(c"glGetShaderInfoLog")?),
glGetShaderPrecisionFormat: std::mem::transmute::<*const c_void, _>(f(c"glGetShaderPrecisionFormat")?),
glGetShaderSource: std::mem::transmute::<*const c_void, _>(f(c"glGetShaderSource")?),
glGetString: std::mem::transmute::<*const c_void, _>(f(c"glGetString")?),
glGetTexParameterfv: std::mem::transmute::<*const c_void, _>(f(c"glGetTexParameterfv")?),
glGetTexParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glGetTexParameteriv")?),
glGetUniformfv: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformfv")?),
glGetUniformiv: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformiv")?),
glGetUniformLocation: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformLocation")?),
glGetVertexAttribfv: std::mem::transmute::<*const c_void, _>(f(c"glGetVertexAttribfv")?),
glGetVertexAttribiv: std::mem::transmute::<*const c_void, _>(f(c"glGetVertexAttribiv")?),
glGetVertexAttribPointerv: std::mem::transmute::<*const c_void, _>(f(c"glGetVertexAttribPointerv")?),
glHint: std::mem::transmute::<*const c_void, _>(f(c"glHint")?),
glIsBuffer: std::mem::transmute::<*const c_void, _>(f(c"glIsBuffer")?),
glIsEnabled: std::mem::transmute::<*const c_void, _>(f(c"glIsEnabled")?),
glIsFramebuffer: std::mem::transmute::<*const c_void, _>(f(c"glIsFramebuffer")?),
glIsProgram: std::mem::transmute::<*const c_void, _>(f(c"glIsProgram")?),
glIsRenderbuffer: std::mem::transmute::<*const c_void, _>(f(c"glIsRenderbuffer")?),
glIsShader: std::mem::transmute::<*const c_void, _>(f(c"glIsShader")?),
glIsTexture: std::mem::transmute::<*const c_void, _>(f(c"glIsTexture")?),
glLineWidth: std::mem::transmute::<*const c_void, _>(f(c"glLineWidth")?),
glLinkProgram: std::mem::transmute::<*const c_void, _>(f(c"glLinkProgram")?),
glPixelStorei: std::mem::transmute::<*const c_void, _>(f(c"glPixelStorei")?),
glPolygonOffset: std::mem::transmute::<*const c_void, _>(f(c"glPolygonOffset")?),
glReadPixels: std::mem::transmute::<*const c_void, _>(f(c"glReadPixels")?),
glReleaseShaderCompiler: std::mem::transmute::<*const c_void, _>(f(c"glReleaseShaderCompiler")?),
glRenderbufferStorage: std::mem::transmute::<*const c_void, _>(f(c"glRenderbufferStorage")?),
glSampleCoverage: std::mem::transmute::<*const c_void, _>(f(c"glSampleCoverage")?),
glScissor: std::mem::transmute::<*const c_void, _>(f(c"glScissor")?),
glShaderBinary: std::mem::transmute::<*const c_void, _>(f(c"glShaderBinary")?),
glShaderSource: std::mem::transmute::<*const c_void, _>(f(c"glShaderSource")?),
glStencilFunc: std::mem::transmute::<*const c_void, _>(f(c"glStencilFunc")?),
glStencilFuncSeparate: std::mem::transmute::<*const c_void, _>(f(c"glStencilFuncSeparate")?),
glStencilMask: std::mem::transmute::<*const c_void, _>(f(c"glStencilMask")?),
glStencilMaskSeparate: std::mem::transmute::<*const c_void, _>(f(c"glStencilMaskSeparate")?),
glStencilOp: std::mem::transmute::<*const c_void, _>(f(c"glStencilOp")?),
glStencilOpSeparate: std::mem::transmute::<*const c_void, _>(f(c"glStencilOpSeparate")?),
glTexImage2D: std::mem::transmute::<*const c_void, _>(f(c"glTexImage2D")?),
glTexParameterf: std::mem::transmute::<*const c_void, _>(f(c"glTexParameterf")?),
glTexParameterfv: std::mem::transmute::<*const c_void, _>(f(c"glTexParameterfv")?),
glTexParameteri: std::mem::transmute::<*const c_void, _>(f(c"glTexParameteri")?),
glTexParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glTexParameteriv")?),
glTexSubImage2D: std::mem::transmute::<*const c_void, _>(f(c"glTexSubImage2D")?),
glUniform1f: std::mem::transmute::<*const c_void, _>(f(c"glUniform1f")?),
glUniform1fv: std::mem::transmute::<*const c_void, _>(f(c"glUniform1fv")?),
glUniform1i: std::mem::transmute::<*const c_void, _>(f(c"glUniform1i")?),
glUniform1iv: std::mem::transmute::<*const c_void, _>(f(c"glUniform1iv")?),
glUniform2f: std::mem::transmute::<*const c_void, _>(f(c"glUniform2f")?),
glUniform2fv: std::mem::transmute::<*const c_void, _>(f(c"glUniform2fv")?),
glUniform2i: std::mem::transmute::<*const c_void, _>(f(c"glUniform2i")?),
glUniform2iv: std::mem::transmute::<*const c_void, _>(f(c"glUniform2iv")?),
glUniform3f: std::mem::transmute::<*const c_void, _>(f(c"glUniform3f")?),
glUniform3fv: std::mem::transmute::<*const c_void, _>(f(c"glUniform3fv")?),
glUniform3i: std::mem::transmute::<*const c_void, _>(f(c"glUniform3i")?),
glUniform3iv: std::mem::transmute::<*const c_void, _>(f(c"glUniform3iv")?),
glUniform4f: std::mem::transmute::<*const c_void, _>(f(c"glUniform4f")?),
glUniform4fv: std::mem::transmute::<*const c_void, _>(f(c"glUniform4fv")?),
glUniform4i: std::mem::transmute::<*const c_void, _>(f(c"glUniform4i")?),
glUniform4iv: std::mem::transmute::<*const c_void, _>(f(c"glUniform4iv")?),
glUniformMatrix2fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix2fv")?),
glUniformMatrix3fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix3fv")?),
glUniformMatrix4fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix4fv")?),
glUseProgram: std::mem::transmute::<*const c_void, _>(f(c"glUseProgram")?),
glValidateProgram: std::mem::transmute::<*const c_void, _>(f(c"glValidateProgram")?),
glVertexAttrib1f: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib1f")?),
glVertexAttrib1fv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib1fv")?),
glVertexAttrib2f: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib2f")?),
glVertexAttrib2fv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib2fv")?),
glVertexAttrib3f: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib3f")?),
glVertexAttrib3fv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib3fv")?),
glVertexAttrib4f: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib4f")?),
glVertexAttrib4fv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttrib4fv")?),
glVertexAttribPointer: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribPointer")?),
glViewport: std::mem::transmute::<*const c_void, _>(f(c"glViewport")?),
glReadBuffer: std::mem::transmute::<*const c_void, _>(f(c"glReadBuffer")?),
glDrawRangeElements: std::mem::transmute::<*const c_void, _>(f(c"glDrawRangeElements")?),
glTexImage3D: std::mem::transmute::<*const c_void, _>(f(c"glTexImage3D")?),
glTexSubImage3D: std::mem::transmute::<*const c_void, _>(f(c"glTexSubImage3D")?),
glCopyTexSubImage3D: std::mem::transmute::<*const c_void, _>(f(c"glCopyTexSubImage3D")?),
glCompressedTexImage3D: std::mem::transmute::<*const c_void, _>(f(c"glCompressedTexImage3D")?),
glCompressedTexSubImage3D: std::mem::transmute::<*const c_void, _>(f(c"glCompressedTexSubImage3D")?),
glGenQueries: std::mem::transmute::<*const c_void, _>(f(c"glGenQueries")?),
glDeleteQueries: std::mem::transmute::<*const c_void, _>(f(c"glDeleteQueries")?),
glIsQuery: std::mem::transmute::<*const c_void, _>(f(c"glIsQuery")?),
glBeginQuery: std::mem::transmute::<*const c_void, _>(f(c"glBeginQuery")?),
glEndQuery: std::mem::transmute::<*const c_void, _>(f(c"glEndQuery")?),
glGetQueryiv: std::mem::transmute::<*const c_void, _>(f(c"glGetQueryiv")?),
glGetQueryObjectuiv: std::mem::transmute::<*const c_void, _>(f(c"glGetQueryObjectuiv")?),
glUnmapBuffer: std::mem::transmute::<*const c_void, _>(f(c"glUnmapBuffer")?),
glGetBufferPointerv: std::mem::transmute::<*const c_void, _>(f(c"glGetBufferPointerv")?),
glDrawBuffers: std::mem::transmute::<*const c_void, _>(f(c"glDrawBuffers")?),
glUniformMatrix2x3fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix2x3fv")?),
glUniformMatrix3x2fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix3x2fv")?),
glUniformMatrix2x4fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix2x4fv")?),
glUniformMatrix4x2fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix4x2fv")?),
glUniformMatrix3x4fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix3x4fv")?),
glUniformMatrix4x3fv: std::mem::transmute::<*const c_void, _>(f(c"glUniformMatrix4x3fv")?),
glBlitFramebuffer: std::mem::transmute::<*const c_void, _>(f(c"glBlitFramebuffer")?),
glRenderbufferStorageMultisample: std::mem::transmute::<*const c_void, _>(f(c"glRenderbufferStorageMultisample")?),
glFramebufferTextureLayer: std::mem::transmute::<*const c_void, _>(f(c"glFramebufferTextureLayer")?),
glMapBufferRange: std::mem::transmute::<*const c_void, _>(f(c"glMapBufferRange")?),
glFlushMappedBufferRange: std::mem::transmute::<*const c_void, _>(f(c"glFlushMappedBufferRange")?),
glBindVertexArray: std::mem::transmute::<*const c_void, _>(f(c"glBindVertexArray")?),
glDeleteVertexArrays: std::mem::transmute::<*const c_void, _>(f(c"glDeleteVertexArrays")?),
glGenVertexArrays: std::mem::transmute::<*const c_void, _>(f(c"glGenVertexArrays")?),
glIsVertexArray: std::mem::transmute::<*const c_void, _>(f(c"glIsVertexArray")?),
glGetIntegeri_v: std::mem::transmute::<*const c_void, _>(f(c"glGetIntegeri_v")?),
glBeginTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glBeginTransformFeedback")?),
glEndTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glEndTransformFeedback")?),
glBindBufferRange: std::mem::transmute::<*const c_void, _>(f(c"glBindBufferRange")?),
glBindBufferBase: std::mem::transmute::<*const c_void, _>(f(c"glBindBufferBase")?),
glTransformFeedbackVaryings: std::mem::transmute::<*const c_void, _>(f(c"glTransformFeedbackVaryings")?),
glGetTransformFeedbackVarying: std::mem::transmute::<*const c_void, _>(f(c"glGetTransformFeedbackVarying")?),
glVertexAttribIPointer: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribIPointer")?),
glGetVertexAttribIiv: std::mem::transmute::<*const c_void, _>(f(c"glGetVertexAttribIiv")?),
glGetVertexAttribIuiv: std::mem::transmute::<*const c_void, _>(f(c"glGetVertexAttribIuiv")?),
glVertexAttribI4i: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribI4i")?),
glVertexAttribI4ui: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribI4ui")?),
glVertexAttribI4iv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribI4iv")?),
glVertexAttribI4uiv: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribI4uiv")?),
glGetUniformuiv: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformuiv")?),
glGetFragDataLocation: std::mem::transmute::<*const c_void, _>(f(c"glGetFragDataLocation")?),
glUniform1ui: std::mem::transmute::<*const c_void, _>(f(c"glUniform1ui")?),
glUniform2ui: std::mem::transmute::<*const c_void, _>(f(c"glUniform2ui")?),
glUniform3ui: std::mem::transmute::<*const c_void, _>(f(c"glUniform3ui")?),
glUniform4ui: std::mem::transmute::<*const c_void, _>(f(c"glUniform4ui")?),
glUniform1uiv: std::mem::transmute::<*const c_void, _>(f(c"glUniform1uiv")?),
glUniform2uiv: std::mem::transmute::<*const c_void, _>(f(c"glUniform2uiv")?),
glUniform3uiv: std::mem::transmute::<*const c_void, _>(f(c"glUniform3uiv")?),
glUniform4uiv: std::mem::transmute::<*const c_void, _>(f(c"glUniform4uiv")?),
glClearBufferiv: std::mem::transmute::<*const c_void, _>(f(c"glClearBufferiv")?),
glClearBufferuiv: std::mem::transmute::<*const c_void, _>(f(c"glClearBufferuiv")?),
glClearBufferfv: std::mem::transmute::<*const c_void, _>(f(c"glClearBufferfv")?),
glClearBufferfi: std::mem::transmute::<*const c_void, _>(f(c"glClearBufferfi")?),
glGetStringi: std::mem::transmute::<*const c_void, _>(f(c"glGetStringi")?),
glCopyBufferSubData: std::mem::transmute::<*const c_void, _>(f(c"glCopyBufferSubData")?),
glGetUniformIndices: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformIndices")?),
glGetActiveUniformsiv: std::mem::transmute::<*const c_void, _>(f(c"glGetActiveUniformsiv")?),
glGetUniformBlockIndex: std::mem::transmute::<*const c_void, _>(f(c"glGetUniformBlockIndex")?),
glGetActiveUniformBlockiv: std::mem::transmute::<*const c_void, _>(f(c"glGetActiveUniformBlockiv")?),
glGetActiveUniformBlockName: std::mem::transmute::<*const c_void, _>(f(c"glGetActiveUniformBlockName")?),
glUniformBlockBinding: std::mem::transmute::<*const c_void, _>(f(c"glUniformBlockBinding")?),
glDrawArraysInstanced: std::mem::transmute::<*const c_void, _>(f(c"glDrawArraysInstanced")?),
glDrawElementsInstanced: std::mem::transmute::<*const c_void, _>(f(c"glDrawElementsInstanced")?),
glFenceSync: std::mem::transmute::<*const c_void, _>(f(c"glFenceSync")?),
glIsSync: std::mem::transmute::<*const c_void, _>(f(c"glIsSync")?),
glDeleteSync: std::mem::transmute::<*const c_void, _>(f(c"glDeleteSync")?),
glClientWaitSync: std::mem::transmute::<*const c_void, _>(f(c"glClientWaitSync")?),
glWaitSync: std::mem::transmute::<*const c_void, _>(f(c"glWaitSync")?),
glGetInteger64v: std::mem::transmute::<*const c_void, _>(f(c"glGetInteger64v")?),
glGetSynciv: std::mem::transmute::<*const c_void, _>(f(c"glGetSynciv")?),
glGetInteger64i_v: std::mem::transmute::<*const c_void, _>(f(c"glGetInteger64i_v")?),
glGetBufferParameteri64v: std::mem::transmute::<*const c_void, _>(f(c"glGetBufferParameteri64v")?),
glGenSamplers: std::mem::transmute::<*const c_void, _>(f(c"glGenSamplers")?),
glDeleteSamplers: std::mem::transmute::<*const c_void, _>(f(c"glDeleteSamplers")?),
glIsSampler: std::mem::transmute::<*const c_void, _>(f(c"glIsSampler")?),
glBindSampler: std::mem::transmute::<*const c_void, _>(f(c"glBindSampler")?),
glSamplerParameteri: std::mem::transmute::<*const c_void, _>(f(c"glSamplerParameteri")?),
glSamplerParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glSamplerParameteriv")?),
glSamplerParameterf: std::mem::transmute::<*const c_void, _>(f(c"glSamplerParameterf")?),
glSamplerParameterfv: std::mem::transmute::<*const c_void, _>(f(c"glSamplerParameterfv")?),
glGetSamplerParameteriv: std::mem::transmute::<*const c_void, _>(f(c"glGetSamplerParameteriv")?),
glGetSamplerParameterfv: std::mem::transmute::<*const c_void, _>(f(c"glGetSamplerParameterfv")?),
glVertexAttribDivisor: std::mem::transmute::<*const c_void, _>(f(c"glVertexAttribDivisor")?),
glBindTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glBindTransformFeedback")?),
glDeleteTransformFeedbacks: std::mem::transmute::<*const c_void, _>(f(c"glDeleteTransformFeedbacks")?),
glGenTransformFeedbacks: std::mem::transmute::<*const c_void, _>(f(c"glGenTransformFeedbacks")?),
glIsTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glIsTransformFeedback")?),
glPauseTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glPauseTransformFeedback")?),
glResumeTransformFeedback: std::mem::transmute::<*const c_void, _>(f(c"glResumeTransformFeedback")?),
glGetProgramBinary: std::mem::transmute::<*const c_void, _>(f(c"glGetProgramBinary")?),
glProgramBinary: std::mem::transmute::<*const c_void, _>(f(c"glProgramBinary")?),
glProgramParameteri: std::mem::transmute::<*const c_void, _>(f(c"glProgramParameteri")?),
glInvalidateFramebuffer: std::mem::transmute::<*const c_void, _>(f(c"glInvalidateFramebuffer")?),
glInvalidateSubFramebuffer: std::mem::transmute::<*const c_void, _>(f(c"glInvalidateSubFramebuffer")?),
glTexStorage2D: std::mem::transmute::<*const c_void, _>(f(c"glTexStorage2D")?),
glTexStorage3D: std::mem::transmute::<*const c_void, _>(f(c"glTexStorage3D")?),
glGetInternalformativ: std::mem::transmute::<*const c_void, _>(f(c"glGetInternalformativ")?),
glRequestExtensionANGLE: std::mem::transmute::<*const c_void, _>(f(c"glRequestExtensionANGLE")?),
})
}
}
}