Commit Graph

63 Commits

Author SHA1 Message Date
David Tolnay
a0b5fcb756
Update documentation to reflect opaque Rust types in slices and arrays 2021-01-04 12:18:24 -08:00
David Tolnay
215e77fbec
Add Rust std::weak_ptr binding 2020-12-28 17:41:20 -08:00
David Tolnay
91b22332fc
Add weak_ptr to planned bindings list
Tracked in #607.
2020-12-28 14:39:53 -08:00
David Tolnay
b3b24a1fe0
Add Rust std::shared_ptr binding 2020-12-01 20:49:04 -08:00
David Tolnay
5515a9e820
Generalize SliceRef codegen to non-u8 element type 2020-11-25 19:34:42 -08:00
David Tolnay
1092640045
Add array support to readme and website 2020-11-24 21:35:43 -08:00
David Tolnay
5945e56497
Add &mut [u8] to readme and website 2020-11-24 14:03:18 -08:00
David Tolnay
bf1000f40e
Release 1.0.0 2020-11-17 08:35:42 -08:00
David Tolnay
6a936b3117
Add link to website 2020-11-17 08:33:33 -08:00
David Tolnay
5e0d82f59d
Merge pull request #456 from dtolnay/unsafe
Enforce unsafe surrounding block on safe-to-call functions
2020-11-15 14:45:05 -08:00
David Tolnay
d9deed1186
Merge demo tweaks into master 2020-11-12 15:28:42 -08:00
David Tolnay
48e98d8995
Update readme Details section to refer to new code example 2020-11-12 15:28:26 -08:00
David Tolnay
6bd29d526b
Merge pull request #453 from dtolnay/sliceconst
Rename rust::Slice<T> to rust::Slice<const T>
2020-11-11 11:33:02 -08:00
David Tolnay
727ea000da
Update to rust 1.48 toolchain to support unsafe extern block 2020-11-11 11:15:38 -08:00
David Tolnay
7be5b1f134
Enforce unsafe surrounding block on safe-to-call functions 2020-11-11 11:09:33 -08:00
David Tolnay
c72a9f6ad6
Update cxx::bridge modules to use extern "C++" as the ABI 2020-11-11 10:57:50 -08:00
David Tolnay
ce29823968
Rename rust::Slice<T> to rust::Slice<const T> 2020-11-11 10:15:13 -08:00
David Tolnay
4ca366fa57
Switch intro example to blobstore client 2020-11-10 23:05:05 -08:00
David Tolnay
2a0a80a260
Raise minimum supported Rust version to 1.43 2020-10-11 03:49:37 -07:00
David Tolnay
d9e789e8cf
Fix readme's reference to directory of cmd
This moved from cmd to gen/cmd in f8ed07327b.
2020-10-08 21:22:45 -07:00
David Tolnay
c499950924
Release 0.5.0 2020-10-08 19:34:50 -07:00
David Tolnay
c5cd7a1325
Show cxx-build dependency in readme 2020-09-03 15:32:34 -07:00
David Tolnay
9c815dfba2
Rephrase build robustness note 2020-09-02 09:54:19 -07:00
David Tolnay
5f3fb89a2a
Release 0.4.0 2020-09-01 23:03:46 -07:00
David Tolnay
278f6fc8cd
Update demo documentation 2020-09-01 20:48:13 -07:00
David Tolnay
85487b00f8
Add Option<T> to todo list 2020-08-22 06:13:27 -07:00
Christopher Durham
b8d211d359
Small typo fix
s/when manipulation a/when manipulating a/
2020-05-24 11:56:32 -04:00
David Tolnay
dd3af090b7
Try out new style of readme badges 2020-05-12 22:19:46 -07:00
David Tolnay
cf22385662
Document c++ standard support 2020-05-11 20:50:59 -07:00
David Tolnay
6cadf70b58
Merge pull request #194 from philipcraig/std_c++11_not_required_on_msvc
avoid MSVC warning via flag_if_supported
2020-05-09 12:06:54 -07:00
Philip Craig
7e14e2e6cb
avoid MSVC warning via flag_if_supported 2020-05-09 12:00:49 -07:00
Philip Craig
064668a00f fix path to c++ generator example 2020-05-09 08:24:12 +01:00
David Tolnay
29061ea1d8
Update build status badge to GitHub Actions 2020-05-05 13:56:54 -07:00
David Tolnay
63a4384af7
Release 0.3.0 2020-04-29 18:57:39 -07:00
David Tolnay
cc9ece5186
Document the line that needs to go in build-dependencies 2020-04-29 18:57:05 -07:00
David Tolnay
f8ed07327b
Split cxx runtime and build components 2020-04-29 18:23:14 -07:00
David Tolnay
5d08baa8ae
Link to release notes from readme 2020-04-27 18:12:08 -07:00
David Tolnay
a8df0943f5
Document pass-by-value restriction of CxxVector 2020-04-25 19:08:40 -07:00
David Tolnay
347c3d01f4
Add Vec and std::vector to builtin types list 2020-04-25 18:02:12 -07:00
David Tolnay
3deb2f9d2a
Remove checkboxes from readme in favor of filed issues 2020-04-22 19:16:38 -07:00
David Tolnay
b6a5f67b19
Remove methods from intro example code
I'd like to keep this first code snippet as focused as possible on the
most important concepts. We'll need to figure out somewhere else to put
exhaustive documentation of the full feature set.
2020-04-17 16:44:03 -07:00
Joel Galenson
f937996fc7 Update documentation 2020-04-16 16:25:04 -07:00
David Tolnay
efe81052e7
Touch up &[u8] PR 2020-04-14 16:42:06 -07:00
Adrian Taylor
f5dd552036 Adding &[u8] support.
This change adds specifically, support for &[u8] with a corresponding
rust::Slice<uint8_t> type. No other types of slice are permitted. The
rationale is that it may be common to pass binary data back and forth
across the FFI boundary, so it's more urgent to get this in place sooner.
Broader support for other slices can wait for the future.

But, both C++ and Rust-side bindings should allow the existing support
to be broadened to other Slice types in future without code changes.

A few specific notes:

* The name "rust::Slice" might be better as "rust::SliceRef" but I'm
  following the precedent of "rust::Str".
* It would be good to add constructors from std::span but as that's
  a C++20 feature, that may have to wait until C++ feature detection
  is resolved.
* Internally, this follows the pattern of &str, where the parser will
  initially recognize this as Type::Ref (of Type::Slice) but then
  will replace that with Type::SliceRefU8. Type::Slice should not
  persist through later stages. As we later come to support other
  types of slice, we would probably want to remove Type::SliceRefU8.
2020-04-14 14:13:48 -07:00
David Tolnay
31b5aad39b
Use more obvious words as the "name in C++" of Result 2020-04-10 19:35:47 -07:00
David Tolnay
e0bad9300c
Remove finished item from todo list 2020-04-02 14:16:29 -07:00
David Tolnay
addc748bbc
Add function pointers to builtin types table 2020-03-29 22:19:48 -07:00
David Tolnay
559fbb3918
Give up and use ascii arrows
None of the unicode ones look consistently good across different systems.
2020-03-17 23:32:22 -07:00
David Tolnay
06515f0ed2
Replace arrows with html entity 2020-03-17 23:28:02 -07:00
David Tolnay
cf2de24613
Add Result to builtin types table
Closes #53.
2020-03-17 23:20:57 -07:00