Home
last modified time | relevance | path

Searched refs:Rust (Results 1 – 25 of 1621) sorted by relevance

12345678910>>...65

/external/cronet/stable/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/
Dextern-rust.md1 {{#title extern "Rust" — Rust ♡ C++}}
2 # extern "Rust"
7 extern "Rust" {
13 The `extern "Rust"` section of a CXX bridge declares Rust types and signatures
16 The CXX code generator uses your extern "Rust" section(s) to produce a C++
18 has the same path as the Rust source file containing the bridge, except with a
21 A bridge module may contain zero or more extern "Rust" blocks.
23 ## Opaque Rust types
25 Types defined in Rust that are made available to C++, but only behind an
31 extern "Rust" {
[all …]
Dreference.md1 {{#title The bridge module — Rust ♡ C++}}
9 - ***[extern "Rust"](extern-rust.md)*** — exposing opaque Rust types, Rust
10 functions, Rust methods to C++; functions with lifetimes.
15 structures across a CXX bridge; Rust orphan-rule-compatible way to request
19 Rust as source of truth vs C++ as source of truth.
25 Rust.
28 the language boundary; accessing a Rust error message from C++; customizing
29 the set of caught exceptions and their conversion to a Rust error message.
Dindex.md5 # CXX — safe interop between Rust and C++
7 This library provides a safe mechanism for calling C++ code from Rust and Rust
8 code from C++. It carves out a regime of commonality where Rust and C++ are
19 of the types and function signatures to protect both Rust's and C++'s
34 In this example we are writing a Rust application that calls a C++ client of a
43 extern "Rust" {
60 Now we simply provide Rust definitions of all the things in the `extern "Rust"`
65 this blobstore example in full detail, including all of the Rust code and all of
74 The key takeaway, which is enabled by the CXX library, is that the Rust code in
75 main.rs is 100% ordinary safe Rust code working idiomatically with Rust types
[all …]
Dattributes.md1 {{#title Attributes — Rust ♡ C++}}
7 to control the C++ namespace into which to emit extern Rust items and the
13 extern "Rust" {
33 extern "Rust" {
40 extern "Rust" {
51 Sometimes you want the Rust name of a function or type to differ from its C++
53 function name using distinct Rust names.
67 The `#[rust_name = "..."]` attribute replaces the name that Rust should use for
71 Either of the two attributes may be used on extern "Rust" as well as extern
Dcontext.md1 {{#title Other Rust–C++ interop tools — Rust ♡ C++}}
2 # Context: other Rust–C++ interop tools
4 When it comes to interacting with an idiomatic Rust API or idiomatic C++ API
15 programmatically to `extern "C"` Rust signatures. Preferably, build a
16 safe/idiomatic Rust wrapper on top.
18 - Build a C-compatible Rust wrapper around the Rust code and use **[cbindgen]**
53 containing a pointer ([bindgen#778]) and is not directly expressible in Rust.
64 Imagine Rust and C and C++ as three vertices of a scalene triangle, with length
68 The most similar pair (the shortest edge) is Rust–C++. These languages
76 C++ down to C, and C back up to Rust. The Rust–C edge always involves a
[all …]
/external/cronet/tot/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/
Dextern-rust.md1 {{#title extern "Rust" — Rust ♡ C++}}
2 # extern "Rust"
7 extern "Rust" {
13 The `extern "Rust"` section of a CXX bridge declares Rust types and signatures
16 The CXX code generator uses your extern "Rust" section(s) to produce a C++
18 has the same path as the Rust source file containing the bridge, except with a
21 A bridge module may contain zero or more extern "Rust" blocks.
23 ## Opaque Rust types
25 Types defined in Rust that are made available to C++, but only behind an
31 extern "Rust" {
[all …]
Dreference.md1 {{#title The bridge module — Rust ♡ C++}}
9 - ***[extern "Rust"](extern-rust.md)*** — exposing opaque Rust types, Rust
10 functions, Rust methods to C++; functions with lifetimes.
15 structures across a CXX bridge; Rust orphan-rule-compatible way to request
19 Rust as source of truth vs C++ as source of truth.
25 Rust.
28 the language boundary; accessing a Rust error message from C++; customizing
29 the set of caught exceptions and their conversion to a Rust error message.
Dindex.md5 # CXX — safe interop between Rust and C++
7 This library provides a safe mechanism for calling C++ code from Rust and Rust
8 code from C++. It carves out a regime of commonality where Rust and C++ are
19 of the types and function signatures to protect both Rust's and C++'s
34 In this example we are writing a Rust application that calls a C++ client of a
43 extern "Rust" {
60 Now we simply provide Rust definitions of all the things in the `extern "Rust"`
65 this blobstore example in full detail, including all of the Rust code and all of
74 The key takeaway, which is enabled by the CXX library, is that the Rust code in
75 main.rs is 100% ordinary safe Rust code working idiomatically with Rust types
[all …]
Dattributes.md1 {{#title Attributes — Rust ♡ C++}}
7 to control the C++ namespace into which to emit extern Rust items and the
13 extern "Rust" {
33 extern "Rust" {
40 extern "Rust" {
51 Sometimes you want the Rust name of a function or type to differ from its C++
53 function name using distinct Rust names.
67 The `#[rust_name = "..."]` attribute replaces the name that Rust should use for
71 Either of the two attributes may be used on extern "Rust" as well as extern
Dcontext.md1 {{#title Other Rust–C++ interop tools — Rust ♡ C++}}
2 # Context: other Rust–C++ interop tools
4 When it comes to interacting with an idiomatic Rust API or idiomatic C++ API
15 programmatically to `extern "C"` Rust signatures. Preferably, build a
16 safe/idiomatic Rust wrapper on top.
18 - Build a C-compatible Rust wrapper around the Rust code and use **[cbindgen]**
53 containing a pointer ([bindgen#778]) and is not directly expressible in Rust.
64 Imagine Rust and C and C++ as three vertices of a scalene triangle, with length
68 The most similar pair (the shortest edge) is Rust–C++. These languages
76 C++ down to C, and C back up to Rust. The Rust–C edge always involves a
[all …]
/external/rust/cxx/book/src/
Dextern-rust.md1 {{#title extern "Rust" — Rust ♡ C++}}
2 # extern "Rust"
7 extern "Rust" {
13 The `extern "Rust"` section of a CXX bridge declares Rust types and signatures
16 The CXX code generator uses your extern "Rust" section(s) to produce a C++
18 has the same path as the Rust source file containing the bridge, except with a
21 A bridge module may contain zero or more extern "Rust" blocks.
23 ## Opaque Rust types
25 Types defined in Rust that are made available to C++, but only behind an
31 extern "Rust" {
[all …]
Dreference.md1 {{#title The bridge module — Rust ♡ C++}}
9 - ***[extern "Rust"](extern-rust.md)*** — exposing opaque Rust types, Rust
10 functions, Rust methods to C++; functions with lifetimes.
15 structures across a CXX bridge; Rust orphan-rule-compatible way to request
19 Rust as source of truth vs C++ as source of truth.
25 Rust.
28 the language boundary; accessing a Rust error message from C++; customizing
29 the set of caught exceptions and their conversion to a Rust error message.
Dindex.md5 # CXX — safe interop between Rust and C++
7 This library provides a safe mechanism for calling C++ code from Rust and Rust
8 code from C++. It carves out a regime of commonality where Rust and C++ are
19 of the types and function signatures to protect both Rust's and C++'s
34 In this example we are writing a Rust application that calls a C++ client of a
43 extern "Rust" {
60 Now we simply provide Rust definitions of all the things in the `extern "Rust"`
65 this blobstore example in full detail, including all of the Rust code and all of
74 The key takeaway, which is enabled by the CXX library, is that the Rust code in
75 main.rs is 100% ordinary safe Rust code working idiomatically with Rust types
[all …]
Dattributes.md1 {{#title Attributes — Rust ♡ C++}}
7 to control the C++ namespace into which to emit extern Rust items and the
13 extern "Rust" {
33 extern "Rust" {
40 extern "Rust" {
51 Sometimes you want the Rust name of a function or type to differ from its C++
53 function name using distinct Rust names.
67 The `#[rust_name = "..."]` attribute replaces the name that Rust should use for
71 Either of the two attributes may be used on extern "Rust" as well as extern
Dcontext.md1 {{#title Other Rust–C++ interop tools — Rust ♡ C++}}
2 # Context: other Rust–C++ interop tools
4 When it comes to interacting with an idiomatic Rust API or idiomatic C++ API
15 programmatically to `extern "C"` Rust signatures. Preferably, build a
16 safe/idiomatic Rust wrapper on top.
18 - Build a C-compatible Rust wrapper around the Rust code and use **[cbindgen]**
53 containing a pointer ([bindgen#778]) and is not directly expressible in Rust.
64 Imagine Rust and C and C++ as three vertices of a scalene triangle, with length
68 The most similar pair (the shortest edge) is Rust–C++. These languages
76 C++ down to C, and C back up to Rust. The Rust–C edge always involves a
[all …]
/external/rust/cxx/book/src/build/
Dother.md1 {{#title Other build systems — Rust ♡ C++}}
8 - Link the resulting objects together with your other C++ and Rust objects.
18 CXX's Rust code generation automatically happens when the `#[cxx::bridge]`
19 procedural macro is expanded during the normal Rust compilation process, so no
45 ### Linking the C++ and Rust together
47 When linking a binary which contains mixed Rust and C++ code, you will have to
48 choose between using the Rust toolchain (`rustc`) or the C++ toolchain which you
51 The generated C++ code and the Rust code generated by the procedural macro both
57 Rust does not generate simple standalone `.o` files, so you can't just throw the
58 Rust-generated code into your existing C++ toolchain linker. Instead you need to
[all …]
/external/cronet/tot/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/build/
Dother.md1 {{#title Other build systems — Rust ♡ C++}}
8 - Link the resulting objects together with your other C++ and Rust objects.
18 CXX's Rust code generation automatically happens when the `#[cxx::bridge]`
19 procedural macro is expanded during the normal Rust compilation process, so no
45 ### Linking the C++ and Rust together
47 When linking a binary which contains mixed Rust and C++ code, you will have to
48 choose between using the Rust toolchain (`rustc`) or the C++ toolchain which you
51 The generated C++ code and the Rust code generated by the procedural macro both
57 Rust does not generate simple standalone `.o` files, so you can't just throw the
58 Rust-generated code into your existing C++ toolchain linker. Instead you need to
[all …]
/external/cronet/stable/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/build/
Dother.md1 {{#title Other build systems — Rust ♡ C++}}
8 - Link the resulting objects together with your other C++ and Rust objects.
18 CXX's Rust code generation automatically happens when the `#[cxx::bridge]`
19 procedural macro is expanded during the normal Rust compilation process, so no
45 ### Linking the C++ and Rust together
47 When linking a binary which contains mixed Rust and C++ code, you will have to
48 choose between using the Rust toolchain (`rustc`) or the C++ toolchain which you
51 The generated C++ code and the Rust code generated by the procedural macro both
57 Rust does not generate simple standalone `.o` files, so you can't just throw the
58 Rust-generated code into your existing C++ toolchain linker. Instead you need to
[all …]
/external/cronet/tot/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/binding/
Dcxxvector.md1 {{#title std::vector<T> — Rust ♡ C++}}
4 The Rust binding of std::vector\<T\> is called **[`CxxVector<T>`]**. See the
5 link for documentation of the Rust API.
11 Rust code can never obtain a CxxVector by value. Instead in Rust code we will
15 CxxVector\<T\> does not support T being an opaque Rust type. You should use a
16 Vec\<T\> (C++ rust::Vec\<T\>) instead for collections of opaque Rust types on
21 This program involves Rust code converting a `CxxVector<CxxString>` (i.e.
22 `std::vector<std::string>`) into a Rust `Vec<String>`.
33 extern "Rust" {
/external/cronet/stable/third_party/rust/chromium_crates_io/vendor/cxx-1.0.130/book/src/binding/
Dcxxvector.md1 {{#title std::vector<T> — Rust ♡ C++}}
4 The Rust binding of std::vector\<T\> is called **[`CxxVector<T>`]**. See the
5 link for documentation of the Rust API.
11 Rust code can never obtain a CxxVector by value. Instead in Rust code we will
15 CxxVector\<T\> does not support T being an opaque Rust type. You should use a
16 Vec\<T\> (C++ rust::Vec\<T\>) instead for collections of opaque Rust types on
21 This program involves Rust code converting a `CxxVector<CxxString>` (i.e.
22 `std::vector<std::string>`) into a Rust `Vec<String>`.
33 extern "Rust" {
/external/rust/cxx/book/src/binding/
Dcxxvector.md1 {{#title std::vector<T> — Rust ♡ C++}}
4 The Rust binding of std::vector\<T\> is called **[`CxxVector<T>`]**. See the
5 link for documentation of the Rust API.
11 Rust code can never obtain a CxxVector by value. Instead in Rust code we will
15 CxxVector\<T\> does not support T being an opaque Rust type. You should use a
16 Vec\<T\> (C++ rust::Vec\<T\>) instead for collections of opaque Rust types on
21 This program involves Rust code converting a `CxxVector<CxxString>` (i.e.
22 `std::vector<std::string>`) into a Rust `Vec<String>`.
33 extern "Rust" {
Dresult.md1 {{#title Result<T> — Rust ♡ C++}}
8 handle the translation of those to Rust Result\<T\> using your own shims for
16 If a panic occurs in *any* `extern "Rust"` function, regardless of whether it is
18 calls Rust's `std::process::abort`.
20 ## Returning Result from Rust to C++
22 An `extern "Rust"` function returning a Result turns into a `throw` in C++ if
23 the Rust side produces an error.
27 FFI. The Rust *implementation* (outside of the bridge module) may pick any error
35 extern "Rust" {
56 gives the error message according to the Rust error's std::fmt::Display impl.
[all …]
/external/mesa3d/docs/
Drust.rst1 Rust title
4 Rust Update Policy
8 pace of Rust, we promise to only bump the minimum required Rust version
11 - Only up to the Rust requirement of other major Linux desktop
15 `Minimum Supported Rust Version:
18 - latest `Linux Kernel Rust requirement
21 - Only require a newer Rust version than stated by other rules if and only
/external/bazelbuild-rules_rust/examples/bzlmod/ffi/
DREADME.md1 # Rust FFI
3 In case of an existing C++, Rust can call into the C++ function via FFI.
9 The setup is twofold, the Rust rules are declared in the MODULE file,
29 # Rust toolchain
97 ## Rust Callsite
99 On the Rust side, interestingly, you just declare the cc_import as a dependency of
100 your Rust target.
114Rust source file, your create a FFI binding and wrap the call to it into unsafe. You can do that b…
/external/angle/build/config/
Drust.gni20 # Rust is available in the Chromium build but 3p repos that use //build may
21 # not use Rust and thus won't want to depend on having the Rust toolchain
57 # Chromium provides a Rust toolchain in //third_party/rust-toolchain.
60 # a Rust sysroot, which will have a 'bin' directory and others. Commonly
68 # If you're using a Rust toolchain as specified by rust_sysroot_absolute,
70 # Rust targets to be rebuilt, which allows you to update your toolchain and
74 # If you're using a Rust toolchain as specified by rust_sysroot_absolute,
78 # Whether artifacts produced by the Rust compiler can participate in ThinLTO.
85 # TODO(crbug.com/40281834): Re-enable ThinLTO for Rust on LaCrOS
86 # TODO(b/300937673): Re-enable ThinLTO for Rust on ash-chrome
[all …]

12345678910>>...65