├── .gitignore ├── .vscode ├── extensions.json ├── launch.json ├── settings.json └── tasks.json ├── Cargo.toml ├── LICENSE ├── README.md ├── rustfmt.toml ├── src └── lib.rs └── test_shaders ├── define_with_spaces.wgsl ├── define_with_spaces_processed.wgsl ├── defined.wgsl ├── definer.wgsl ├── ifdef.wgsl ├── ifdef_else.wgsl ├── ifdef_else_else_branch.wgsl ├── ifdef_else_else_branch_processed.wgsl ├── ifdef_else_processed.wgsl ├── ifdef_from_outside.wgsl ├── ifdef_from_outside_processed.wgsl ├── ifdef_included_define.wgsl ├── ifdef_included_define_processed.wgsl ├── ifdef_included_definer.wgsl ├── ifdef_nested.wgsl ├── ifdef_nested_processed.wgsl ├── ifdef_no_endif.wgsl ├── ifdef_processed.wgsl ├── ifdef_undef.wgsl ├── ifdef_undef_processed.wgsl ├── ifdef_with_include.wgsl ├── ifndef.wgsl ├── ifndef_processed.wgsl ├── ifndef_undefined.wgsl ├── ifndef_undefined_processed.wgsl ├── included.wgsl ├── included2.wgsl ├── included_define.wgsl ├── included_define_processed.wgsl ├── included_definer.wgsl ├── includer.wgsl ├── missing_include.wgsl ├── multiple_includes.wgsl ├── multiple_inline_includes.wgsl ├── nested_include.wgsl ├── put_array_definition_bools.wgsl ├── put_array_definition_bools_processed.wgsl ├── put_array_definition_scalars.wgsl ├── put_array_definition_scalars_processed.wgsl ├── put_array_definition_structs.wgsl ├── put_array_definition_structs_processed.wgsl ├── put_array_definition_vectors.wgsl ├── put_array_definition_vectors_processed.wgsl ├── set_constants.wgsl └── set_constants_processed.wgsl /.gitignore: -------------------------------------------------------------------------------- 1 | Cargo.lock 2 | /target 3 | -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/.vscode/launch.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/.vscode/tasks.json -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/README.md -------------------------------------------------------------------------------- /rustfmt.toml: -------------------------------------------------------------------------------- 1 | hard_tabs = true 2 | -------------------------------------------------------------------------------- /src/lib.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/src/lib.rs -------------------------------------------------------------------------------- /test_shaders/define_with_spaces.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/define_with_spaces.wgsl -------------------------------------------------------------------------------- /test_shaders/define_with_spaces_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/define_with_spaces_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/defined.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/defined.wgsl -------------------------------------------------------------------------------- /test_shaders/definer.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/definer.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_else.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_else.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_else_else_branch.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_else_else_branch.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_else_else_branch_processed.wgsl: -------------------------------------------------------------------------------- 1 | struct Else { 2 | value: f32; 3 | }; -------------------------------------------------------------------------------- /test_shaders/ifdef_else_processed.wgsl: -------------------------------------------------------------------------------- 1 | struct NotElse { 2 | value: f32; 3 | }; -------------------------------------------------------------------------------- /test_shaders/ifdef_from_outside.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_from_outside.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_from_outside_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_from_outside_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_included_define.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_included_define.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_included_define_processed.wgsl: -------------------------------------------------------------------------------- 1 | struct DefinedIncluded { 2 | value: u32; 3 | }; -------------------------------------------------------------------------------- /test_shaders/ifdef_included_definer.wgsl: -------------------------------------------------------------------------------- 1 | //!define DEFINED -------------------------------------------------------------------------------- /test_shaders/ifdef_nested.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_nested.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_nested_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_nested_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_no_endif.wgsl: -------------------------------------------------------------------------------- 1 | //!ifdef NO_ENDIF -------------------------------------------------------------------------------- /test_shaders/ifdef_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_undef.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_undef.wgsl -------------------------------------------------------------------------------- /test_shaders/ifdef_undef_processed.wgsl: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /test_shaders/ifdef_with_include.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifdef_with_include.wgsl -------------------------------------------------------------------------------- /test_shaders/ifndef.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifndef.wgsl -------------------------------------------------------------------------------- /test_shaders/ifndef_processed.wgsl: -------------------------------------------------------------------------------- 1 | struct Defined { 2 | value: i32; 3 | }; -------------------------------------------------------------------------------- /test_shaders/ifndef_undefined.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/ifndef_undefined.wgsl -------------------------------------------------------------------------------- /test_shaders/ifndef_undefined_processed.wgsl: -------------------------------------------------------------------------------- 1 | struct UnDefined { 2 | value: i32; 3 | }; -------------------------------------------------------------------------------- /test_shaders/included.wgsl: -------------------------------------------------------------------------------- 1 | struct Included { 2 | color: vec4; 3 | }; -------------------------------------------------------------------------------- /test_shaders/included2.wgsl: -------------------------------------------------------------------------------- 1 | struct Included2 { 2 | color: vec4; 3 | }; -------------------------------------------------------------------------------- /test_shaders/included_define.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/included_define.wgsl -------------------------------------------------------------------------------- /test_shaders/included_define_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/included_define_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/included_definer.wgsl: -------------------------------------------------------------------------------- 1 | //!define u3 vec3 2 | -------------------------------------------------------------------------------- /test_shaders/includer.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/includer.wgsl -------------------------------------------------------------------------------- /test_shaders/missing_include.wgsl: -------------------------------------------------------------------------------- 1 | //!include test_shaders/nonexistent.wgsl -------------------------------------------------------------------------------- /test_shaders/multiple_includes.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/multiple_includes.wgsl -------------------------------------------------------------------------------- /test_shaders/multiple_inline_includes.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/multiple_inline_includes.wgsl -------------------------------------------------------------------------------- /test_shaders/nested_include.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/nested_include.wgsl -------------------------------------------------------------------------------- /test_shaders/put_array_definition_bools.wgsl: -------------------------------------------------------------------------------- 1 | //!define BOOL_ARRAY -------------------------------------------------------------------------------- /test_shaders/put_array_definition_bools_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/put_array_definition_bools_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/put_array_definition_scalars.wgsl: -------------------------------------------------------------------------------- 1 | //!define SCALAR_ARRAY -------------------------------------------------------------------------------- /test_shaders/put_array_definition_scalars_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/put_array_definition_scalars_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/put_array_definition_structs.wgsl: -------------------------------------------------------------------------------- 1 | //!define STRUCT_ARRAY -------------------------------------------------------------------------------- /test_shaders/put_array_definition_structs_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/put_array_definition_structs_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/put_array_definition_vectors.wgsl: -------------------------------------------------------------------------------- 1 | //!define VECTOR_ARRAY -------------------------------------------------------------------------------- /test_shaders/put_array_definition_vectors_processed.wgsl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/elyshaffir/wgsl_preprocessor/HEAD/test_shaders/put_array_definition_vectors_processed.wgsl -------------------------------------------------------------------------------- /test_shaders/set_constants.wgsl: -------------------------------------------------------------------------------- 1 | ONE 2 | TWO -------------------------------------------------------------------------------- /test_shaders/set_constants_processed.wgsl: -------------------------------------------------------------------------------- 1 | 1u 2 | 2u --------------------------------------------------------------------------------