* [glsl-in] Add initial pre-processor
* [glsl-in] Tweak preprocessor after review
- Add IfState struct
- Use FastHashMap to pre-defines
- Use ok-or() for some errors
* [glsl-in] Remove Option in defines arg
* [clippy] disable match_like_matches_macro for now
* [wgsl-in] Return error instead of panic
* [typifier] Convert panics to return error
Still one panic in clone impl for Resolution,
disabled clippy for that one
* [spv-in] REturn error instead of panic'ing
* [spv-out] Return error instead of panic'ing
* [typifier] Use IncompatibleOperand(s) error
Instead of just Other
* [typifier] Use Expression for op in Error
For IncompatibleOperands
* [typifier] revert last commit
* [glsl-in] Implement swizzle for r-values
Related to #210
* [glsl-in] Just return Result from field_selection
Removed unneccessary Otion in return type
* [glsl-in] Always match on type in field_selection
* [glsl.in] Borrow by value in field_selection
There's no legend explaining what symbols mean for supported end-points, but it seems to be following the same format at wgpu. This PR copies wgpu's legend.
* [glsl-in] consolidate tests
- remove simple lex test as was covered by others
- combine related tests to single function
- remove redundant prefix in test names
* [glsl-in] Consolidtae lex tests further
* Added support for glsl core version up to 400
* Added 330 to the list supported versions
* Added links to all extensions and fixed a extension being wrongfully activated
* Cleanup and check for image formats
* Removed useless extension and location on layout
* Added support for external functions and fixed global names
* Typefier allow Scalars in distance and length
* Addressed comments
* Fixed extension appearing after body
* Fixed entry point not being generated
* Fix lexer operator issues (with tests)
* [glsl-in] Don't convet to string in lexer tests
* [glsl-in] cleanup lexer tests further
- Consolidate use statements
- Iterate lex directly, check for None at end
* [glsl-in] Add gl_VertexIndex
Refactor variable handling out of parser.rs
* [glsl-in] Fixes for gl_VertexIndex
- Make lookup_variable a method of Program
- Try to cleanup conditional logic
* [glsl-in] Error on gl_ builtin in wrong stage
Wrapped in glsl-validate feature