Skip to content

Releases: dtolnay/cxx

1.0.56

05 Oct 20:51
1.0.56
4c49873
Compare
Choose a tag to compare
  • Pass through doc(hidden) attributes inside the bridge module (#945)

1.0.55

24 Sep 18:52
1.0.55
ac98b54
Compare
Choose a tag to compare
  • Fix build script race causing "Failed to create symlink ... File exists (os error 17)" in cxx_build (#938)

1.0.54

27 Aug 20:48
1.0.54
fccef86
Compare
Choose a tag to compare
  • Enable C++ to reserve and read capacity on a rust::String (#924)

  • Enable Rust to reserve capacity on a CxxString (#925)

    This is important in APIs that connect bytes-based code in Rust to std::string-based code in C++.

    use bytes::Buf;
    use cxx::let_cxx_string;
    
    fn thing(buf: &mut dyn Buf) {
        let_cxx_string!(string = "");
    
        // handled by helper:
        string.as_mut().reserve(buf.remaining());
        while buf.remaining() > 0 {
            let chunk = buf.chunk();
            string.as_mut().push_bytes(chunk);
            buf.advance(chunk.len());
        }
    
        ffi::thing(string);
    }
    
    // ffi::thing:
    // void thing(std::string& s) {
    //   WriteMessage msg{std::move(s)};
    //   ...
    // }

1.0.53

26 Aug 21:38
1.0.53
a23d0ec
Compare
Choose a tag to compare
  • Prevent lint inside generated C++ code in projects that build with -Wshadow (#919, thanks @isg)

1.0.52

12 Aug 21:26
1.0.52
8dfba30
Compare
Choose a tag to compare
  • Add method to clear a C++ std::string from Rust (#912)

1.0.51

03 Aug 17:48
1.0.51
9230abf
Compare
Choose a tag to compare
  • Expose UTF-16 rust::String construction to C++ (#906, thanks @Gerharddc)

1.0.50

24 Jul 00:36
1.0.50
7b76ea0
Compare
Choose a tag to compare
  • Allow extern type aliases that have an impl of ExternType<Kind = Trivial> to be used as slice elements (#904)

1.0.49

01 May 21:55
1.0.49
0d7d9e0
Compare
Choose a tag to compare
  • Fix failure to compile generated Rust code in the case of CxxVector containing shared struct containing Rust string (#857)

1.0.48

29 Apr 00:51
1.0.48
a134eca
Compare
Choose a tag to compare
  • Add bool empty() const member function in C++ on rust::Str, rust::String (#853)

1.0.47

26 Apr 21:28
1.0.47
1d0556e
Compare
Choose a tag to compare
  • Some experimental changes related to ingesting Clang ASTs to glean information about enum variant names and discriminant values for which C++ is the source of truth; no public user-facing change yet in this release — to be announced a little bit later (#847)