]> git.bitcoin.ninja Git - rust-lightning/commit
[C++ bindings] Add move-assign operator, require rvalue for move
authorMatt Corallo <git@bluematt.me>
Thu, 31 Dec 2020 20:34:50 +0000 (15:34 -0500)
committerMatt Corallo <git@bluematt.me>
Mon, 4 Jan 2021 21:14:26 +0000 (16:14 -0500)
commit1c7af7fadf2ba7b3819441094494e3b8b6ad2c21
tree47d350815e0976ffd67bc6e35a3000838ec70520
parenta799027354249d97cbe6ac1126d5496c81119b4a
[C++ bindings] Add move-assign operator, require rvalue for move

This adds a move-assignment operator (`A& operator=(A&& o)`) to our
C++ wrapper classes as well as requiring an rvalue for the move
auto-convert operator (`operator CStruct()() &&`).

The second makes the C++ wrapper classes much easier to work with
by requiring an explicit `std::move` when the bindings will
automatically move a C++-wrapper object into a C object.
c-bindings-gen/src/blocks.rs