Commit graph

144 commits

Author SHA1 Message Date
Dzmitry Malyshau 7aa30a6544 Pass constant size arrays by reference 2019-03-08 00:06:01 -05:00
Maik Klein 88b1ac077d Rename root_extends 2019-03-04 10:22:38 +01:00
Maik Klein 04dbf20371 Transform the ptr chain sample into a test case 2019-03-04 09:56:53 +01:00
Maik Klein 215511f9cf Implement ExtendXXX for multiple root create infos
if there are more than 1
2019-03-03 18:29:37 +01:00
Maik Klein 38fe16f6c7 Use repr transparent for builders 2019-03-03 14:33:19 +01:00
Maik Klein 1e13b999d7 Add some documentation to push_next 2019-02-28 10:59:46 +01:00
Maik Klein c66ae6b77e Add lifetime to push_next 2019-02-28 10:59:46 +01:00
Maik Klein 3de2ca9a22 Implement ExtendsXXX for all builders as well 2019-02-28 10:59:46 +01:00
Maik Klein 4f7ca180f6 Implement push_next 2019-02-28 10:59:46 +01:00
Maik Klein c46a41e1d2 Replace ExtensionChain with a simple iterator 2019-02-28 10:59:46 +01:00
Maik Klein 6d72bb547d Implement extension chaining 2019-02-28 10:59:46 +01:00
Maik Klein e86645d233 Add extension names to the funcion pointer structs 2019-02-12 15:04:38 +01:00
Francesca Plebani 06886a034e Fix ARM build
On ARM, c_char is unsigned.
2019-01-29 14:07:20 -05:00
Matus Talcik 6497e2f58c Builder: fix [c_void] 2018-12-09 11:52:28 +01:00
Benjamin Saunders 06b9599e16 Update to latest rustfmt 2018-12-08 15:42:13 -08:00
Benjamin Saunders c0b7d91faf Don't generate extension traits for inextensible structs 2018-11-30 18:13:54 -08:00
Benjamin Saunders fc1625e81c Fix extension trait implementations, tweak naming
These were being implemented for the trait object of the extension
struct's own extension trait, instead of the extension struct itself.
2018-11-30 18:12:16 -08:00
Matus Talcik 1be701f853 Builder: next pattern 2018-11-22 21:54:05 +01:00
Maik Klein d7218ef7a8 Remove explicit length type 2018-11-22 16:13:09 +01:00
Maik Klein 3aaa804abd Add a cache for bitflags because there are duplicates 2018-11-22 16:13:09 +01:00
Maik Klein ef85a0b5f5 Add fuchsia typedefs 2018-11-22 16:13:09 +01:00
Maik Klein 3a7f811700 Generate aliases for types 2018-11-22 16:13:09 +01:00
Maik Klein 9e4f25f282 Update vk_parse to 0.2 2018-11-22 16:13:09 +01:00
msiglreith 86e273b71a Public export function pointers 2018-11-21 19:11:13 +01:00
imdone.io app user f7381f2307 TODO comments updated by @imdoneio [ci skip] [imdone skip] 2018-11-20 11:55:06 -05:00
Matus Talcik b71dc58efb Initial support for rustfmt 2018-11-17 19:05:28 +01:00
msiglreith cd20cc4e37 Generate function pointer raw type definitions 2018-11-16 18:41:36 +01:00
msiglreith 424ebbad20 Export define macros 2018-11-16 18:41:36 +01:00
Matus Talcik 8a82125788 Builder pattern: Bool32 -> bool. Edge cases added 2018-11-12 23:22:16 +01:00
Maik Klein a55cb9bd0c Merge branch 'flatten' of https://github.com/Ralith/ash into Ralith-flatten 2018-11-11 14:47:51 +01:00
Maik Klein 6beeb16a4e Merge branch 'flags-api' of https://github.com/Ralith/ash into Ralith-flags-api 2018-11-11 14:37:26 +01:00
Maik Klein 35d6bdf144 Remove format 2018-11-04 09:26:10 +01:00
Maik Klein adf571c95c Initialize function pointers to a panicking function if it couldn't be
loaded
2018-11-03 23:37:20 +01:00
Matus Talcik b0864e5c44 Change code function of VkShaderModule to take &[u32] according to spec 2018-10-29 13:32:17 +01:00
Matus Talcik deb83f4b2e fix *const in some setters 2018-10-26 15:49:12 +02:00
Matus Talcik 70acea569d Handle ShaderModuleCreateInfo code properly 2018-10-24 16:00:16 +02:00
Matus Talcik 4072cc39e8 Fix filtering of _count member fields 2018-10-24 00:20:03 +02:00
Matus Talcik 358220cb85 Filter out _count members in builder pattern 2018-10-24 00:19:34 +02:00
Matus Talcik 0c70322d22 Implementation of setters 2018-10-24 00:19:06 +02:00
Maik Klein 5e2f231cf2 wl_* types are not pointers 2018-10-23 15:50:47 +02:00
Benjamin Saunders cd394db60f Wrap function pointers in Option since they might be null 2018-10-08 17:34:40 -07:00
Benjamin Saunders d4789768a6 Fix nonsense Debug impl on non-char static arrays 2018-10-07 10:17:48 -07:00
Benjamin Saunders d78afd87dd Flatten vk.rs module structure and use f32 2018-09-29 11:21:56 -07:00
Benjamin Saunders aa171d405a More traits for dispatchable handles 2018-09-16 12:18:10 -07:00
Benjamin Saunders 0446b59873 More consistent names in flags API
Improves consistency with other newtypes and with bitflags.
2018-09-16 12:08:14 -07:00
Gabriel Majeri fd5d89f2b6 Remove libc usage 2018-08-28 20:01:16 +03:00
Gabriel Majeri b722b0f3a9 Map all integer types to Rust types 2018-08-25 14:09:44 +03:00
Gabriel Majeri 0786d71b39 Fix Vulkan version macros 2018-08-25 10:51:57 +03:00
Maik Klein 898e9791b7
Merge pull request #110 from MatusT/generator
Default trait: set pointers to std::ptr::null()/null_mut()
2018-08-23 07:18:21 +02:00
Maik Klein 9edecfd476
Merge pull request #108 from GabrielMajeri/entry-1.1
Make `enumerate_instance_version` an `Entry` function
2018-08-23 07:13:08 +02:00
Matus Talcik 7e505347f4 Default trait: set pointers to std::ptr::null()/null_mut() instead of zeroed 2018-08-22 22:53:17 +02:00
Gabriel Majeri 15839ddc4e Move enumerate_instance_version to Entry
Also adds `EntryV1_1` trait

