KhronosGroup / KhronosGroup/SPIRV-Cross
C api for pointer types
- Dominant language
- GLSL
- Stars
- 2.5k
- Forks
- 713
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 16
Description
Sometimes there is a need to check whether a type is pointer or not. For example, the only difference between a stage in/out block and a stage in/out variable of a struct type is that the block is represented as a pointer to a struct. Therefore, in order to check that a stage in/out is a block or a simple variable of a struct type, it's necessary to know whether it's a pointer type or not.
glsl:
```
1)
in InputBlock
{
float member;
} input;
2)
struct InputBlockStruct
{
float member;
}
in InputBlockStruct input;
```
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by reviewing the existing C API and the two GLSL examples in the issue to understand how stage blocks and struct variables are represented. The work is complete when callers can determine whether a reflected type is a pointer type and distinguish these two cases through the C API.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- api
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 28/100