Commits

Anonymous committed a1ee3da

Initial dump of enumerators.
Based on revision 879bf47f60f2 of the .spec files and 99d28a815e40 of glLoadGen.

Comments (0)

Files changed (188)

 ******** If it does exist, do nothing.
 ******* Given a corresponding function, for each parameter in the *destination*
 ******** If no corresponding parameter exists in the source, delete it from the destion. Add it to the list of deleted entries.
+**** For each function in the destination that is *not* in the source
+***** Mark it as deleted and do not put it in the merged table.
 ]]
 
+local sourceDir = "basic_dump/"
+local destDir = "function_enums/"
 
+local function WriteTableToFile(outputFilename, tbl)
+	local hFile = io.open(outputFilename, "w")
+	
+	--We want a stable write. So sort the table by function names.
+	local funcNames = {}
+	for name, funcData in pairs(tbl) do
+		funcNames[#funcNames + 1] = name
+	end
+	
+	table.sort(funcNames)
+	
+	hFile:write("return {\n")
+	
+	--Iterate over each function, in sorted order.
+	for _, funcName in ipairs(funcNames) do
+		hFile:write("['", funcName, "'] = {\n")
+		
+		local funcData = tbl[funcName]
+		
+		--Again for stability, write in order of parameter names.
+		local paramNames = {}
+		for paramName, paramList in pairs(funcData) do
+			paramNames[#paramNames + 1] = paramName
+		end
+		
+		table.sort(paramNames)
+		
+		for _, paramName in ipairs(paramNames) do
+			hFile:write("\t['", paramName, "'] = {")
+			if(#funcData[paramName] ~= 0) then
+				hFile:write("\n")
+				for _, enumName in ipairs(funcData[paramName]) do
+					hFile:write("\t\t'", enumName, "',\n")
+				end
+				hFile:write("\t")
+			end
+			hFile:write("},\n")
+		end
+		
+		hFile:write("},\n\n")
+	end
+	
+	hFile:write("}\n")
+	hFile:close()
+end
+
+local function ResolveTables(srcTable, destTable)
+	local finalTable = {}
+	local deletedFuncs = {}
+	local deletedParams = {}
+	
+	local destFuncsFound = {}
+	
+	for srcFuncName, srcFuncData in pairs(srcTable) do
+		if(not destTable[srcFuncName]) then
+			finalTable[srcFuncName] = srcFuncData
+		else
+			--Merge the parameter data.
+			destFuncsFound[srcFuncName] = true
+			finalFuncData = {}
+			finalTable[srcFuncName] = finalFuncData
+			
+			--For each parameter
+			local destFuncData = destTable[srcFuncName]
+			for srcParamName, srcParamData in pairs(srcFuncData) do
+				--If no corresponding dest parameter, just take the source one.
+				--Remember: the source is always empty data.
+				finalFuncData[srcParamName] =
+					destFuncData[srcParamName] or srcParamData
+			end
+			
+			--Check for params in dest and not in source. These are deleted;
+			--They won't be copied.
+			for destParamName, destParamData in pairs(destFuncData) do
+				if(not srcFuncData[destParamName]) then
+					table.insert(deletedParams, {
+						funcName = srcFuncName,
+						paramName = destParamName,
+					})
+				end
+			end
+		end
+	end
+	
+	--Find any functions in dest that aren't in source.
+	for destFuncName, destFuncData in pairs(destTable) do
+		if(not destFuncsFound[destFuncName]) then
+			table.insert(deletedFuncs, destFuncName)
+		end
+	end
+	
+	return finalTable, deletedFuncs, deletedParams
+end
+
+for path in lfs.dir(sourceDir) do
+	local sourcePathname = sourceDir .. path;
+	if(path:match("%.lua$") and lfs.attributes(sourcePathname, "mode") == "file") then
+	
+		local srcTable = dofile(sourcePathname)
+	
+		local destPathname = destDir .. path;
+		
+		if(lfs.attributes(destPathname, "mode") == "file") then
+			local destTable = dofile(destPathname)
+			
+			local finalTable, deletedFuncs, deletedParams =
+				ResolveTables(srcTable, destTable)
+				
+			if(#deletedFuncs ~= 0) then
+				print("Functions deleted from " .. path)
+				for _, funcName in ipairs(deletedFuncs) do
+					print("\t" .. funcName)
+				end
+			end
+			
+			if(#deletedParams ~= 0) then
+				print("Parameters deleted from " .. path)
+				for _, deleteParam in ipairs(deletedParams) do
+					print("\t" .. deleteParam.funcName, deleteParam.paramName)
+				end
+			end
+
+			WriteTableToFile(destPathname, finalTable)
+		else
+			--No matching file. So write it.
+			WriteTableToFile(destPathname, srcTable)
+			
+			--Add it to mercurial.
+			os.execute("hg add " .. destPathname)
+		end
+	end
+end
+
+

function_enums/AMD_debug_output.lua

+return {
+['DebugMessageEnableAMD'] = {
+	['category'] = {},
+	['severity'] = {},
+},
+
+['DebugMessageInsertAMD'] = {
+	['category'] = {},
+	['severity'] = {},
+},
+
+['GetDebugMessageLogAMD'] = {
+	['categories'] = {},
+},
+
+}

function_enums/AMD_draw_buffers_blend.lua

+return {
+['BlendEquationIndexedAMD'] = {
+	['mode'] = {},
+},
+
+['BlendEquationSeparateIndexedAMD'] = {
+	['modeAlpha'] = {},
+	['modeRGB'] = {},
+},
+
+['BlendFuncIndexedAMD'] = {
+	['dst'] = {},
+	['src'] = {},
+},
+
+['BlendFuncSeparateIndexedAMD'] = {
+	['dstAlpha'] = {},
+	['dstRGB'] = {},
+	['srcAlpha'] = {},
+	['srcRGB'] = {},
+},
+
+}

function_enums/AMD_multi_draw_indirect.lua

+return {
+['MultiDrawArraysIndirectAMD'] = {
+	['mode'] = {},
+},
+
+['MultiDrawElementsIndirectAMD'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/AMD_name_gen_delete.lua

+return {
+['DeleteNamesAMD'] = {
+	['identifier'] = {},
+},
+
+['GenNamesAMD'] = {
+	['identifier'] = {},
+},
+
+['IsNameAMD'] = {
+	['identifier'] = {},
+},
+
+}

function_enums/AMD_performance_monitor.lua

+return {
+['GetPerfMonitorCounterDataAMD'] = {
+	['pname'] = {},
+},
+
+['GetPerfMonitorCounterInfoAMD'] = {
+	['pname'] = {},
+},
+
+}

function_enums/AMD_sample_positions.lua

+return {
+['SetMultisamplefvAMD'] = {
+	['pname'] = {},
+},
+
+}

function_enums/AMD_sparse_texture.lua

+return {
+['TexStorageSparseAMD'] = {
+	['internalFormat'] = {},
+	['target'] = {},
+},
+
+['TextureStorageSparseAMD'] = {
+	['internalFormat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/AMD_stencil_operation_extended.lua

+return {
+['StencilOpValueAMD'] = {
+	['face'] = {},
+},
+
+}

function_enums/AMD_vertex_shader_tessellator.lua

+return {
+['TessellationModeAMD'] = {
+	['mode'] = {},
+},
+
+}

function_enums/APPLE_element_array.lua

+return {
+['DrawElementArrayAPPLE'] = {
+	['mode'] = {},
+},
+
+['DrawRangeElementArrayAPPLE'] = {
+	['mode'] = {},
+},
+
+['ElementPointerAPPLE'] = {
+	['type'] = {},
+},
+
+['MultiDrawElementArrayAPPLE'] = {
+	['mode'] = {},
+},
+
+['MultiDrawRangeElementArrayAPPLE'] = {
+	['mode'] = {},
+},
+
+}

function_enums/APPLE_fence.lua

+return {
+['FinishObjectAPPLE'] = {
+	['object'] = {},
+},
+
+['TestObjectAPPLE'] = {
+	['object'] = {},
+},
+
+}

function_enums/APPLE_flush_buffer_range.lua

+return {
+['BufferParameteriAPPLE'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['FlushMappedBufferRangeAPPLE'] = {
+	['target'] = {},
+},
+
+}

function_enums/APPLE_object_purgeable.lua

+return {
+['GetObjectParameterivAPPLE'] = {
+	['objectType'] = {},
+	['pname'] = {},
+},
+
+['ObjectPurgeableAPPLE'] = {
+	['objectType'] = {},
+	['option'] = {},
+},
+
+['ObjectUnpurgeableAPPLE'] = {
+	['objectType'] = {},
+	['option'] = {},
+},
+
+}

function_enums/APPLE_texture_range.lua

+return {
+['GetTexParameterPointervAPPLE'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['TextureRangeAPPLE'] = {
+	['target'] = {},
+},
+
+}

function_enums/APPLE_vertex_array_range.lua

+return {
+['VertexArrayParameteriAPPLE'] = {
+	['pname'] = {},
+},
+
+}

function_enums/APPLE_vertex_program_evaluators.lua

+return {
+['DisableVertexAttribAPPLE'] = {
+	['pname'] = {},
+},
+
+['EnableVertexAttribAPPLE'] = {
+	['pname'] = {},
+},
+
+['IsVertexAttribEnabledAPPLE'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_ES2_compatibility.lua

+return {
+['GetShaderPrecisionFormat'] = {
+	['precisiontype'] = {},
+	['shadertype'] = {},
+},
+
+['ShaderBinary'] = {
+	['binaryformat'] = {},
+},
+
+}

function_enums/ARB_base_instance.lua

+return {
+['DrawArraysInstancedBaseInstance'] = {
+	['mode'] = {},
+},
+
+['DrawElementsInstancedBaseInstance'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+['DrawElementsInstancedBaseVertexBaseInstance'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_clear_buffer_object.lua

+return {
+['ClearBufferData'] = {
+	['format'] = {},
+	['internalformat'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['ClearBufferSubData'] = {
+	['format'] = {},
+	['internalformat'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['ClearNamedBufferDataEXT'] = {
+	['format'] = {},
+	['internalformat'] = {},
+	['type'] = {},
+},
+
+['ClearNamedBufferSubDataEXT'] = {
+	['format'] = {},
+	['internalformat'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_color_buffer_float.lua

+return {
+['ClampColorARB'] = {
+	['clamp'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_copy_buffer.lua

+return {
+['CopyBufferSubData'] = {
+	['readTarget'] = {},
+	['writeTarget'] = {},
+},
+
+}

function_enums/ARB_copy_image.lua

+return {
+['CopyImageSubData'] = {
+	['dstTarget'] = {},
+	['srcTarget'] = {},
+},
+
+}

function_enums/ARB_debug_output.lua

+return {
+['DebugMessageControlARB'] = {
+	['severity'] = {},
+	['source'] = {},
+	['type'] = {},
+},
+
+['DebugMessageInsertARB'] = {
+	['severity'] = {},
+	['source'] = {},
+	['type'] = {},
+},
+
+['GetDebugMessageLogARB'] = {
+	['severities'] = {},
+	['sources'] = {},
+	['types'] = {},
+},
+
+}

function_enums/ARB_draw_buffers.lua

+return {
+['DrawBuffersARB'] = {
+	['bufs'] = {},
+},
+
+}

function_enums/ARB_draw_buffers_blend.lua

+return {
+['BlendEquationSeparateiARB'] = {
+	['modeAlpha'] = {},
+	['modeRGB'] = {},
+},
+
+['BlendEquationiARB'] = {
+	['mode'] = {},
+},
+
+['BlendFuncSeparateiARB'] = {
+	['dstAlpha'] = {},
+	['dstRGB'] = {},
+	['srcAlpha'] = {},
+	['srcRGB'] = {},
+},
+
+['BlendFunciARB'] = {
+	['dst'] = {},
+	['src'] = {},
+},
+
+}

function_enums/ARB_draw_elements_base_vertex.lua

+return {
+['DrawElementsBaseVertex'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+['DrawElementsInstancedBaseVertex'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+['DrawRangeElementsBaseVertex'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+['MultiDrawElementsBaseVertex'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_draw_indirect.lua

+return {
+['DrawArraysIndirect'] = {
+	['mode'] = {},
+},
+
+['DrawElementsIndirect'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_draw_instanced.lua

+return {
+['DrawArraysInstancedARB'] = {
+	['mode'] = {},
+},
+
+['DrawElementsInstancedARB'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_framebuffer_no_attachments.lua

+return {
+['FramebufferParameteri'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetFramebufferParameteriv'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetNamedFramebufferParameterivEXT'] = {
+	['pname'] = {},
+},
+
+['NamedFramebufferParameteriEXT'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_framebuffer_object.lua

+return {
+['BindFramebuffer'] = {
+	['target'] = {},
+},
+
+['BindRenderbuffer'] = {
+	['target'] = {},
+},
+
+['BlitFramebuffer'] = {
+	['filter'] = {},
+},
+
+['CheckFramebufferStatus'] = {
+	['target'] = {},
+},
+
+['FramebufferRenderbuffer'] = {
+	['attachment'] = {},
+	['renderbuffertarget'] = {},
+	['target'] = {},
+},
+
+['FramebufferTexture1D'] = {
+	['attachment'] = {},
+	['target'] = {},
+	['textarget'] = {},
+},
+
+['FramebufferTexture2D'] = {
+	['attachment'] = {},
+	['target'] = {},
+	['textarget'] = {},
+},
+
+['FramebufferTexture3D'] = {
+	['attachment'] = {},
+	['target'] = {},
+	['textarget'] = {},
+},
+
+['FramebufferTextureLayer'] = {
+	['attachment'] = {},
+	['target'] = {},
+},
+
+['GenerateMipmap'] = {
+	['target'] = {},
+},
+
+['GetFramebufferAttachmentParameteriv'] = {
+	['attachment'] = {},
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetRenderbufferParameteriv'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['RenderbufferStorage'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['RenderbufferStorageMultisample'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_geometry_shader4.lua

+return {
+['FramebufferTextureARB'] = {
+	['attachment'] = {},
+	['target'] = {},
+},
+
+['FramebufferTextureFaceARB'] = {
+	['attachment'] = {},
+	['face'] = {},
+	['target'] = {},
+},
+
+['FramebufferTextureLayerARB'] = {
+	['attachment'] = {},
+	['target'] = {},
+},
+
+['ProgramParameteriARB'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_get_program_binary.lua

+return {
+['GetProgramBinary'] = {
+	['binaryFormat'] = {},
+},
+
+['ProgramBinary'] = {
+	['binaryFormat'] = {},
+},
+
+['ProgramParameteri'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_internalformat_query.lua

+return {
+['GetInternalformativ'] = {
+	['internalformat'] = {},
+	['pname'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_internalformat_query2.lua

+return {
+['GetInternalformati64v'] = {
+	['internalformat'] = {},
+	['pname'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_invalidate_subdata.lua

+return {
+['InvalidateFramebuffer'] = {
+	['attachments'] = {},
+	['target'] = {},
+},
+
+['InvalidateSubFramebuffer'] = {
+	['attachments'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_map_buffer_range.lua

+return {
+['FlushMappedBufferRange'] = {
+	['target'] = {},
+},
+
+['MapBufferRange'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_matrix_palette.lua

+return {
+['MatrixIndexPointerARB'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_multi_draw_indirect.lua

+return {
+['MultiDrawArraysIndirect'] = {
+	['mode'] = {},
+},
+
+['MultiDrawElementsIndirect'] = {
+	['mode'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_multitexture.lua

+return {
+['ActiveTextureARB'] = {
+	['texture'] = {},
+},
+
+['ClientActiveTextureARB'] = {
+	['texture'] = {},
+},
+
+['MultiTexCoord1dARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1dvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1fARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1fvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1iARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1ivARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1sARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord1svARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2dARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2dvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2fARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2fvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2iARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2ivARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2sARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord2svARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3dARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3dvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3fARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3fvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3iARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3ivARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3sARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord3svARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4dARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4dvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4fARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4fvARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4iARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4ivARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4sARB'] = {
+	['target'] = {},
+},
+
+['MultiTexCoord4svARB'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_occlusion_query.lua

+return {
+['BeginQueryARB'] = {
+	['target'] = {},
+},
+
+['EndQueryARB'] = {
+	['target'] = {},
+},
+
+['GetQueryObjectivARB'] = {
+	['pname'] = {},
+},
+
+['GetQueryObjectuivARB'] = {
+	['pname'] = {},
+},
+
+['GetQueryivARB'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_point_parameters.lua

+return {
+['PointParameterfARB'] = {
+	['pname'] = {},
+},
+
+['PointParameterfvARB'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_program_interface_query.lua

+return {
+['GetProgramInterfaceiv'] = {
+	['pname'] = {},
+	['programInterface'] = {},
+},
+
+['GetProgramResourceIndex'] = {
+	['programInterface'] = {},
+},
+
+['GetProgramResourceLocation'] = {
+	['programInterface'] = {},
+},
+
+['GetProgramResourceLocationIndex'] = {
+	['programInterface'] = {},
+},
+
+['GetProgramResourceName'] = {
+	['programInterface'] = {},
+},
+
+['GetProgramResourceiv'] = {
+	['programInterface'] = {},
+	['props'] = {},
+},
+
+}

function_enums/ARB_provoking_vertex.lua

+return {
+['ProvokingVertex'] = {
+	['mode'] = {},
+},
+
+}

function_enums/ARB_robustness.lua

+return {
+['GetnColorTableARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['GetnCompressedTexImageARB'] = {
+	['target'] = {},
+},
+
+['GetnConvolutionFilterARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['GetnHistogramARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['GetnMapdvARB'] = {
+	['query'] = {},
+	['target'] = {},
+},
+
+['GetnMapfvARB'] = {
+	['query'] = {},
+	['target'] = {},
+},
+
+['GetnMapivARB'] = {
+	['query'] = {},
+	['target'] = {},
+},
+
+['GetnMinmaxARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['GetnPixelMapfvARB'] = {
+	['map'] = {},
+},
+
+['GetnPixelMapuivARB'] = {
+	['map'] = {},
+},
+
+['GetnPixelMapusvARB'] = {
+	['map'] = {},
+},
+
+['GetnSeparableFilterARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['GetnTexImageARB'] = {
+	['format'] = {},
+	['target'] = {},
+	['type'] = {},
+},
+
+['ReadnPixelsARB'] = {
+	['format'] = {},
+	['type'] = {},
+},
+
+}

function_enums/ARB_sampler_objects.lua

+return {
+['GetSamplerParameterIiv'] = {
+	['pname'] = {},
+},
+
+['GetSamplerParameterIuiv'] = {
+	['pname'] = {},
+},
+
+['GetSamplerParameterfv'] = {
+	['pname'] = {},
+},
+
+['GetSamplerParameteriv'] = {
+	['pname'] = {},
+},
+
+['SamplerParameterIiv'] = {
+	['pname'] = {},
+},
+
+['SamplerParameterIuiv'] = {
+	['pname'] = {},
+},
+
+['SamplerParameterf'] = {
+	['pname'] = {},
+},
+
+['SamplerParameterfv'] = {
+	['pname'] = {},
+},
+
+['SamplerParameteri'] = {
+	['pname'] = {},
+},
+
+['SamplerParameteriv'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_separate_shader_objects.lua

+return {
+['CreateShaderProgramv'] = {
+	['type'] = {},
+},
+
+['GetProgramPipelineiv'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_shader_atomic_counters.lua

+return {
+['GetActiveAtomicCounterBufferiv'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_shader_image_load_store.lua

+return {
+['BindImageTexture'] = {
+	['access'] = {},
+	['format'] = {},
+},
+
+}

function_enums/ARB_shader_objects.lua

+return {
+['CreateShaderObjectARB'] = {
+	['shaderType'] = {},
+},
+
+['GetActiveUniformARB'] = {
+	['type'] = {},
+},
+
+['GetHandleARB'] = {
+	['pname'] = {},
+},
+
+['GetObjectParameterfvARB'] = {
+	['pname'] = {},
+},
+
+['GetObjectParameterivARB'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_shader_subroutine.lua

+return {
+['GetActiveSubroutineName'] = {
+	['shadertype'] = {},
+},
+
+['GetActiveSubroutineUniformName'] = {
+	['shadertype'] = {},
+},
+
+['GetActiveSubroutineUniformiv'] = {
+	['pname'] = {},
+	['shadertype'] = {},
+},
+
+['GetProgramStageiv'] = {
+	['pname'] = {},
+	['shadertype'] = {},
+},
+
+['GetSubroutineIndex'] = {
+	['shadertype'] = {},
+},
+
+['GetSubroutineUniformLocation'] = {
+	['shadertype'] = {},
+},
+
+['GetUniformSubroutineuiv'] = {
+	['shadertype'] = {},
+},
+
+['UniformSubroutinesuiv'] = {
+	['shadertype'] = {},
+},
+
+}

function_enums/ARB_shading_language_include.lua

+return {
+['GetNamedStringivARB'] = {
+	['pname'] = {},
+},
+
+['NamedStringARB'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_sync.lua

+return {
+['FenceSync'] = {
+	['condition'] = {},
+},
+
+['GetInteger64v'] = {
+	['pname'] = {},
+},
+
+['GetSynciv'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_tessellation_shader.lua

+return {
+['PatchParameterfv'] = {
+	['pname'] = {},
+},
+
+['PatchParameteri'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_texture_buffer_object.lua

+return {
+['TexBufferARB'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_buffer_range.lua

+return {
+['TexBufferRange'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureBufferRangeEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_compression.lua

+return {
+['CompressedTexImage1DARB'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['CompressedTexImage2DARB'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['CompressedTexImage3DARB'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['CompressedTexSubImage1DARB'] = {
+	['format'] = {},
+	['target'] = {},
+},
+
+['CompressedTexSubImage2DARB'] = {
+	['format'] = {},
+	['target'] = {},
+},
+
+['CompressedTexSubImage3DARB'] = {
+	['format'] = {},
+	['target'] = {},
+},
+
+['GetCompressedTexImageARB'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_multisample.lua

+return {
+['GetMultisamplefv'] = {
+	['pname'] = {},
+},
+
+['TexImage2DMultisample'] = {
+	['target'] = {},
+},
+
+['TexImage3DMultisample'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_storage.lua

+return {
+['TexStorage1D'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TexStorage2D'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TexStorage3D'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureStorage1DEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureStorage2DEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureStorage3DEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_storage_multisample.lua

+return {
+['TexStorage2DMultisample'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TexStorage3DMultisample'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureStorage2DMultisampleEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+['TextureStorage3DMultisampleEXT'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_texture_view.lua

+return {
+['TextureView'] = {
+	['internalformat'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_timer_query.lua

+return {
+['GetQueryObjecti64v'] = {
+	['pname'] = {},
+},
+
+['GetQueryObjectui64v'] = {
+	['pname'] = {},
+},
+
+['QueryCounter'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_transform_feedback2.lua

+return {
+['BindTransformFeedback'] = {
+	['target'] = {},
+},
+
+['DrawTransformFeedback'] = {
+	['mode'] = {},
+},
+
+}

function_enums/ARB_transform_feedback3.lua

+return {
+['BeginQueryIndexed'] = {
+	['target'] = {},
+},
+
+['DrawTransformFeedbackStream'] = {
+	['mode'] = {},
+},
+
+['EndQueryIndexed'] = {
+	['target'] = {},
+},
+
+['GetQueryIndexediv'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+}

function_enums/ARB_transform_feedback_instanced.lua

+return {
+['DrawTransformFeedbackInstanced'] = {
+	['mode'] = {},
+},
+
+['DrawTransformFeedbackStreamInstanced'] = {
+	['mode'] = {},
+},
+
+}

function_enums/ARB_uniform_buffer_object.lua

+return {
+['GetActiveUniformBlockiv'] = {
+	['pname'] = {},
+},
+
+['GetActiveUniformsiv'] = {
+	['pname'] = {},
+},
+
+}

function_enums/ARB_vertex_attrib_64bit.lua

+return {
+['GetVertexAttribLdv'] = {
+	['pname'] = {},
+},
+
+['VertexAttribLPointer'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_vertex_attrib_binding.lua

+return {
+['VertexArrayVertexAttribFormatEXT'] = {
+	['type'] = {},
+},
+
+['VertexArrayVertexAttribIFormatEXT'] = {
+	['type'] = {},
+},
+
+['VertexArrayVertexAttribLFormatEXT'] = {
+	['type'] = {},
+},
+
+['VertexAttribFormat'] = {
+	['type'] = {},
+},
+
+['VertexAttribIFormat'] = {
+	['type'] = {},
+},
+
+['VertexAttribLFormat'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_vertex_blend.lua

+return {
+['WeightPointerARB'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_vertex_buffer_object.lua

+return {
+['BindBufferARB'] = {
+	['target'] = {},
+},
+
+['BufferDataARB'] = {
+	['target'] = {},
+	['usage'] = {},
+},
+
+['BufferSubDataARB'] = {
+	['target'] = {},
+},
+
+['GetBufferParameterivARB'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetBufferPointervARB'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetBufferSubDataARB'] = {
+	['target'] = {},
+},
+
+['MapBufferARB'] = {
+	['access'] = {},
+	['target'] = {},
+},
+
+['UnmapBufferARB'] = {
+	['target'] = {},
+},
+
+}

function_enums/ARB_vertex_program.lua

+return {
+['BindProgramARB'] = {
+	['target'] = {},
+},
+
+['GetProgramEnvParameterdvARB'] = {
+	['target'] = {},
+},
+
+['GetProgramEnvParameterfvARB'] = {
+	['target'] = {},
+},
+
+['GetProgramLocalParameterdvARB'] = {
+	['target'] = {},
+},
+
+['GetProgramLocalParameterfvARB'] = {
+	['target'] = {},
+},
+
+['GetProgramStringARB'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetProgramivARB'] = {
+	['pname'] = {},
+	['target'] = {},
+},
+
+['GetVertexAttribPointervARB'] = {
+	['pname'] = {},
+},
+
+['GetVertexAttribdvARB'] = {
+	['pname'] = {},
+},
+
+['GetVertexAttribfvARB'] = {
+	['pname'] = {},
+},
+
+['GetVertexAttribivARB'] = {
+	['pname'] = {},
+},
+
+['ProgramEnvParameter4dARB'] = {
+	['target'] = {},
+},
+
+['ProgramEnvParameter4dvARB'] = {
+	['target'] = {},
+},
+
+['ProgramEnvParameter4fARB'] = {
+	['target'] = {},
+},
+
+['ProgramEnvParameter4fvARB'] = {
+	['target'] = {},
+},
+
+['ProgramLocalParameter4dARB'] = {
+	['target'] = {},
+},
+
+['ProgramLocalParameter4dvARB'] = {
+	['target'] = {},
+},
+
+['ProgramLocalParameter4fARB'] = {
+	['target'] = {},
+},
+
+['ProgramLocalParameter4fvARB'] = {
+	['target'] = {},
+},
+
+['ProgramStringARB'] = {
+	['format'] = {},
+	['target'] = {},
+},
+
+['VertexAttribPointerARB'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_vertex_shader.lua

+return {
+['GetActiveAttribARB'] = {
+	['type'] = {},
+},
+
+}

function_enums/ARB_vertex_type_2_10_10_10_rev.lua

+return {
+['ColorP3ui'] = {
+	['type'] = {},
+},
+
+['ColorP3uiv'] = {
+	['type'] = {},
+},
+
+['ColorP4ui'] = {
+	['type'] = {},
+},
+
+['ColorP4uiv'] = {
+	['type'] = {},
+},
+
+['MultiTexCoordP1ui'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP1uiv'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP2ui'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP2uiv'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP3ui'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP3uiv'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP4ui'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['MultiTexCoordP4uiv'] = {
+	['texture'] = {},
+	['type'] = {},
+},
+
+['NormalP3ui'] = {
+	['type'] = {},
+},
+
+['NormalP3uiv'] = {
+	['type'] = {},
+},
+
+['SecondaryColorP3ui'] = {
+	['type'] = {},
+},
+
+['SecondaryColorP3uiv'] = {
+	['type'] = {},
+},
+
+['TexCoordP1ui'] = {
+	['type'] = {},
+},
+
+['TexCoordP1uiv'] = {
+	['type'] = {},
+},
+
+['TexCoordP2ui'] = {
+	['type'] = {},
+},
+
+['TexCoordP2uiv'] = {
+	['type'] = {},
+},
+