# Conflicts:
#	ash/src/version.rs
2018-08-22 10:24:50 +03:00
Benjamin Saunders a0424596a5 More robust Display for flags types
Fixes strange behavior if a Vulkan flags constant setting multiple bits
is defined prior to that which sets only one of those bits.
2018-08-21 21:16:08 -07:00
Benjamin Saunders d5666554fc Expose conversions between enums and raw values 2018-08-20 23:56:33 -07:00
Maik Klein e546fbbb5d [Fix] BitPos can be negative 2018-08-20 09:55:41 +02:00
Maik Klein 8521f01488 Switch to manual_derives 2018-08-20 07:32:30 +02:00
Benjamin Saunders 6738c4c01c impl Display for constants 2018-08-19 20:13:02 -07:00
Maik Klein c4e4ab8fc2 Temporary implement Hash and PartialEq for certain types that only
contain primtive types
2018-08-19 10:10:11 +02:00
Benjamin Saunders 6e54dd346e Introduce Handle trait 2018-08-04 12:22:09 -07:00
Tim 92d0541170 Change type of TRUE and FALSE to Bool32 2018-08-03 15:39:25 +02:00
Tim 2256c431be Use repr(transparent) where possible and apply rustfmt to those files 2018-08-03 12:34:14 +02:00
Maik Klein a6d5a124df Rename constants in the example and inside static arrays 2018-08-01 09:22:28 +02:00
Maik Klein 33a0eee190 Remove "VK" from constants 2018-08-01 09:12:39 +02:00
Maik Klein 89dffac854 Remove useless println 2018-08-01 09:10:41 +02:00
Maik Klein 666e5628ac Remove vendor ext from vendor constant variants 2018-08-01 08:51:50 +02:00
Maik Klein 197b06b0d8 Fix: Some *const pointers should have been *mut pointers 2018-07-31 14:17:24 +02:00
Maik Klein 2921a03638 Fix repeating name in constants 2018-07-31 13:44:22 +02:00
Maik Klein 56bf57acf5 Fix *const *const ptr 2018-07-31 13:30:35 +02:00
Maik Klein 7201e78674 Don't implement Default for handles 2018-07-30 20:23:25 +02:00
Maik Klein 37f9f98297 Add extension feature constants 2018-07-30 20:06:00 +02:00
Maik Klein aeb4ebea51 Refactor generate_extension 2018-07-30 19:53:12 +02:00
Maik Klein 773c64cde1 Implement automatic derive for Debug 2018-07-30 12:50:51 +02:00
Maik Klein b2098bd942 Cleanup from clippy 2018-07-30 08:54:03 +02:00
Maik Klein 3cacb4a00a Add support for extension constants 2018-07-29 22:39:45 +02:00
Maik Klein 1a3094d4c2 Add extensions 2018-07-21 12:56:16 +02:00
Maik Klein 3fc04b77a6 Abstract over constants 2018-07-11 13:18:22 +02:00
Maik Klein a9bf74cebf Remove unnecessary println 2018-07-09 09:25:37 +02:00
Maik Klein f65c62dbaa Implement Error for the new Result 2018-07-09 09:24:18 +02:00
Maik Klein 72f1cdf6ad Transform Bitflags and Enums to constants 2018-07-09 08:49:28 +02:00
Maik Klein fb13cc402e Add extension structure type constants to StructureType 2018-07-07 14:49:17 +02:00
Maik Klein e6e8bbd91b Successfully replace the old vk.rs file 2018-07-07 12:54:31 +02:00
Maik Klein 21e934d5b1 Add unions 2018-07-07 10:43:44 +02:00
Maik Klein 4584a8af2a Add custom Result impl 2018-07-07 10:43:05 +02:00
Maik Klein 9f14e404d7 Impl cexpr 2018-06-24 12:09:37 +02:00
Maik Klein 886d0f0c96 Use constants for bitflags 2018-06-05 17:46:57 +02:00
Maik Klein dc378d7b9f Move from vkxml to vk-parse 2018-06-05 17:46:57 +02:00
Maik Klein bfed51f8d3 Save 2018-06-05 17:46:32 +02:00
Maik Klein b47b20023e Generate bitmasks 2018-06-05 17:46:32 +02:00
Maik Klein 86068db713 Add ptr types 2018-06-05 17:46:32 +02:00
Maik Klein 9d31e95f94 Add function pointer calls 2018-06-05 17:46:32 +02:00
Maik Klein b622fd7993 Add clone 2018-06-05 17:46:32 +02:00
Maik Klein 2c9d4ed71d Better version idents 2018-06-05 17:46:32 +02:00
Maik Klein 6691e7e79f Remove vk:: prefix for types 2018-06-05 17:46:32 +02:00
Maik Klein be08103d1d Init generator 2018-06-05 17:46:32 +02:00