vulkanish.helpers

Undocumented in source.

Modules

enums
module vulkanish.helpers.enums
Undocumented in source.
types
module vulkanish.helpers.types
Undocumented in source.

Public Imports

vulkanish.helpers.types
public import vulkanish.helpers.types;
Undocumented in source.
vulkanish.helpers.enums
public import vulkanish.helpers.enums;
Undocumented in source.

Members

Aliases

vsh
alias vsh(string name) = vsh!(functionMixin!("vk" ~ name))
Undocumented in source.
vshCall
alias vshCall(alias f) = vsh!f

/alias vshCreate(string name) = vshCreate!(functionMixin!("vkCreate"~name), functionMixin!("vkDestroy"~name)); /template vshCreateImpl(alias f_unenforced, alias deconstruct) /if (isCallable!f_unenforced && isCallable!deconstruct) /{ / alias f = enforced!f_unenforced; / alias Params = Parameters!f; / // Returns through last argument as pointer. / static assert (isPointer!(Params[$-1])); / Vsh!(PointerTarget!(Params[$-1])) vshCreate(Parameters!f[0..$-1] args) { / PointerTarget!(Params[$-1]) outPtr; / f(args,&outPtr); / return foreignPtr(outPtr, vshDestroy!deconstruct(args[0..Parameters!deconstruct.length-2],args[$-1])); / } / // Second to last argument allocator. / static assert (is(Params[$-2] == const(VkAllocationCallbacks)*)); / Vsh!(PointerTarget!(Params[$-1])) vshCreate(Params[0..$-2] args) { / PointerTarget!(Params[$-1]) outPtr; / f(args,null,&outPtr); / static if (args[0..Parameters!deconstruct.length-2].length) / return foreignPtr(vshDestroy!deconstruct(args[0..Parameters!deconstruct.length-2]))(outPtr); / else / return foreignPtr!(vshDestroy!deconstruct(args[0..Parameters!deconstruct.length-2]))(outPtr); / } /}

vshEnumerate
alias vshEnumerate(string name) = vshEnumerate!(functionMixin!("vkEnumerate" ~ name))
Undocumented in source.
vshEnumerateAlt
alias vshEnumerateAlt(string name) = vshEnumerate!(functionMixin!("vk" ~ name))
Undocumented in source.

Imports

vshAssert (from vulkanish.helpers.internal)
public import vulkanish.helpers.internal : vshAssert, vshEnforce;
Undocumented in source.
vshEnforce (from vulkanish.helpers.internal)
public import vulkanish.helpers.internal : vshAssert, vshEnforce;
Undocumented in source.

Templates

vsh
template vsh(alias f_unenforced)
Undocumented in source.
vshCreate
template vshCreate(T...)
Undocumented in source.
vshEnumerate
template vshEnumerate(alias f_unenforced)
Undocumented in source.

Meta