{"size": 1264, "ext": "scrbl", "max_stars_repo_path": "scribblings/spec.scrbl", "max_stars_repo_name": "SimonLSchlee/racket-vulkan", "max_stars_repo_stars_event_min_datetime": null, "max_stars_repo_stars_event_max_datetime": null, "max_issues_repo_path": "scribblings/spec.scrbl", "max_issues_repo_name": "SimonLSchlee/racket-vulkan", "max_issues_repo_issues_event_min_datetime": null, "max_issues_repo_issues_event_max_datetime": null, "max_forks_repo_path": "scribblings/spec.scrbl", "max_forks_repo_name": "SimonLSchlee/racket-vulkan", "max_forks_repo_forks_event_min_datetime": null, "max_forks_repo_forks_event_max_datetime": null}
{"max_stars_count": null, "max_issues_count": null, "max_forks_count": null, "avg_line_length": 37.1764705882, "max_line_length": 163, "alphanum_fraction": 0.7476265823}
#lang scribble/manual
@require[@for-label[vulkan/spec
                    racket/base]]

@title{Controlling the Vulkan Specification}

@defmodule[vulkan/spec]

The @racketmodname[vulkan/spec] module provides data from
@litchar{vk.xml}, the machine-readable specification of Vulkan. It can
download the latest copy from the Khronos Group, and convert the
contents of any @litchar{vk.xml} to an X-expression.

@defproc[(vulkan-spec? [v any/c]) boolean?]{
Returns if argument is a Vulkan specification according to this collection.

Currently the validation is not always correct because it does not yet support
RelaxNG. This will come in a future version.
}

@defthing[vulkan-spec-sources/c (symbols 'local 'remote)]{
These symbols select which @litchar{vk.xml} to use where applicable.

@itemlist[
@item{@racket['local] references the mirror of @litchar{vk.xml} packaged in the @racketmodname[vulkan] collection. It may be out of date, but can be used offline.}
@item{@racket['remote] references the latest official copy of @litchar{vk.xml} published by the Khronos Group.}
]
}

@defproc[(get-vulkan-spec [spec-source vulkan-spec-sources/c 'local])
                          vulkan-spec?]{
Returns the machine-readable Vulkan specification from the given source.
}
