Struct vkxml::Extension
[−]
[src]
pub struct Extension { pub name: Identifier, pub notation: Option<Notation>, pub number: i32, pub disabled: bool, pub match_api: Option<String>, pub ty: Option<ExtensionType>, pub define: Option<Identifier>, pub requires: Option<CommaSeparatedIdentifiers>, pub author: Option<String>, pub contact: Option<String>, pub elements: Vec<ExtensionElement>, }
Specifies the types exposed/forbidden by an extension
Fields
name: Identifier
notation: Option<Notation>
number: i32
The extension's registration number. Used to compute the offsets for enumerators and the like.
disabled: bool
Specifies that the extension is disabled.
match_api: Option<String>
A regex used to match an api
tag on a feature
element.
If it matches, then the extension can be used with that API.
ty: Option<ExtensionType>
define: Option<Identifier>
When generating C-style information, use this as the #define wrapper around this feature.
requires: Option<CommaSeparatedIdentifiers>
A comma-separated list of identifiers, specifying extensions this extension requires in order to function.
The name of the author of an extension, typically a company.
When absent, can be gleamed by using the name
and parsing out the
author part of the name, then finding the corresponding tag
element.
contact: Option<String>
The name and contact info for the person who is responsible for
the extension. Can be inferred in the same way as author
.
elements: Vec<ExtensionElement>