slang_qual_fixedinput /* internal */\r
} slang_type_qualifier;\r
\r
-typedef enum slang_type_specifier_type_\r
-{\r
- slang_spec_void,\r
- slang_spec_bool,\r
- slang_spec_bvec2,\r
- slang_spec_bvec3,\r
- slang_spec_bvec4,\r
- slang_spec_int,\r
- slang_spec_ivec2,\r
- slang_spec_ivec3,\r
- slang_spec_ivec4,\r
- slang_spec_float,\r
- slang_spec_vec2,\r
- slang_spec_vec3,\r
- slang_spec_vec4,\r
- slang_spec_mat2,\r
- slang_spec_mat3,\r
- slang_spec_mat4,\r
- slang_spec_sampler1D,\r
- slang_spec_sampler2D,\r
- slang_spec_sampler3D,\r
- slang_spec_samplerCube,\r
- slang_spec_sampler1DShadow,\r
- slang_spec_sampler2DShadow,\r
- slang_spec_struct,\r
- slang_spec_array\r
-} slang_type_specifier_type;\r
-\r
slang_type_specifier_type slang_type_specifier_type_from_string (const char *);\r
const char *slang_type_specifier_type_to_string (slang_type_specifier_type);\r
\r
-typedef struct slang_type_specifier_\r
-{\r
- slang_type_specifier_type type;\r
- struct slang_struct_ *_struct; /* type: spec_struct */\r
- struct slang_type_specifier_ *_array; /* type: spec_array */\r
-} slang_type_specifier;\r
-\r
-int slang_type_specifier_construct (slang_type_specifier *);\r
-void slang_type_specifier_destruct (slang_type_specifier *);\r
-int slang_type_specifier_copy (slang_type_specifier *, const slang_type_specifier *);\r
-int slang_type_specifier_equal (const slang_type_specifier *, const slang_type_specifier *);\r
-\r
typedef struct slang_fully_specified_type_\r
{\r
slang_type_qualifier qualifier;\r
{\r
slang_fully_specified_type type;\r
slang_atom a_name;\r
- struct slang_operation_ *array_size; /* type: spec_array */\r
+ GLuint array_len; /* type: spec_array */\r
struct slang_operation_ *initializer;\r
unsigned int address;\r
unsigned int size;\r
\r
slang_variable *_slang_locate_variable (slang_variable_scope *, slang_atom a_name, GLboolean all);\r
\r
+GLboolean _slang_build_export_data_table (slang_export_data_table *, slang_variable_scope *);\r
+\r
#ifdef __cplusplus\r
}\r
#endif\r