rspirv

Crates.iorspirv
lib.rsrspirv
version0.12.0+sdk-1.3.268.0
sourcesrc
created_at2016-11-08 05:27:00.477232
updated_at2023-12-20 17:43:18.259956
descriptionRust library APIs for SPIR-V module manipulation
homepage
repositoryhttps://github.com/gfx-rs/rspirv
max_upload_size
id7166
size2,201,705
Markus Siglreithmaier (msiglreith)

documentation

https://docs.rs/rspirv

README

core of the rspirv project

Crate Documentation

The core crate of the rspirv project providing APIs for processing SPIR-V modules:

  • The whole SPIR-V grammar (instruction layouts and their operands)
  • A data representation of SPIR-V modules and its loader and builder
  • A structured representation of SPIR-V modules (under developing)
  • SPIR-V binary module decoding and parsing functionalities
  • A lifting infrastructure for converting data representation into structured representation.

This crate defines a common SPIR-V data representation (DR) as the medium for various purposes. It also provides a builder to build the DR interactively and a parser to parse a given SPIR-V binary module into its DR. The parser handles decoding and parsing of SPIR-V binary modules according to the grammar, the parsed instructions are sent to the consumer.

The data representation, as the name shows, focuses on presenting the data within a SPIR-V module; a higher level structured representation is currently under developing.

Usage

First add to your Cargo.toml:

[dependencies]
rspirv = "0.12.0"

Examples

Please see the documentation and project's README for examples.

Commit count: 497

cargo fmt