1#[repr(i32)]
4#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
5pub enum glslang_stage_t {
6 Vertex = 0,
7 TesselationControl = 1,
8 TesselationEvaluation = 2,
9 Geometry = 3,
10 Fragment = 4,
11 Compute = 5,
12 RayGeneration = 6,
13 Intersect = 7,
14 AnyHit = 8,
15 ClosestHit = 9,
16 Miss = 10,
17 Callable = 11,
18 Task = 12,
19 Mesh = 13,
20}
21impl glslang_stage_mask_t {
22 pub const VERTEX: glslang_stage_mask_t = glslang_stage_mask_t(1);
23}
24impl glslang_stage_mask_t {
25 pub const TESSCONTROL: glslang_stage_mask_t = glslang_stage_mask_t(2);
26}
27impl glslang_stage_mask_t {
28 pub const TESSEVALUATION: glslang_stage_mask_t = glslang_stage_mask_t(4);
29}
30impl glslang_stage_mask_t {
31 pub const GEOMETRY: glslang_stage_mask_t = glslang_stage_mask_t(8);
32}
33impl glslang_stage_mask_t {
34 pub const FRAGMENT: glslang_stage_mask_t = glslang_stage_mask_t(16);
35}
36impl glslang_stage_mask_t {
37 pub const COMPUTE: glslang_stage_mask_t = glslang_stage_mask_t(32);
38}
39impl glslang_stage_mask_t {
40 pub const RAYGEN: glslang_stage_mask_t = glslang_stage_mask_t(64);
41}
42impl glslang_stage_mask_t {
43 pub const INTERSECT: glslang_stage_mask_t = glslang_stage_mask_t(128);
44}
45impl glslang_stage_mask_t {
46 pub const ANYHIT: glslang_stage_mask_t = glslang_stage_mask_t(256);
47}
48impl glslang_stage_mask_t {
49 pub const CLOSESTHIT: glslang_stage_mask_t = glslang_stage_mask_t(512);
50}
51impl glslang_stage_mask_t {
52 pub const MISS: glslang_stage_mask_t = glslang_stage_mask_t(1024);
53}
54impl glslang_stage_mask_t {
55 pub const CALLABLE: glslang_stage_mask_t = glslang_stage_mask_t(2048);
56}
57impl glslang_stage_mask_t {
58 pub const TASK: glslang_stage_mask_t = glslang_stage_mask_t(4096);
59}
60impl glslang_stage_mask_t {
61 pub const MESH: glslang_stage_mask_t = glslang_stage_mask_t(8192);
62}
63impl ::std::ops::BitOr<glslang_stage_mask_t> for glslang_stage_mask_t {
64 type Output = Self;
65 #[inline]
66 fn bitor(self, other: Self) -> Self {
67 glslang_stage_mask_t(self.0 | other.0)
68 }
69}
70impl ::std::ops::BitOrAssign for glslang_stage_mask_t {
71 #[inline]
72 fn bitor_assign(&mut self, rhs: glslang_stage_mask_t) {
73 self.0 |= rhs.0;
74 }
75}
76impl ::std::ops::BitAnd<glslang_stage_mask_t> for glslang_stage_mask_t {
77 type Output = Self;
78 #[inline]
79 fn bitand(self, other: Self) -> Self {
80 glslang_stage_mask_t(self.0 & other.0)
81 }
82}
83impl ::std::ops::BitAndAssign for glslang_stage_mask_t {
84 #[inline]
85 fn bitand_assign(&mut self, rhs: glslang_stage_mask_t) {
86 self.0 &= rhs.0;
87 }
88}
89#[repr(transparent)]
90#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
91pub struct glslang_stage_mask_t(pub ::std::os::raw::c_int);
92#[repr(i32)]
93#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
94pub enum glslang_source_t {
95 None = 0,
96 GLSL = 1,
97 HLSL = 2,
98}
99#[repr(i32)]
100#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
101pub enum glslang_client_t {
102 None = 0,
103 Vulkan = 1,
104 OpenGL = 2,
105}
106#[repr(i32)]
107#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
108pub enum glslang_target_language_t {
109 None = 0,
110 SPIRV = 1,
111}
112#[repr(i32)]
113#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
114pub enum glslang_target_client_version_t {
115 Vulkan1_0 = 4194304,
116 Vulkan1_1 = 4198400,
117 Vulkan1_2 = 4202496,
118 Vulkan1_3 = 4206592,
119 Vulkan1_4 = 4210688,
120 OpenGL450 = 450,
121}
122#[repr(i32)]
123#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
124pub enum glslang_target_language_version_t {
125 SPIRV1_0 = 65536,
126 SPIRV1_1 = 65792,
127 SPIRV1_2 = 66048,
128 SPIRV1_3 = 66304,
129 SPIRV1_4 = 66560,
130 SPIRV1_5 = 66816,
131 SPIRV1_6 = 67072,
132}
133#[repr(i32)]
134#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
135pub enum glslang_texture_sampler_transform_mode_t {
136 Keep = 0,
137 UpgradeTextureRemoveSampler = 1,
138}
139impl glslang_messages_t {
140 pub const DEFAULT: glslang_messages_t = glslang_messages_t(0);
141}
142impl glslang_messages_t {
143 pub const RELAXED_ERRORS: glslang_messages_t = glslang_messages_t(1);
144}
145impl glslang_messages_t {
146 pub const SUPPRESS_WARNINGS: glslang_messages_t = glslang_messages_t(2);
147}
148impl glslang_messages_t {
149 pub const AST: glslang_messages_t = glslang_messages_t(4);
150}
151impl glslang_messages_t {
152 pub const SPV_RULES: glslang_messages_t = glslang_messages_t(8);
153}
154impl glslang_messages_t {
155 pub const VULKAN_RULES: glslang_messages_t = glslang_messages_t(16);
156}
157impl glslang_messages_t {
158 pub const ONLY_PREPROCESSOR: glslang_messages_t = glslang_messages_t(32);
159}
160impl glslang_messages_t {
161 pub const READ_HLSL: glslang_messages_t = glslang_messages_t(64);
162}
163impl glslang_messages_t {
164 pub const CASCADING_ERRORS: glslang_messages_t = glslang_messages_t(128);
165}
166impl glslang_messages_t {
167 pub const KEEP_UNCALLED: glslang_messages_t = glslang_messages_t(256);
168}
169impl glslang_messages_t {
170 pub const HLSL_OFFSETS: glslang_messages_t = glslang_messages_t(512);
171}
172impl glslang_messages_t {
173 pub const DEBUG_INFO: glslang_messages_t = glslang_messages_t(1024);
174}
175impl glslang_messages_t {
176 pub const HLSL_ENABLE_16BIT_TYPES: glslang_messages_t = glslang_messages_t(2048);
177}
178impl glslang_messages_t {
179 pub const HLSL_LEGALIZATION: glslang_messages_t = glslang_messages_t(4096);
180}
181impl glslang_messages_t {
182 pub const HLSL_DX9_COMPATIBLE: glslang_messages_t = glslang_messages_t(8192);
183}
184impl glslang_messages_t {
185 pub const BUILTIN_SYMBOL_TABLE: glslang_messages_t = glslang_messages_t(16384);
186}
187impl glslang_messages_t {
188 pub const ENHANCED: glslang_messages_t = glslang_messages_t(32768);
189}
190impl glslang_messages_t {
191 pub const ABSOLUTE_PATH: glslang_messages_t = glslang_messages_t(65536);
192}
193impl glslang_messages_t {
194 pub const DISPLAY_ERROR_COLUMN: glslang_messages_t = glslang_messages_t(131072);
195}
196impl glslang_messages_t {
197 pub const LINK_TIME_OPTIMIZATION: glslang_messages_t = glslang_messages_t(262144);
198}
199impl ::std::ops::BitOr<glslang_messages_t> for glslang_messages_t {
200 type Output = Self;
201 #[inline]
202 fn bitor(self, other: Self) -> Self {
203 glslang_messages_t(self.0 | other.0)
204 }
205}
206impl ::std::ops::BitOrAssign for glslang_messages_t {
207 #[inline]
208 fn bitor_assign(&mut self, rhs: glslang_messages_t) {
209 self.0 |= rhs.0;
210 }
211}
212impl ::std::ops::BitAnd<glslang_messages_t> for glslang_messages_t {
213 type Output = Self;
214 #[inline]
215 fn bitand(self, other: Self) -> Self {
216 glslang_messages_t(self.0 & other.0)
217 }
218}
219impl ::std::ops::BitAndAssign for glslang_messages_t {
220 #[inline]
221 fn bitand_assign(&mut self, rhs: glslang_messages_t) {
222 self.0 &= rhs.0;
223 }
224}
225#[repr(transparent)]
226#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
227pub struct glslang_messages_t(pub ::std::os::raw::c_int);
228#[repr(i32)]
229#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
230pub enum glslang_profile_t {
231 None = 1,
232 Core = 2,
233 Compatibility = 4,
234 ES = 8,
235}
236impl glslang_shader_options_t {
237 pub const DEFAULT: glslang_shader_options_t = glslang_shader_options_t(0);
238}
239impl glslang_shader_options_t {
240 pub const AUTO_MAP_BINDINGS: glslang_shader_options_t = glslang_shader_options_t(1);
241}
242impl glslang_shader_options_t {
243 pub const AUTO_MAP_LOCATIONS: glslang_shader_options_t = glslang_shader_options_t(2);
244}
245impl glslang_shader_options_t {
246 pub const VULKAN_RULES_RELAXED: glslang_shader_options_t = glslang_shader_options_t(4);
247}
248impl ::std::ops::BitOr<glslang_shader_options_t> for glslang_shader_options_t {
249 type Output = Self;
250 #[inline]
251 fn bitor(self, other: Self) -> Self {
252 glslang_shader_options_t(self.0 | other.0)
253 }
254}
255impl ::std::ops::BitOrAssign for glslang_shader_options_t {
256 #[inline]
257 fn bitor_assign(&mut self, rhs: glslang_shader_options_t) {
258 self.0 |= rhs.0;
259 }
260}
261impl ::std::ops::BitAnd<glslang_shader_options_t> for glslang_shader_options_t {
262 type Output = Self;
263 #[inline]
264 fn bitand(self, other: Self) -> Self {
265 glslang_shader_options_t(self.0 & other.0)
266 }
267}
268impl ::std::ops::BitAndAssign for glslang_shader_options_t {
269 #[inline]
270 fn bitand_assign(&mut self, rhs: glslang_shader_options_t) {
271 self.0 &= rhs.0;
272 }
273}
274#[repr(transparent)]
275#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
276pub struct glslang_shader_options_t(pub ::std::os::raw::c_int);
277#[repr(i32)]
278#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
279pub enum glslang_resource_type_t {
280 Sampler = 0,
281 Texture = 1,
282 Image = 2,
283 UBO = 3,
284 SSBO = 4,
285 UAV = 5,
286}
287#[repr(C)]
288#[derive(Debug, Copy, Clone)]
289pub struct glslang_shader_s {
290 _unused: [u8; 0],
291}
292pub type glslang_shader_t = glslang_shader_s;
293#[repr(C)]
294#[derive(Debug, Copy, Clone)]
295pub struct glslang_program_s {
296 _unused: [u8; 0],
297}
298pub type glslang_program_t = glslang_program_s;
299#[repr(C)]
300#[derive(Debug, Copy, Clone)]
301pub struct glslang_mapper_s {
302 _unused: [u8; 0],
303}
304pub type glslang_mapper_t = glslang_mapper_s;
305#[repr(C)]
306#[derive(Debug, Copy, Clone)]
307pub struct glslang_resolver_s {
308 _unused: [u8; 0],
309}
310pub type glslang_resolver_t = glslang_resolver_s;
311#[repr(C)]
312#[derive(Debug, Copy, Clone)]
313pub struct glslang_version_s {
314 pub major: ::std::os::raw::c_int,
315 pub minor: ::std::os::raw::c_int,
316 pub patch: ::std::os::raw::c_int,
317 pub flavor: *const ::std::os::raw::c_char,
318}
319pub type glslang_version_t = glslang_version_s;
320#[repr(C)]
321#[derive(Debug, Copy, Clone)]
322pub struct glslang_limits_s {
323 pub non_inductive_for_loops: bool,
324 pub while_loops: bool,
325 pub do_while_loops: bool,
326 pub general_uniform_indexing: bool,
327 pub general_attribute_matrix_vector_indexing: bool,
328 pub general_varying_indexing: bool,
329 pub general_sampler_indexing: bool,
330 pub general_variable_indexing: bool,
331 pub general_constant_matrix_vector_indexing: bool,
332}
333pub type glslang_limits_t = glslang_limits_s;
334#[repr(C)]
335#[derive(Copy, Clone)]
336pub struct glslang_resource_s {
337 pub max_lights: ::std::os::raw::c_int,
338 pub max_clip_planes: ::std::os::raw::c_int,
339 pub max_texture_units: ::std::os::raw::c_int,
340 pub max_texture_coords: ::std::os::raw::c_int,
341 pub max_vertex_attribs: ::std::os::raw::c_int,
342 pub max_vertex_uniform_components: ::std::os::raw::c_int,
343 pub max_varying_floats: ::std::os::raw::c_int,
344 pub max_vertex_texture_image_units: ::std::os::raw::c_int,
345 pub max_combined_texture_image_units: ::std::os::raw::c_int,
346 pub max_texture_image_units: ::std::os::raw::c_int,
347 pub max_fragment_uniform_components: ::std::os::raw::c_int,
348 pub max_draw_buffers: ::std::os::raw::c_int,
349 pub max_vertex_uniform_vectors: ::std::os::raw::c_int,
350 pub max_varying_vectors: ::std::os::raw::c_int,
351 pub max_fragment_uniform_vectors: ::std::os::raw::c_int,
352 pub max_vertex_output_vectors: ::std::os::raw::c_int,
353 pub max_fragment_input_vectors: ::std::os::raw::c_int,
354 pub min_program_texel_offset: ::std::os::raw::c_int,
355 pub max_program_texel_offset: ::std::os::raw::c_int,
356 pub max_clip_distances: ::std::os::raw::c_int,
357 pub max_compute_work_group_count_x: ::std::os::raw::c_int,
358 pub max_compute_work_group_count_y: ::std::os::raw::c_int,
359 pub max_compute_work_group_count_z: ::std::os::raw::c_int,
360 pub max_compute_work_group_size_x: ::std::os::raw::c_int,
361 pub max_compute_work_group_size_y: ::std::os::raw::c_int,
362 pub max_compute_work_group_size_z: ::std::os::raw::c_int,
363 pub max_compute_uniform_components: ::std::os::raw::c_int,
364 pub max_compute_texture_image_units: ::std::os::raw::c_int,
365 pub max_compute_image_uniforms: ::std::os::raw::c_int,
366 pub max_compute_atomic_counters: ::std::os::raw::c_int,
367 pub max_compute_atomic_counter_buffers: ::std::os::raw::c_int,
368 pub max_varying_components: ::std::os::raw::c_int,
369 pub max_vertex_output_components: ::std::os::raw::c_int,
370 pub max_geometry_input_components: ::std::os::raw::c_int,
371 pub max_geometry_output_components: ::std::os::raw::c_int,
372 pub max_fragment_input_components: ::std::os::raw::c_int,
373 pub max_image_units: ::std::os::raw::c_int,
374 pub max_combined_image_units_and_fragment_outputs: ::std::os::raw::c_int,
375 pub max_combined_shader_output_resources: ::std::os::raw::c_int,
376 pub max_image_samples: ::std::os::raw::c_int,
377 pub max_vertex_image_uniforms: ::std::os::raw::c_int,
378 pub max_tess_control_image_uniforms: ::std::os::raw::c_int,
379 pub max_tess_evaluation_image_uniforms: ::std::os::raw::c_int,
380 pub max_geometry_image_uniforms: ::std::os::raw::c_int,
381 pub max_fragment_image_uniforms: ::std::os::raw::c_int,
382 pub max_combined_image_uniforms: ::std::os::raw::c_int,
383 pub max_geometry_texture_image_units: ::std::os::raw::c_int,
384 pub max_geometry_output_vertices: ::std::os::raw::c_int,
385 pub max_geometry_total_output_components: ::std::os::raw::c_int,
386 pub max_geometry_uniform_components: ::std::os::raw::c_int,
387 pub max_geometry_varying_components: ::std::os::raw::c_int,
388 pub max_tess_control_input_components: ::std::os::raw::c_int,
389 pub max_tess_control_output_components: ::std::os::raw::c_int,
390 pub max_tess_control_texture_image_units: ::std::os::raw::c_int,
391 pub max_tess_control_uniform_components: ::std::os::raw::c_int,
392 pub max_tess_control_total_output_components: ::std::os::raw::c_int,
393 pub max_tess_evaluation_input_components: ::std::os::raw::c_int,
394 pub max_tess_evaluation_output_components: ::std::os::raw::c_int,
395 pub max_tess_evaluation_texture_image_units: ::std::os::raw::c_int,
396 pub max_tess_evaluation_uniform_components: ::std::os::raw::c_int,
397 pub max_tess_patch_components: ::std::os::raw::c_int,
398 pub max_patch_vertices: ::std::os::raw::c_int,
399 pub max_tess_gen_level: ::std::os::raw::c_int,
400 pub max_viewports: ::std::os::raw::c_int,
401 pub max_vertex_atomic_counters: ::std::os::raw::c_int,
402 pub max_tess_control_atomic_counters: ::std::os::raw::c_int,
403 pub max_tess_evaluation_atomic_counters: ::std::os::raw::c_int,
404 pub max_geometry_atomic_counters: ::std::os::raw::c_int,
405 pub max_fragment_atomic_counters: ::std::os::raw::c_int,
406 pub max_combined_atomic_counters: ::std::os::raw::c_int,
407 pub max_atomic_counter_bindings: ::std::os::raw::c_int,
408 pub max_vertex_atomic_counter_buffers: ::std::os::raw::c_int,
409 pub max_tess_control_atomic_counter_buffers: ::std::os::raw::c_int,
410 pub max_tess_evaluation_atomic_counter_buffers: ::std::os::raw::c_int,
411 pub max_geometry_atomic_counter_buffers: ::std::os::raw::c_int,
412 pub max_fragment_atomic_counter_buffers: ::std::os::raw::c_int,
413 pub max_combined_atomic_counter_buffers: ::std::os::raw::c_int,
414 pub max_atomic_counter_buffer_size: ::std::os::raw::c_int,
415 pub max_transform_feedback_buffers: ::std::os::raw::c_int,
416 pub max_transform_feedback_interleaved_components: ::std::os::raw::c_int,
417 pub max_cull_distances: ::std::os::raw::c_int,
418 pub max_combined_clip_and_cull_distances: ::std::os::raw::c_int,
419 pub max_samples: ::std::os::raw::c_int,
420 pub max_mesh_output_vertices_nv: ::std::os::raw::c_int,
421 pub max_mesh_output_primitives_nv: ::std::os::raw::c_int,
422 pub max_mesh_work_group_size_x_nv: ::std::os::raw::c_int,
423 pub max_mesh_work_group_size_y_nv: ::std::os::raw::c_int,
424 pub max_mesh_work_group_size_z_nv: ::std::os::raw::c_int,
425 pub max_task_work_group_size_x_nv: ::std::os::raw::c_int,
426 pub max_task_work_group_size_y_nv: ::std::os::raw::c_int,
427 pub max_task_work_group_size_z_nv: ::std::os::raw::c_int,
428 pub max_mesh_view_count_nv: ::std::os::raw::c_int,
429 pub max_mesh_output_vertices_ext: ::std::os::raw::c_int,
430 pub max_mesh_output_primitives_ext: ::std::os::raw::c_int,
431 pub max_mesh_work_group_size_x_ext: ::std::os::raw::c_int,
432 pub max_mesh_work_group_size_y_ext: ::std::os::raw::c_int,
433 pub max_mesh_work_group_size_z_ext: ::std::os::raw::c_int,
434 pub max_task_work_group_size_x_ext: ::std::os::raw::c_int,
435 pub max_task_work_group_size_y_ext: ::std::os::raw::c_int,
436 pub max_task_work_group_size_z_ext: ::std::os::raw::c_int,
437 pub max_mesh_view_count_ext: ::std::os::raw::c_int,
438 pub __bindgen_anon_1: glslang_resource_s__bindgen_ty_1,
439 pub limits: glslang_limits_t,
440}
441#[repr(C)]
442#[derive(Copy, Clone)]
443pub union glslang_resource_s__bindgen_ty_1 {
444 pub max_dual_source_draw_buffers_ext: ::std::os::raw::c_int,
445 pub maxDualSourceDrawBuffersEXT: ::std::os::raw::c_int,
446}
447pub type glslang_resource_t = glslang_resource_s;
448#[repr(C)]
449#[derive(Debug, Copy, Clone)]
450pub struct glsl_include_result_s {
451 pub header_name: *const ::std::os::raw::c_char,
452 pub header_data: *const ::std::os::raw::c_char,
453 pub header_length: usize,
454}
455pub type glsl_include_result_t = glsl_include_result_s;
456pub type glsl_include_local_func = ::std::option::Option<
457 unsafe extern "C" fn(
458 ctx: *mut ::std::os::raw::c_void,
459 header_name: *const ::std::os::raw::c_char,
460 includer_name: *const ::std::os::raw::c_char,
461 include_depth: usize,
462 ) -> *mut glsl_include_result_t,
463>;
464pub type glsl_include_system_func = ::std::option::Option<
465 unsafe extern "C" fn(
466 ctx: *mut ::std::os::raw::c_void,
467 header_name: *const ::std::os::raw::c_char,
468 includer_name: *const ::std::os::raw::c_char,
469 include_depth: usize,
470 ) -> *mut glsl_include_result_t,
471>;
472pub type glsl_free_include_result_func = ::std::option::Option<
473 unsafe extern "C" fn(
474 ctx: *mut ::std::os::raw::c_void,
475 result: *mut glsl_include_result_t,
476 ) -> ::std::os::raw::c_int,
477>;
478#[repr(C)]
479#[derive(Debug, Copy, Clone)]
480pub struct glsl_include_callbacks_s {
481 pub include_system: glsl_include_system_func,
482 pub include_local: glsl_include_local_func,
483 pub free_include_result: glsl_free_include_result_func,
484}
485pub type glsl_include_callbacks_t = glsl_include_callbacks_s;
486#[repr(C)]
487#[derive(Debug, Copy, Clone)]
488pub struct glslang_input_s {
489 pub language: glslang_source_t,
490 pub stage: glslang_stage_t,
491 pub client: glslang_client_t,
492 pub client_version: glslang_target_client_version_t,
493 pub target_language: glslang_target_language_t,
494 pub target_language_version: glslang_target_language_version_t,
495 #[doc = " Shader source code"]
496 pub code: *const ::std::os::raw::c_char,
497 pub default_version: ::std::os::raw::c_int,
498 pub default_profile: glslang_profile_t,
499 pub force_default_version_and_profile: ::std::os::raw::c_int,
500 pub forward_compatible: ::std::os::raw::c_int,
501 pub messages: glslang_messages_t,
502 pub resource: *const glslang_resource_t,
503 pub callbacks: glsl_include_callbacks_t,
504 pub callbacks_ctx: *mut ::std::os::raw::c_void,
505}
506pub type glslang_input_t = glslang_input_s;
507#[repr(C)]
508#[derive(Debug, Copy, Clone)]
509pub struct glslang_spv_options_s {
510 pub generate_debug_info: bool,
511 pub strip_debug_info: bool,
512 pub disable_optimizer: bool,
513 pub optimize_size: bool,
514 pub disassemble: bool,
515 pub validate: bool,
516 pub emit_nonsemantic_shader_debug_info: bool,
517 pub emit_nonsemantic_shader_debug_source: bool,
518 pub compile_only: bool,
519 pub optimize_allow_expanded_id_bound: bool,
520}
521pub type glslang_spv_options_t = glslang_spv_options_s;
522extern "C" {
523 pub fn glslang_get_version(version: *mut glslang_version_t);
524}
525extern "C" {
526 pub fn glslang_initialize_process() -> ::std::os::raw::c_int;
527}
528extern "C" {
529 pub fn glslang_finalize_process();
530}
531extern "C" {
532 pub fn glslang_shader_create(input: *const glslang_input_t) -> *mut glslang_shader_t;
533}
534extern "C" {
535 pub fn glslang_shader_delete(shader: *mut glslang_shader_t);
536}
537extern "C" {
538 pub fn glslang_shader_set_preamble(
539 shader: *mut glslang_shader_t,
540 s: *const ::std::os::raw::c_char,
541 );
542}
543extern "C" {
544 pub fn glslang_shader_shift_binding(
545 shader: *mut glslang_shader_t,
546 res: glslang_resource_type_t,
547 base: ::std::os::raw::c_uint,
548 );
549}
550extern "C" {
551 pub fn glslang_shader_shift_binding_for_set(
552 shader: *mut glslang_shader_t,
553 res: glslang_resource_type_t,
554 base: ::std::os::raw::c_uint,
555 set: ::std::os::raw::c_uint,
556 );
557}
558extern "C" {
559 pub fn glslang_shader_set_options(
560 shader: *mut glslang_shader_t,
561 options: ::std::os::raw::c_int,
562 );
563}
564extern "C" {
565 pub fn glslang_shader_set_glsl_version(
566 shader: *mut glslang_shader_t,
567 version: ::std::os::raw::c_int,
568 );
569}
570extern "C" {
571 pub fn glslang_shader_set_default_uniform_block_set_and_binding(
572 shader: *mut glslang_shader_t,
573 set: ::std::os::raw::c_uint,
574 binding: ::std::os::raw::c_uint,
575 );
576}
577extern "C" {
578 pub fn glslang_shader_set_default_uniform_block_name(
579 shader: *mut glslang_shader_t,
580 name: *const ::std::os::raw::c_char,
581 );
582}
583extern "C" {
584 pub fn glslang_shader_set_resource_set_binding(
585 shader: *mut glslang_shader_t,
586 bindings: *const *const ::std::os::raw::c_char,
587 num_bindings: ::std::os::raw::c_uint,
588 );
589}
590extern "C" {
591 pub fn glslang_shader_preprocess(
592 shader: *mut glslang_shader_t,
593 input: *const glslang_input_t,
594 ) -> ::std::os::raw::c_int;
595}
596extern "C" {
597 pub fn glslang_shader_parse(
598 shader: *mut glslang_shader_t,
599 input: *const glslang_input_t,
600 ) -> ::std::os::raw::c_int;
601}
602extern "C" {
603 pub fn glslang_shader_get_preprocessed_code(
604 shader: *mut glslang_shader_t,
605 ) -> *const ::std::os::raw::c_char;
606}
607extern "C" {
608 pub fn glslang_shader_set_preprocessed_code(
609 shader: *mut glslang_shader_t,
610 code: *const ::std::os::raw::c_char,
611 );
612}
613extern "C" {
614 pub fn glslang_shader_get_info_log(
615 shader: *mut glslang_shader_t,
616 ) -> *const ::std::os::raw::c_char;
617}
618extern "C" {
619 pub fn glslang_shader_get_info_debug_log(
620 shader: *mut glslang_shader_t,
621 ) -> *const ::std::os::raw::c_char;
622}
623extern "C" {
624 pub fn glslang_program_create() -> *mut glslang_program_t;
625}
626extern "C" {
627 pub fn glslang_program_delete(program: *mut glslang_program_t);
628}
629extern "C" {
630 pub fn glslang_program_add_shader(
631 program: *mut glslang_program_t,
632 shader: *mut glslang_shader_t,
633 );
634}
635extern "C" {
636 pub fn glslang_program_link(
637 program: *mut glslang_program_t,
638 messages: ::std::os::raw::c_int,
639 ) -> ::std::os::raw::c_int;
640}
641extern "C" {
642 pub fn glslang_program_add_source_text(
643 program: *mut glslang_program_t,
644 stage: glslang_stage_t,
645 text: *const ::std::os::raw::c_char,
646 len: usize,
647 );
648}
649extern "C" {
650 pub fn glslang_program_set_source_file(
651 program: *mut glslang_program_t,
652 stage: glslang_stage_t,
653 file: *const ::std::os::raw::c_char,
654 );
655}
656extern "C" {
657 pub fn glslang_program_map_io(program: *mut glslang_program_t) -> ::std::os::raw::c_int;
658}
659extern "C" {
660 pub fn glslang_program_map_io_with_resolver_and_mapper(
661 program: *mut glslang_program_t,
662 resolver: *mut glslang_resolver_t,
663 mapper: *mut glslang_mapper_t,
664 ) -> ::std::os::raw::c_int;
665}
666extern "C" {
667 pub fn glslang_program_SPIRV_generate(program: *mut glslang_program_t, stage: glslang_stage_t);
668}
669extern "C" {
670 pub fn glslang_program_SPIRV_generate_with_options(
671 program: *mut glslang_program_t,
672 stage: glslang_stage_t,
673 spv_options: *mut glslang_spv_options_t,
674 );
675}
676extern "C" {
677 pub fn glslang_program_SPIRV_get_size(program: *mut glslang_program_t) -> usize;
678}
679extern "C" {
680 pub fn glslang_program_SPIRV_get(
681 program: *mut glslang_program_t,
682 arg1: *mut ::std::os::raw::c_uint,
683 );
684}
685extern "C" {
686 pub fn glslang_program_SPIRV_get_ptr(
687 program: *mut glslang_program_t,
688 ) -> *mut ::std::os::raw::c_uint;
689}
690extern "C" {
691 pub fn glslang_program_SPIRV_get_messages(
692 program: *mut glslang_program_t,
693 ) -> *const ::std::os::raw::c_char;
694}
695extern "C" {
696 pub fn glslang_program_get_info_log(
697 program: *mut glslang_program_t,
698 ) -> *const ::std::os::raw::c_char;
699}
700extern "C" {
701 pub fn glslang_program_get_info_debug_log(
702 program: *mut glslang_program_t,
703 ) -> *const ::std::os::raw::c_char;
704}
705extern "C" {
706 pub fn glslang_glsl_mapper_create() -> *mut glslang_mapper_t;
707}
708extern "C" {
709 pub fn glslang_glsl_mapper_delete(mapper: *mut glslang_mapper_t);
710}
711extern "C" {
712 pub fn glslang_glsl_resolver_create(
713 program: *mut glslang_program_t,
714 stage: glslang_stage_t,
715 ) -> *mut glslang_resolver_t;
716}
717extern "C" {
718 pub fn glslang_glsl_resolver_delete(resolver: *mut glslang_resolver_t);
719}