Skip to main content

Crate vulkan_registry

Crate vulkan_registry 

Source
Expand description

§Vulkan API Registry for Rust

This library parses the Vulkan API Registry XML files into Rust data structures.

§Example

List all Vulkan platform names:

fn main() {
    use vulkan_registry::*;

    let registry = Registry::vk(); // vk.xml
    for content in &registry.contents {
        if let RegistryContent::Platforms(platforms) = content {
            for content in &platforms.contents {
                let PlatformsContent::Platform(platform) = content;
                println!("{:?}", platform.name);
            }
        }
    }
}

Structs§

Command
Commands
Component
Deprecate
Enum
Enums
Extension
Extensions
Feature
FeatureRef
Format
Formats
GeneralRef
ImplicitExternSyncParams
Member
Param
Plane
Platform
Platforms
Proto
Registry
Remove
Require
RequireEnum
SpirvCapabilities
SpirvCapability
SpirvCapabilityEnable
SpirvExtension
SpirvExtensionEnable
SpirvExtensions
SpirvImageFormat
SyncAccess
SyncAccessEquivalent
SyncAccessSupport
SyncPipeline
SyncPipelineStage
SyncStage
SyncStageEquivalent
SyncStageSupport
Syncs
Tag
Tags
Type
Types
Unused
VideoCapabilities
VideoCodec
VideoCodecs
VideoFormat
VideoFormatProperties
VideoProfile
VideoProfileMember
VideoProfiles
VideoRequireCapabilities

Enums§

CommandContent
CommandsContent
DeprecateContent
EnumsContent
ExtensionContent
ExtensionsContent
FeatureContent
FormatContent
FormatsContent
ImplicitExternSyncParamsContent
MemberContent
ParamContent
PlatformsContent
ProtoContent
RegistryContent
RemoveContent
RequireContent
SpirvCapabilitiesContent
SpirvCapabilityContent
SpirvExtensionContent
SpirvExtensionsContent
SyncAccessContent
SyncPipelineContent
SyncStageContent
SyncsContent
TagsContent
TypeContent
TypesContent
VideoCodecContent
VideoCodecsContent
VideoFormatContent
VideoProfileMemberContent
VideoProfilesContent