{
    "glAlphaFunc": {
        "func": "AlphaTestFunc"
    },
    "glAlphaFuncx": {
        "func": "AlphaTestFunc"
    },
    "glBeginTransformFeedback": {
        "primitiveMode": "PrimitiveMode"
    },
    "glBeginQuery": {
        "target": "QueryType"
    },
    "glBeginQueryEXT": {
        "target": "QueryType"
    },
    "glBindBuffer": {
        "target": "BufferBinding"
    },
    "glBindBufferBase": {
        "target": "BufferBinding"
    },
    "glBindBufferRange": {
        "target": "BufferBinding"
    },
    "glBindTexture": {
        "target": "TextureType"
    },
    "glBufferData": {
        "target": "BufferBinding",
        "usage": "BufferUsage"
    },
    "glBufferSubData": {
        "target": "BufferBinding"
    },
    "glCompressedTexImage2D": {
        "target": "TextureTarget"
    },
    "glCompressedTexImage2DRobustANGLE": {
        "target": "TextureTarget"
    },
    "glCompressedTexImage3D": {
        "target": "TextureType"
    },
    "glCompressedTexImage3DRobustANGLE": {
        "target": "TextureType"
    },
    "glCompressedTexSubImage2D": {
        "target": "TextureTarget"
    },
    "glCompressedTexSubImage2DRobustANGLE": {
        "target": "TextureTarget"
    },
    "glCompressedTexSubImage3D": {
        "target": "TextureType"
    },
    "glCompressedTexSubImage3DRobustANGLE": {
        "target": "TextureType"
    },
    "glCopyTexImage2D": {
        "target": "TextureTarget"
    },
    "glCopyTexture3DANGLE": {
        "destTarget": "TextureTarget"
    },
    "glCopyTextureCHROMIUM": {
        "destTarget": "TextureTarget"
    },
    "glCopyTexSubImage2D": {
        "target": "TextureTarget"
    },
    "glCopyTexSubImage3D": {
        "target": "TextureType"
    },
    "glCopySubTexture3DANGLE": {
        "destTarget": "TextureTarget"
    },
    "glCopySubTextureCHROMIUM": {
        "destTarget": "TextureTarget"
    },
    "glCopyBufferSubData": {
        "readTarget": "BufferBinding",
        "writeTarget": "BufferBinding"
    },
    "glCreateShader": {
        "type": "ShaderType"
    },
    "glCreateShaderProgramv": {
        "type": "ShaderType"
    },
    "glCullFace": {
        "mode": "CullFaceMode"
    },
    "glDisableClientState": {
        "array": "ClientVertexArrayType"
    },
    "glDrawArrays": {
        "mode": "PrimitiveMode"
    },
    "glDrawArraysIndirect": {
        "mode": "PrimitiveMode"
    },
    "glDrawArraysInstanced": {
        "mode": "PrimitiveMode"
    },
    "glDrawArraysInstancedANGLE": {
        "mode": "PrimitiveMode"
    },
    "glDrawElements": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glDrawElementsIndirect": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glDrawElementsInstanced": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glDrawElementsInstancedANGLE": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glDrawRangeElements": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glEGLImageTargetTexture2DOES": {
        "target": "TextureType"
    },
    "glEnableClientState": {
        "array": "ClientVertexArrayType"
    },
    "glEndQuery": {
        "target": "QueryType"
    },
    "glEndQueryEXT": {
        "target": "QueryType"
    },
    "glFlushMappedBufferRange": {
        "target": "BufferBinding"
    },
    "glFlushMappedBufferRangeEXT": {
        "target": "BufferBinding"
    },
    "glFramebufferTexture2D": {
        "textarget": "TextureTarget"
    },
    "glFramebufferTexture2DOES": {
        "textarget": "TextureTarget"
    },
    "glGenerateMipmap": {
        "target": "TextureType"
    },
    "glGenerateMipmapOES": {
        "target": "TextureType"
    },
    "glGetBufferParameteriv": {
        "target": "BufferBinding"
    },
    "glGetBufferParameterivRobustANGLE": {
        "target": "BufferBinding"
    },
    "glGetBufferParameteri64v": {
        "target": "BufferBinding"
    },
    "glGetBufferParameteri64vRobustANGLE": {
        "target": "BufferBinding"
    },
    "glGetBufferPointerv": {
        "target": "BufferBinding"
    },
    "glGetBufferPointervOES": {
        "target": "BufferBinding"
    },
    "glGetBufferPointervRobustANGLE": {
        "target": "BufferBinding"
    },
    "glGetLightfv": {
        "pname" : "LightParameter"
    },
    "glGetLightxv": {
        "pname" : "LightParameter"
    },
    "glGetMaterialfv": {
        "pname" : "MaterialParameter"
    },
    "glGetMaterialxv": {
        "pname" : "MaterialParameter"
    },
    "glGetQueryiv": {
        "target": "QueryType"
    },
    "glGetQueryivEXT": {
        "target": "QueryType"
    },
    "glGetQueryivRobustANGLE": {
        "target": "QueryType"
    },
    "glGetTexEnvfv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glGetTexEnviv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glGetTexEnvxv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glGetTexLevelParameterfv": {
        "target": "TextureTarget"
    },
    "glGetTexLevelParameterfvRobustANGLE": {
        "target": "TextureTarget"
    },
    "glGetTexLevelParameterfvANGLE": {
        "target": "TextureTarget"
    },
    "glGetTexLevelParameteriv": {
        "target": "TextureTarget"
    },
    "glGetTexLevelParameterivRobustANGLE": {
        "target": "TextureTarget"
    },
    "glGetTexLevelParameterivANGLE": {
        "target": "TextureTarget"
    },
    "glGetTexParameterfv": {
        "target": "TextureType"
    },
    "glGetTexParameterfvRobustANGLE": {
        "target": "TextureType"
    },
    "glGetTexParameteriv": {
        "target": "TextureType"
    },
    "glGetTexParameterivRobustANGLE": {
        "target": "TextureType"
    },
    "glGetTexParameterIivRobustANGLE": {
        "target": "TextureType"
    },
    "glGetTexParameterIuivRobustANGLE": {
        "target": "TextureType"
    },
    "glGetTexParameterIivOES": {
        "target": "TextureType"
    },
    "glGetTexParameterIuivOES": {
        "target": "TextureType"
    },
    "glGetTexParameterxv": {
        "target": "TextureType"
    },
    "glLightf" : {
        "pname" : "LightParameter"
    },
    "glLightfv" : {
        "pname" : "LightParameter"
    },
    "glLightx" : {
        "pname" : "LightParameter"
    },
    "glLightxv" : {
        "pname" : "LightParameter"
    },
    "glLogicOp" : {
        "opcode" : "LogicalOperation"
    },
    "glMapBuffer": {
        "target": "BufferBinding"
    },
    "glMapBufferOES": {
        "target": "BufferBinding"
    },
    "glMapBufferRange": {
        "target": "BufferBinding"
    },
    "glMapBufferRangeEXT": {
        "target": "BufferBinding"
    },
    "glMaterialf": {
        "pname": "MaterialParameter"
    },
    "glMaterialfv": {
        "pname": "MaterialParameter"
    },
    "glMaterialx": {
        "pname": "MaterialParameter"
    },
    "glMaterialxv": {
        "pname": "MaterialParameter"
    },
    "glMatrixMode": {
        "mode": "MatrixType"
    },
    "glMultiDrawArraysANGLE": {
        "mode": "PrimitiveMode"
    },
    "glMultiDrawArraysInstancedANGLE": {
        "mode": "PrimitiveMode"
    },
    "glMultiDrawElementsANGLE": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glMultiDrawElementsInstancedANGLE": {
        "mode": "PrimitiveMode",
        "type": "DrawElementsType"
    },
    "glPointParameterf": {
        "pname" : "PointParameter"
    },
    "glPointParameterfv": {
        "pname" : "PointParameter"
    },
    "glPointParameterx": {
        "pname" : "PointParameter"
    },
    "glPointParameterxv": {
        "pname" : "PointParameter"
    },
    "glQueryCounterEXT": {
        "target": "QueryType"
    },
    "glShadeModel": {
        "mode": "ShadingModel"
    },
    "glTexEnvf": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexEnvfv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexEnvi": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexEnviv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexEnvx": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexEnvxv": {
        "target": "TextureEnvTarget",
        "pname": "TextureEnvParameter"
    },
    "glTexImage2D": {
        "target": "TextureTarget"
    },
    "glTexImage2DRobustANGLE": {
        "target": "TextureTarget"
    },
    "glTexImage3D": {
        "target": "TextureType"
    },
    "glTexImage3DRobustANGLE": {
        "target": "TextureType"
    },
    "glTexParameterf": {
        "target": "TextureType"
    },
    "glTexParameterfv": {
        "target": "TextureType"
    },
    "glTexParameterfvRobustANGLE": {
        "target": "TextureType"
    },
    "glTexParameteri": {
        "target": "TextureType"
    },
    "glTexParameteriv": {
        "target": "TextureType"
    },
    "glTexParameterivRobustANGLE": {
        "target": "TextureType"
    },
    "glTexParameterIivRobustANGLE": {
        "target": "TextureType"
    },
    "glTexParameterIuivRobustANGLE": {
        "target": "TextureType"
    },
    "glTexParameterIivOES": {
        "target": "TextureType"
    },
    "glTexParameterIuivOES": {
        "target": "TextureType"
    },
    "glTexParameterx": {
        "target": "TextureType"
    },
    "glTexParameterxv": {
        "target": "TextureType"
    },
    "glTexStorage2D": {
        "target": "TextureType"
    },
    "glTexStorage2DEXT": {
        "target": "TextureType"
    },
    "glTexStorage2DMultisample": {
        "target": "TextureType"
    },
    "glTexStorage2DMultisampleANGLE": {
        "target":  "TextureType"
    },
    "glTexStorage3DMultisampleOES": {
        "target": "TextureType"
    },
    "glTexStorage3D": {
        "target": "TextureType"
    },
    "glTexStorage3DEXT": {
        "target": "TextureType"
    },
    "glTexSubImage2D": {
        "target": "TextureTarget"
    },
    "glTexSubImage2DRobustANGLE": {
        "target": "TextureTarget"
    },
    "glTexSubImage3D": {
        "target": "TextureType"
    },
    "glTexSubImage3DRobustANGLE": {
        "target": "TextureType"
    },
    "glUnmapBuffer": {
        "target": "BufferBinding"
    },
    "glUnmapBufferOES": {
        "target": "BufferBinding"
    }
}
