From 20f3269efe1ffc2897ea60e073766421c6bf3230 Mon Sep 17 00:00:00 2001 From: gbin Date: Mon, 21 Oct 2024 12:14:58 +0000 Subject: [PATCH] deploy: 984306b989a66761a8b41ffe53254f2ae9ad63c9 --- cu29/all.html | 2 +- cu29/config/fn.read_configuration.html | 2 +- cu29/config/index.html | 2 +- cu29/config/struct.Cnx.html | 2 +- cu29/config/struct.ComponentConfig.html | 6 +++--- cu29/config/struct.CuConfig.html | 2 +- cu29/config/struct.MonitorConfig.html | 2 +- cu29/config/struct.Node.html | 2 +- cu29/config/struct.Value.html | 6 +++--- cu29/config/type.NodeId.html | 2 +- cu29/copperlist/enum.CopperListState.html | 6 +++--- cu29/copperlist/index.html | 2 +- cu29/copperlist/struct.CopperLiskMask.html | 2 +- cu29/copperlist/struct.CopperList.html | 2 +- cu29/copperlist/struct.CuListsManager.html | 2 +- cu29/copperlist/type.AscIter.html | 2 +- cu29/copperlist/type.AscIterMut.html | 2 +- cu29/copperlist/type.Iter.html | 2 +- cu29/copperlist/type.IterMut.html | 2 +- cu29/curuntime/enum.CuExecutionUnit.html | 2 +- cu29/curuntime/enum.CuTaskType.html | 2 +- cu29/curuntime/fn.compute_runtime_plan.html | 2 +- cu29/curuntime/index.html | 2 +- cu29/curuntime/struct.CuExecutionLoop.html | 2 +- cu29/curuntime/struct.CuExecutionStep.html | 2 +- cu29/curuntime/struct.CuRuntime.html | 2 +- cu29/cutask/index.html | 2 +- cu29/cutask/struct.CuCompactString.html | 2 +- cu29/cutask/struct.CuMsg.html | 2 +- cu29/cutask/struct.CuMsgMetadata.html | 6 +++--- cu29/cutask/trait.CuMsgPack.html | 2 +- cu29/cutask/trait.CuMsgPayload.html | 4 ++-- cu29/cutask/trait.CuSinkTask.html | 4 ++-- cu29/cutask/trait.CuSrcTask.html | 4 ++-- cu29/cutask/trait.CuTask.html | 4 ++-- cu29/cutask/trait.CuTaskLifecycle.html | 4 ++-- cu29/cutask/trait.Freezable.html | 4 ++-- cu29/enum.UnifiedLogType.html | 2 +- cu29/index.html | 2 +- cu29/macro.input_msg.html | 2 +- cu29/macro.output_msg.html | 2 +- cu29/monitoring/enum.CuTaskState.html | 2 +- cu29/monitoring/enum.Decision.html | 2 +- cu29/monitoring/index.html | 2 +- cu29/monitoring/static.GLOBAL.html | 2 +- cu29/monitoring/struct.CountingAllocator.html | 2 +- cu29/monitoring/struct.CuDurationStatistics.html | 2 +- cu29/monitoring/struct.LiveStatistics.html | 2 +- cu29/monitoring/struct.NoMonitor.html | 2 +- cu29/monitoring/struct.ScopedAllocCounter.html | 2 +- cu29/monitoring/trait.CuMonitor.html | 4 ++-- cu29/struct.CuError.html | 6 +++--- cu29/trait.CopperListTuple.html | 4 ++-- cu29/trait.WriteStream.html | 2 +- cu29/type.CuResult.html | 2 +- cu29_clock/all.html | 2 +- cu29_clock/index.html | 2 +- cu29_clock/struct.CuDuration.html | 6 +++--- cu29_clock/struct.Instant.html | 2 +- cu29_clock/struct.OptionCuTime.html | 6 +++--- cu29_clock/struct.RobotClock.html | 2 +- cu29_clock/struct.RobotClockMock.html | 2 +- cu29_clock/trait.ClockProvider.html | 2 +- cu29_clock/type.CuTime.html | 2 +- cu29_derive/all.html | 2 +- cu29_derive/attr.copper_runtime.html | 2 +- cu29_derive/index.html | 2 +- cu29_derive/macro.gen_cumsgs.html | 2 +- cu29_export/all.html | 2 +- cu29_export/enum.Command.html | 2 +- cu29_export/enum.ExportFormat.html | 6 +++--- cu29_export/fn.copperlists_dump.html | 2 +- cu29_export/fn.run_cli.html | 2 +- cu29_export/fn.textlog_dump.html | 2 +- cu29_export/index.html | 2 +- cu29_export/struct.LogReaderCli.html | 2 +- cu29_helpers/all.html | 2 +- cu29_helpers/fn.basic_copper_setup.html | 2 +- cu29_helpers/index.html | 2 +- cu29_helpers/struct.CopperContext.html | 2 +- cu29_intern_strs/all.html | 2 +- cu29_intern_strs/fn.read_interned_strings.html | 2 +- cu29_intern_strs/index.html | 2 +- cu29_log/all.html | 2 +- cu29_log/constant.ANONYMOUS.html | 2 +- cu29_log/constant.MAX_LOG_PARAMS_ON_STACK.html | 2 +- cu29_log/fn.default_log_index_dir.html | 2 +- cu29_log/fn.format_logline.html | 2 +- cu29_log/fn.rebuild_logline.html | 2 +- cu29_log/index.html | 2 +- cu29_log/struct.CuLogEntry.html | 6 +++--- cu29_log_derive/all.html | 2 +- cu29_log_derive/index.html | 2 +- cu29_log_derive/macro.debug.html | 2 +- cu29_log_runtime/all.html | 2 +- cu29_log_runtime/fn.log.html | 2 +- cu29_log_runtime/fn.log_debug_mode.html | 2 +- cu29_log_runtime/index.html | 2 +- cu29_log_runtime/struct.LoggerRuntime.html | 2 +- cu29_log_runtime/struct.NullLog.html | 2 +- cu29_log_runtime/struct.OwningIoWriter.html | 2 +- cu29_log_runtime/struct.SimpleFileWriter.html | 2 +- cu29_rendercfg/all.html | 2 +- cu29_rendercfg/config/fn.read_configuration.html | 2 +- cu29_rendercfg/config/index.html | 2 +- cu29_rendercfg/config/struct.Cnx.html | 2 +- cu29_rendercfg/config/struct.ComponentConfig.html | 6 +++--- cu29_rendercfg/config/struct.CuConfig.html | 2 +- .../config/struct.CuConfigRepresentation.html | 2 +- cu29_rendercfg/config/struct.MonitorConfig.html | 2 +- cu29_rendercfg/config/struct.Node.html | 2 +- cu29_rendercfg/config/struct.Value.html | 6 +++--- cu29_rendercfg/config/type.NodeId.html | 2 +- cu29_rendercfg/enum.UnifiedLogType.html | 2 +- cu29_rendercfg/fn.main.html | 2 +- cu29_rendercfg/index.html | 2 +- cu29_rendercfg/struct.Args.html | 2 +- cu29_rendercfg/struct.CuError.html | 6 +++--- cu29_rendercfg/trait.CopperListTuple.html | 4 ++-- cu29_rendercfg/trait.WriteStream.html | 2 +- cu29_rendercfg/type.CuResult.html | 2 +- cu29_soa_derive/all.html | 2 +- cu29_soa_derive/attr.soa.html | 2 +- cu29_soa_derive/index.html | 2 +- cu29_traits/all.html | 2 +- cu29_traits/enum.UnifiedLogType.html | 2 +- cu29_traits/index.html | 2 +- cu29_traits/struct.CuError.html | 6 +++--- cu29_traits/trait.CopperListTuple.html | 4 ++-- cu29_traits/trait.WriteStream.html | 2 +- cu29_traits/type.CuResult.html | 2 +- cu29_unifiedlog/all.html | 2 +- cu29_unifiedlog/enum.AllocatedSection.html | 2 +- cu29_unifiedlog/enum.UnifiedLogger.html | 2 +- cu29_unifiedlog/fn.stream_write.html | 2 +- cu29_unifiedlog/index.html | 2 +- cu29_unifiedlog/struct.SectionHandle.html | 2 +- cu29_unifiedlog/struct.SectionHeader.html | 2 +- cu29_unifiedlog/struct.UnifiedLoggerBuilder.html | 2 +- cu29_unifiedlog/struct.UnifiedLoggerIOReader.html | 2 +- cu29_unifiedlog/struct.UnifiedLoggerRead.html | 2 +- cu29_unifiedlog/struct.UnifiedLoggerWrite.html | 2 +- help.html | 2 +- index.html | 4 ++-- settings.html | 2 +- src/cu29/config.rs.html | 2 +- src/cu29/copperlist.rs.html | 2 +- src/cu29/curuntime.rs.html | 2 +- src/cu29/cutask.rs.html | 2 +- src/cu29/lib.rs.html | 2 +- src/cu29/monitoring.rs.html | 2 +- src/cu29_clock/lib.rs.html | 2 +- src/cu29_derive/format.rs.html | 2 +- src/cu29_derive/lib.rs.html | 2 +- src/cu29_derive/utils.rs.html | 2 +- src/cu29_export/lib.rs.html | 2 +- src/cu29_helpers/lib.rs.html | 2 +- src/cu29_intern_strs/lib.rs.html | 2 +- src/cu29_log/lib.rs.html | 2 +- src/cu29_log_derive/index.rs.html | 2 +- src/cu29_log_derive/lib.rs.html | 2 +- src/cu29_log_runtime/lib.rs.html | 2 +- src/cu29_rendercfg/config.rs.html | 2 +- src/cu29_rendercfg/rendercfg.rs.html | 2 +- src/cu29_soa_derive/format.rs.html | 2 +- src/cu29_soa_derive/lib.rs.html | 2 +- src/cu29_traits/lib.rs.html | 2 +- src/cu29_unifiedlog/lib.rs.html | 2 +- ...-23e9bde6c69aea69.txt => COPYRIGHT-eb44e4cf.txt} | 0 ...2586e02d97.txt => FiraSans-LICENSE-05ab6dbd.txt} | 0 ...970d388.woff2 => FiraSans-Medium-e1aa3f0a.woff2} | Bin ...843ffd.woff2 => FiraSans-Regular-0fe48ade.woff2} | Bin ...a81cba47b86a.txt => LICENSE-APACHE-a60eea81.txt} | 0 ...5090b722b3f6c56.txt => LICENSE-MIT-23f18e03.txt} | 0 ...tf.woff2 => NanumBarunGothic-13b3dcba.ttf.woff2} | Bin ...41.txt => NanumBarunGothic-LICENSE-a37d393b.txt} | 0 ...tf.woff2 => SourceCodePro-It-fc8b9304.ttf.woff2} | Bin ...6484a.txt => SourceCodePro-LICENSE-67f54ca7.txt} | 0 ...ff2 => SourceCodePro-Regular-8badfe75.ttf.woff2} | Bin ...f2 => SourceCodePro-Semibold-aa29a496.ttf.woff2} | Bin ...f.woff2 => SourceSerif4-Bold-6d4fd4c0.ttf.woff2} | Bin ...ttf.woff2 => SourceSerif4-It-ca3b17ed.ttf.woff2} | Bin ...3b1258b7.md => SourceSerif4-LICENSE-a2cfd9d5.md} | 0 ...off2 => SourceSerif4-Regular-6b053e98.ttf.woff2} | Bin ...on-2c020d218678b618.svg => favicon-044be391.svg} | 0 ...f7d1d52889060.png => favicon-32x32-6580c154.png} | Bin .../{main-f070b9041d14864c.js => main-5f194d8c.js} | 0 ...-76eba96aa4d2e634.css => normalize-9960930a.css} | 0 ...t-0111fcff984fae8f.css => noscript-893ab5e7.css} | 0 ...-151179464ae7ed46.svg => rust-logo-9a9549ea.svg} | 0 ...oc-b0742ba02757f159.css => rustdoc-a5dc3bae.css} | 2 +- ...c985aa763a438.js => scrape-examples-d508a8a9.js} | 0 ...earch-e056c65ede92db13.js => search-c5a66128.js} | 0 ...ngs-805db61a62df4bd2.js => settings-0f613d39.js} | 0 ...t-e66d777a5a92e9b2.js => src-script-56102188.js} | 0 ...rage-1d39b6787ed640ff.js => storage-59e33391.js} | 0 type.impl/core/result/enum.Result.js | 2 +- 197 files changed, 207 insertions(+), 207 deletions(-) rename static.files/{COPYRIGHT-23e9bde6c69aea69.txt => COPYRIGHT-eb44e4cf.txt} (100%) rename static.files/{FiraSans-LICENSE-db4b642586e02d97.txt => FiraSans-LICENSE-05ab6dbd.txt} (100%) rename static.files/{FiraSans-Medium-8f9a781e4970d388.woff2 => FiraSans-Medium-e1aa3f0a.woff2} (100%) rename static.files/{FiraSans-Regular-018c141bf0843ffd.woff2 => FiraSans-Regular-0fe48ade.woff2} (100%) rename static.files/{LICENSE-APACHE-b91fa81cba47b86a.txt => LICENSE-APACHE-a60eea81.txt} (100%) rename static.files/{LICENSE-MIT-65090b722b3f6c56.txt => LICENSE-MIT-23f18e03.txt} (100%) rename static.files/{NanumBarunGothic-0f09457c7a19b7c6.ttf.woff2 => NanumBarunGothic-13b3dcba.ttf.woff2} (100%) rename static.files/{NanumBarunGothic-LICENSE-18c5adf4b52b4041.txt => NanumBarunGothic-LICENSE-a37d393b.txt} (100%) rename static.files/{SourceCodePro-It-1cc31594bf4f1f79.ttf.woff2 => SourceCodePro-It-fc8b9304.ttf.woff2} (100%) rename static.files/{SourceCodePro-LICENSE-d180d465a756484a.txt => SourceCodePro-LICENSE-67f54ca7.txt} (100%) rename static.files/{SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2 => SourceCodePro-Regular-8badfe75.ttf.woff2} (100%) rename static.files/{SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2 => SourceCodePro-Semibold-aa29a496.ttf.woff2} (100%) rename static.files/{SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2 => SourceSerif4-Bold-6d4fd4c0.ttf.woff2} (100%) rename static.files/{SourceSerif4-It-acdfaf1a8af734b1.ttf.woff2 => SourceSerif4-It-ca3b17ed.ttf.woff2} (100%) rename static.files/{SourceSerif4-LICENSE-3bb119e13b1258b7.md => SourceSerif4-LICENSE-a2cfd9d5.md} (100%) rename static.files/{SourceSerif4-Regular-46f98efaafac5295.ttf.woff2 => SourceSerif4-Regular-6b053e98.ttf.woff2} (100%) rename static.files/{favicon-2c020d218678b618.svg => favicon-044be391.svg} (100%) rename static.files/{favicon-32x32-422f7d1d52889060.png => favicon-32x32-6580c154.png} (100%) rename static.files/{main-f070b9041d14864c.js => main-5f194d8c.js} (100%) rename static.files/{normalize-76eba96aa4d2e634.css => normalize-9960930a.css} (100%) rename static.files/{noscript-0111fcff984fae8f.css => noscript-893ab5e7.css} (100%) rename static.files/{rust-logo-151179464ae7ed46.svg => rust-logo-9a9549ea.svg} (100%) rename static.files/{rustdoc-b0742ba02757f159.css => rustdoc-a5dc3bae.css} (72%) rename static.files/{scrape-examples-46fc985aa763a438.js => scrape-examples-d508a8a9.js} (100%) rename static.files/{search-e056c65ede92db13.js => search-c5a66128.js} (100%) rename static.files/{settings-805db61a62df4bd2.js => settings-0f613d39.js} (100%) rename static.files/{src-script-e66d777a5a92e9b2.js => src-script-56102188.js} (100%) rename static.files/{storage-1d39b6787ed640ff.js => storage-59e33391.js} (100%) diff --git a/cu29/all.html b/cu29/all.html index 6272d02ff..ada9e8bec 100644 --- a/cu29/all.html +++ b/cu29/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/cu29/config/fn.read_configuration.html b/cu29/config/fn.read_configuration.html index 01716f5a4..331017cfd 100644 --- a/cu29/config/fn.read_configuration.html +++ b/cu29/config/fn.read_configuration.html @@ -1,2 +1,2 @@ -read_configuration in cu29::config - Rust
cu29::config

Function read_configuration

source
pub fn read_configuration(config_filename: &str) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a file.

+read_configuration in cu29::config - Rust
cu29::config

Function read_configuration

source
pub fn read_configuration(config_filename: &str) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a file.

\ No newline at end of file diff --git a/cu29/config/index.html b/cu29/config/index.html index 99b619822..17e42b4f1 100644 --- a/cu29/config/index.html +++ b/cu29/config/index.html @@ -1,4 +1,4 @@ -cu29::config - Rust
cu29

Module config

source
Expand description

This module defines the configuration of the copper runtime. +cu29::config - Rust

cu29

Module config

source
Expand description

This module defines the configuration of the copper runtime. The configuration is a directed graph where nodes are tasks and edges are connections between tasks. The configuration is serialized in the RON format. The configuration is used to generate the runtime code at compile time.

diff --git a/cu29/config/struct.Cnx.html b/cu29/config/struct.Cnx.html index 08dcb5974..44dd3e9bb 100644 --- a/cu29/config/struct.Cnx.html +++ b/cu29/config/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29::config - Rust
cu29::config

Struct Cnx

source
pub struct Cnx {
+Cnx in cu29::config - Rust
cu29::config

Struct Cnx

source
pub struct Cnx {
     pub msg: String,
     pub batch: Option<u32>,
     pub store: Option<bool>,
diff --git a/cu29/config/struct.ComponentConfig.html b/cu29/config/struct.ComponentConfig.html
index d96893137..3564a3706 100644
--- a/cu29/config/struct.ComponentConfig.html
+++ b/cu29/config/struct.ComponentConfig.html
@@ -1,4 +1,4 @@
-ComponentConfig in cu29::config - Rust
cu29::config

Struct ComponentConfig

source
pub struct ComponentConfig(pub HashMap<String, Value>);
Expand description

This is the configuration of a component (like a task config or a monitoring config):w +ComponentConfig in cu29::config - Rust

cu29::config

Struct ComponentConfig

source
pub struct ComponentConfig(pub HashMap<String, Value>);
Expand description

This is the configuration of a component (like a task config or a monitoring config):w It is a map of key-value pairs. It is given to the new method of the task implementation.

Tuple Fields§

§0: HashMap<String, Value>

Implementations§

source§

impl ComponentConfig

source

pub fn new() -> Self

source

pub fn get<T: From<Value>>(&self, key: &str) -> Option<T>

source

pub fn set<T: Into<Value>>(&mut self, key: &str, value: T)

Trait Implementations§

source§

impl Clone for ComponentConfig

source§

fn clone(&self) -> ComponentConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for ComponentConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for ComponentConfig

source§

fn default() -> ComponentConfig

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for ComponentConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where @@ -14,8 +14,8 @@ From<T> for U chooses to do.

§

impl<T> ToCompactString for T
where T: Display,

§

fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>

Fallible version of [ToCompactString::to_compact_string()] Read more
§

fn to_compact_string(&self) -> CompactString

Converts the given value to a [CompactString]. Read more
source§

impl<T> ToOwned for T
where - T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where + T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

\ No newline at end of file diff --git a/cu29/config/struct.CuConfig.html b/cu29/config/struct.CuConfig.html index 09aefb27d..21f29affc 100644 --- a/cu29/config/struct.CuConfig.html +++ b/cu29/config/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29::config - Rust
cu29::config

Struct CuConfig

source
pub struct CuConfig {
+CuConfig in cu29::config - Rust
cu29::config

Struct CuConfig

source
pub struct CuConfig {
     pub graph: StableDiGraph<Node, Cnx, NodeId>,
     /* private fields */
 }
Expand description

CuConfig is the programmatic representation of the configuration graph. diff --git a/cu29/config/struct.MonitorConfig.html b/cu29/config/struct.MonitorConfig.html index 3d4200197..6ba8dbee1 100644 --- a/cu29/config/struct.MonitorConfig.html +++ b/cu29/config/struct.MonitorConfig.html @@ -1,4 +1,4 @@ -MonitorConfig in cu29::config - Rust

cu29::config

Struct MonitorConfig

source
pub struct MonitorConfig { /* private fields */ }

Implementations§

Trait Implementations§

source§

impl Clone for MonitorConfig

source§

fn clone(&self) -> MonitorConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for MonitorConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for MonitorConfig

source§

fn default() -> MonitorConfig

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for MonitorConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where +MonitorConfig in cu29::config - Rust
cu29::config

Struct MonitorConfig

source
pub struct MonitorConfig { /* private fields */ }

Implementations§

Trait Implementations§

source§

impl Clone for MonitorConfig

source§

fn clone(&self) -> MonitorConfig

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for MonitorConfig

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Default for MonitorConfig

source§

fn default() -> MonitorConfig

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for MonitorConfig

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for MonitorConfig

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where diff --git a/cu29/config/struct.Node.html b/cu29/config/struct.Node.html index 47d08c3e6..84f2e5113 100644 --- a/cu29/config/struct.Node.html +++ b/cu29/config/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29::config - Rust
cu29::config

Struct Node

source
pub struct Node { /* private fields */ }
Expand description

A node in the configuration graph. +Node in cu29::config - Rust

cu29::config

Struct Node

source
pub struct Node { /* private fields */ }
Expand description

A node in the configuration graph. A node represents a Task in the system Graph.

Implementations§

source§

impl Node

source

pub fn new(id: &str, ptype: &str) -> Self

source

pub fn get_id(&self) -> String

source

pub fn set_type(self, name: Option<String>) -> Self

source

pub fn get_type(&self) -> &str

source

pub fn get_instance_config(&self) -> Option<&ComponentConfig>

source

pub fn get_param<T: From<Value>>(&self, key: &str) -> Option<T>

source

pub fn set_param<T: Into<Value>>(&mut self, key: &str, value: T)

Trait Implementations§

source§

impl Clone for Node

source§

fn clone(&self) -> Node

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Node

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Node

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Serialize for Node

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where diff --git a/cu29/config/struct.Value.html b/cu29/config/struct.Value.html index 289765333..a7320d3a7 100644 --- a/cu29/config/struct.Value.html +++ b/cu29/config/struct.Value.html @@ -1,4 +1,4 @@ -Value in cu29::config - Rust
cu29::config

Struct Value

source
pub struct Value(/* private fields */);
Expand description

Wrapper around the ron::Value to allow for custom serialization.

+Value in cu29::config - Rust
cu29::config

Struct Value

source
pub struct Value(/* private fields */);
Expand description

Wrapper around the ron::Value to allow for custom serialization.

Trait Implementations§

source§

impl Clone for Value

source§

fn clone(&self) -> Value

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for Value

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for Value

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for Value

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl From<String> for Value

source§

fn from(value: String) -> Self

Converts to this type from the input type.
source§

impl From<Value> for String

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<Value> for bool

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<Value> for f64

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<Value> for i32

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<Value> for u32

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<Value> for u8

source§

fn from(value: Value) -> Self

Converts to this type from the input type.
source§

impl From<f64> for Value

source§

fn from(value: f64) -> Self

Converts to this type from the input type.
source§

impl From<i32> for Value

source§

fn from(value: i32) -> Self

Converts to this type from the input type.
source§

impl From<u16> for Value

source§

fn from(value: u16) -> Self

Converts to this type from the input type.
source§

impl From<u32> for Value

source§

fn from(value: u32) -> Self

Converts to this type from the input type.
source§

impl From<u8> for Value

source§

fn from(value: u8) -> Self

Converts to this type from the input type.
source§

impl PartialEq for Value

source§

fn eq(&self, other: &Value) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Value

source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where @@ -13,8 +13,8 @@ From<T> for U chooses to do.

§

impl<T> ToCompactString for T
where T: Display,

§

fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>

Fallible version of [ToCompactString::to_compact_string()] Read more
§

fn to_compact_string(&self) -> CompactString

Converts the given value to a [CompactString]. Read more
source§

impl<T> ToOwned for T
where - T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where + T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

\ No newline at end of file diff --git a/cu29/config/type.NodeId.html b/cu29/config/type.NodeId.html index 8bd3663a5..cf8c1e795 100644 --- a/cu29/config/type.NodeId.html +++ b/cu29/config/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29::config - Rust
cu29::config

Type Alias NodeId

source
pub type NodeId = u32;
Expand description

NodeId is the unique identifier of a node in the configuration graph for petgraph +NodeId in cu29::config - Rust

cu29::config

Type Alias NodeId

source
pub type NodeId = u32;
Expand description

NodeId is the unique identifier of a node in the configuration graph for petgraph and the code generation.

\ No newline at end of file diff --git a/cu29/copperlist/enum.CopperListState.html b/cu29/copperlist/enum.CopperListState.html index 50d6f26ec..7b954f80b 100644 --- a/cu29/copperlist/enum.CopperListState.html +++ b/cu29/copperlist/enum.CopperListState.html @@ -1,4 +1,4 @@ -CopperListState in cu29::copperlist - Rust
cu29::copperlist

Enum CopperListState

source
pub enum CopperListState {
+CopperListState in cu29::copperlist - Rust
cu29::copperlist

Enum CopperListState

source
pub enum CopperListState {
     Free,
     Initialized,
     Processing,
@@ -20,8 +20,8 @@
 From<T> for U chooses to do.

§

impl<T> ToCompactString for T
where T: Display,

§

fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>

Fallible version of [ToCompactString::to_compact_string()] Read more
§

fn to_compact_string(&self) -> CompactString

Converts the given value to a [CompactString]. Read more
source§

impl<T> ToOwned for T
where - T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where + T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> CopperListTuple for T
where T: Encode + Decode + Debug,

\ No newline at end of file diff --git a/cu29/copperlist/index.html b/cu29/copperlist/index.html index c1cf54af7..2d3f1ffc5 100644 --- a/cu29/copperlist/index.html +++ b/cu29/copperlist/index.html @@ -1,4 +1,4 @@ -cu29::copperlist - Rust
cu29

Module copperlist

source
Expand description

CopperList is the main data structure used by Copper to communicate between tasks. +cu29::copperlist - Rust

cu29

Module copperlist

source
Expand description

CopperList is the main data structure used by Copper to communicate between tasks. It is a queue that can be used to store preallocated messages between tasks in memory order.

Structs§

\ No newline at end of file diff --git a/cu29/cutask/trait.CuTaskLifecycle.html b/cu29/cutask/trait.CuTaskLifecycle.html index 31b4cc507..bff8851d5 100644 --- a/cu29/cutask/trait.CuTaskLifecycle.html +++ b/cu29/cutask/trait.CuTaskLifecycle.html @@ -1,4 +1,4 @@ -CuTaskLifecycle in cu29::cutask - Rust
cu29::cutask

Trait CuTaskLifecycle

source
pub trait CuTaskLifecycle: Freezable {
+CuTaskLifecycle in cu29::cutask - Rust
cu29::cutask

Trait CuTaskLifecycle

source
pub trait CuTaskLifecycle: Freezable {
     // Required method
     fn new(config: Option<&ComponentConfig>) -> CuResult<Self>
        where Self: Sized;
@@ -21,4 +21,4 @@
 the task to update some state after process is out of the way.
 It can be use for example to maintain statistics etc. that are not time critical for the robot.

source

fn stop(&mut self, _clock: &RobotClock) -> CuResult<()>

Call at the end of the lifecycle of the task.

-

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file +

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

\ No newline at end of file diff --git a/cu29/cutask/trait.Freezable.html b/cu29/cutask/trait.Freezable.html index 054901e03..c01b512e9 100644 --- a/cu29/cutask/trait.Freezable.html +++ b/cu29/cutask/trait.Freezable.html @@ -1,4 +1,4 @@ -Freezable in cu29::cutask - Rust
cu29::cutask

Trait Freezable

source
pub trait Freezable {
+Freezable in cu29::cutask - Rust
cu29::cutask

Trait Freezable

source
pub trait Freezable {
     // Provided methods
     fn freeze<E: Encoder>(&self, encoder: &mut E) -> Result<(), EncodeError> { ... }
     fn thaw<D: Decoder>(&mut self, decoder: &mut D) -> Result<(), DecodeError> { ... }
@@ -9,4 +9,4 @@
 If you have a state, you need to implement this method.

source

fn thaw<D: Decoder>(&mut self, decoder: &mut D) -> Result<(), DecodeError>

This method is called by the framework when it wants to restore the task to a specific state. Here it is similar to Decode but the framework will give you a new instance of the task (the new method will be called)

-

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file +

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

\ No newline at end of file diff --git a/cu29/enum.UnifiedLogType.html b/cu29/enum.UnifiedLogType.html index 2df5acafc..7a9ef7170 100644 --- a/cu29/enum.UnifiedLogType.html +++ b/cu29/enum.UnifiedLogType.html @@ -1,4 +1,4 @@ -UnifiedLogType in cu29 - Rust
cu29

Enum UnifiedLogType

source
pub enum UnifiedLogType {
+UnifiedLogType in cu29 - Rust
cu29

Enum UnifiedLogType

source
pub enum UnifiedLogType {
     Empty,
     StructuredLogLine,
     CopperList,
diff --git a/cu29/index.html b/cu29/index.html
index 9057aaf1a..a8588f458 100644
--- a/cu29/index.html
+++ b/cu29/index.html
@@ -1,4 +1,4 @@
-cu29 - Rust

Crate cu29

source
Expand description
logo +cu29 - Rust

Crate cu29

source
Expand description
logo

§

§Copper

copper GitHub last commit diff --git a/cu29/macro.input_msg.html b/cu29/macro.input_msg.html index eea50ecea..ae58f5e1c 100644 --- a/cu29/macro.input_msg.html +++ b/cu29/macro.input_msg.html @@ -1,4 +1,4 @@ -input_msg in cu29 - Rust

cu29

Macro input_msg

source
macro_rules! input_msg {
+input_msg in cu29 - Rust
cu29

Macro input_msg

source
macro_rules! input_msg {
     ($lifetime:lifetime, $ty:ty) => { ... };
     ($lifetime:lifetime, $($ty:ty),*) => { ... };
 }
\ No newline at end of file diff --git a/cu29/macro.output_msg.html b/cu29/macro.output_msg.html index 90c683c07..e2b24fc1b 100644 --- a/cu29/macro.output_msg.html +++ b/cu29/macro.output_msg.html @@ -1,3 +1,3 @@ -output_msg in cu29 - Rust
cu29

Macro output_msg

source
macro_rules! output_msg {
+output_msg in cu29 - Rust
cu29

Macro output_msg

source
macro_rules! output_msg {
     ($lifetime:lifetime, $ty:ty) => { ... };
 }
\ No newline at end of file diff --git a/cu29/monitoring/enum.CuTaskState.html b/cu29/monitoring/enum.CuTaskState.html index 9079ee13f..145d5c00c 100644 --- a/cu29/monitoring/enum.CuTaskState.html +++ b/cu29/monitoring/enum.CuTaskState.html @@ -1,4 +1,4 @@ -CuTaskState in cu29::monitoring - Rust
cu29::monitoring

Enum CuTaskState

source
pub enum CuTaskState {
+CuTaskState in cu29::monitoring - Rust
cu29::monitoring

Enum CuTaskState

source
pub enum CuTaskState {
     Start,
     Preprocess,
     Process,
diff --git a/cu29/monitoring/enum.Decision.html b/cu29/monitoring/enum.Decision.html
index 41efee765..8db2336c6 100644
--- a/cu29/monitoring/enum.Decision.html
+++ b/cu29/monitoring/enum.Decision.html
@@ -1,4 +1,4 @@
-Decision in cu29::monitoring - Rust
cu29::monitoring

Enum Decision

source
pub enum Decision {
+Decision in cu29::monitoring - Rust
cu29::monitoring

Enum Decision

source
pub enum Decision {
     Abort,
     Ignore,
     Shutdown,
diff --git a/cu29/monitoring/index.html b/cu29/monitoring/index.html
index d870379fb..d7439e694 100644
--- a/cu29/monitoring/index.html
+++ b/cu29/monitoring/index.html
@@ -1,4 +1,4 @@
-cu29::monitoring - Rust
cu29

Module monitoring

source
Expand description

Some basic internal monitoring tooling Copper uses to monitor itself and the tasks it is running.

+cu29::monitoring - Rust
cu29

Module monitoring

source
Expand description

Some basic internal monitoring tooling Copper uses to monitor itself and the tasks it is running.

Structs§

  • A simple allocator that counts the number of bytes allocated and deallocated.
  • A Specialized statistics object for CuDuration. It will also keep track of the jitter between the values.
  • Accumulative stat object that can give your some real time statistics.
  • A do nothing monitor if no monitor is provided. This is basically defining the default behavior of Copper in case of error.
  • A simple struct that counts the number of bytes allocated and deallocated in a scope.

Enums§

Statics§

Traits§

  • Trait to implement a monitoring task.
\ No newline at end of file diff --git a/cu29/monitoring/static.GLOBAL.html b/cu29/monitoring/static.GLOBAL.html index 2a48bf01c..a38937cc3 100644 --- a/cu29/monitoring/static.GLOBAL.html +++ b/cu29/monitoring/static.GLOBAL.html @@ -1 +1 @@ -GLOBAL in cu29::monitoring - Rust
cu29::monitoring

Static GLOBAL

source
pub static GLOBAL: CountingAllocator
\ No newline at end of file +GLOBAL in cu29::monitoring - Rust
cu29::monitoring

Static GLOBAL

source
pub static GLOBAL: CountingAllocator
\ No newline at end of file diff --git a/cu29/monitoring/struct.CountingAllocator.html b/cu29/monitoring/struct.CountingAllocator.html index 06d73c14a..05c87e24c 100644 --- a/cu29/monitoring/struct.CountingAllocator.html +++ b/cu29/monitoring/struct.CountingAllocator.html @@ -1,4 +1,4 @@ -CountingAllocator in cu29::monitoring - Rust
cu29::monitoring

Struct CountingAllocator

source
pub struct CountingAllocator { /* private fields */ }
Expand description

A simple allocator that counts the number of bytes allocated and deallocated.

+CountingAllocator in cu29::monitoring - Rust
cu29::monitoring

Struct CountingAllocator

source
pub struct CountingAllocator { /* private fields */ }
Expand description

A simple allocator that counts the number of bytes allocated and deallocated.

Implementations§

source§

impl CountingAllocator

source

pub const fn new() -> Self

source

pub fn get_allocated(&self) -> usize

source

pub fn get_deallocated(&self) -> usize

source

pub fn reset(&self)

Trait Implementations§

source§

impl Default for CountingAllocator

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl GlobalAlloc for CountingAllocator

source§

unsafe fn alloc(&self, layout: Layout) -> *mut u8

Allocates memory as described by the given layout. Read more
source§

unsafe fn dealloc(&self, ptr: *mut u8, layout: Layout)

Deallocates the block of memory at the given ptr pointer with the given layout. Read more
1.28.0 · source§

unsafe fn alloc_zeroed(&self, layout: Layout) -> *mut u8

Behaves like alloc, but also ensures that the contents are set to zero before being returned. Read more
1.28.0 · source§

unsafe fn realloc( &self, diff --git a/cu29/monitoring/struct.CuDurationStatistics.html b/cu29/monitoring/struct.CuDurationStatistics.html index 9d2a10a4d..bbb92b119 100644 --- a/cu29/monitoring/struct.CuDurationStatistics.html +++ b/cu29/monitoring/struct.CuDurationStatistics.html @@ -1,4 +1,4 @@ -CuDurationStatistics in cu29::monitoring - Rust
cu29::monitoring

Struct CuDurationStatistics

source
pub struct CuDurationStatistics { /* private fields */ }
Expand description

A Specialized statistics object for CuDuration. +CuDurationStatistics in cu29::monitoring - Rust

cu29::monitoring

Struct CuDurationStatistics

source
pub struct CuDurationStatistics { /* private fields */ }
Expand description

A Specialized statistics object for CuDuration. It will also keep track of the jitter between the values.

Implementations§

source§

impl CuDurationStatistics

source

pub fn new(max: CuDuration) -> Self

source

pub fn min(&self) -> CuDuration

source

pub fn max(&self) -> CuDuration

source

pub fn mean(&self) -> CuDuration

source

pub fn percentile(&self, percentile: f64) -> CuDuration

source

pub fn stddev(&self) -> CuDuration

source

pub fn len(&self) -> u64

source

pub fn jitter_min(&self) -> CuDuration

source

pub fn jitter_max(&self) -> CuDuration

source

pub fn jitter_mean(&self) -> CuDuration

source

pub fn jitter_stddev(&self) -> CuDuration

source

pub fn jitter_percentile(&self, percentile: f64) -> CuDuration

source

pub fn record(&mut self, value: CuDuration)

source

pub fn reset(&mut self)

Trait Implementations§

source§

impl Clone for CuDurationStatistics

source§

fn clone(&self) -> CuDurationStatistics

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CuDurationStatistics

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where diff --git a/cu29/monitoring/struct.LiveStatistics.html b/cu29/monitoring/struct.LiveStatistics.html index 1ac042431..0665fb6a0 100644 --- a/cu29/monitoring/struct.LiveStatistics.html +++ b/cu29/monitoring/struct.LiveStatistics.html @@ -1,4 +1,4 @@ -LiveStatistics in cu29::monitoring - Rust
cu29::monitoring

Struct LiveStatistics

source
pub struct LiveStatistics { /* private fields */ }
Expand description

Accumulative stat object that can give your some real time statistics.

+LiveStatistics in cu29::monitoring - Rust
cu29::monitoring

Struct LiveStatistics

source
pub struct LiveStatistics { /* private fields */ }
Expand description

Accumulative stat object that can give your some real time statistics.

Implementations§

source§

impl LiveStatistics

source

pub fn new_unbounded() -> Self

source

pub fn new_with_max(max: u64) -> Self

source

pub fn min(&self) -> u64

source

pub fn max(&self) -> u64

source

pub fn mean(&self) -> f64

source

pub fn percentile(&self, percentile: f64) -> u64

source

pub fn record(&mut self, value: u64)

Adds a value to the statistics.

source

pub fn len(&self) -> u64

source

pub fn reset(&mut self)

Trait Implementations§

source§

impl Clone for LiveStatistics

source§

fn clone(&self) -> LiveStatistics

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for LiveStatistics

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where diff --git a/cu29/monitoring/struct.NoMonitor.html b/cu29/monitoring/struct.NoMonitor.html index 47c8c2885..b14d0ef1c 100644 --- a/cu29/monitoring/struct.NoMonitor.html +++ b/cu29/monitoring/struct.NoMonitor.html @@ -1,4 +1,4 @@ -NoMonitor in cu29::monitoring - Rust
cu29::monitoring

Struct NoMonitor

source
pub struct NoMonitor {}
Expand description

A do nothing monitor if no monitor is provided. +NoMonitor in cu29::monitoring - Rust

cu29::monitoring

Struct NoMonitor

source
pub struct NoMonitor {}
Expand description

A do nothing monitor if no monitor is provided. This is basically defining the default behavior of Copper in case of error.

Trait Implementations§

source§

impl CuMonitor for NoMonitor

source§

fn new( _config: Option<&ComponentConfig>, diff --git a/cu29/monitoring/struct.ScopedAllocCounter.html b/cu29/monitoring/struct.ScopedAllocCounter.html index 079070f0d..e8a3da529 100644 --- a/cu29/monitoring/struct.ScopedAllocCounter.html +++ b/cu29/monitoring/struct.ScopedAllocCounter.html @@ -1,4 +1,4 @@ -ScopedAllocCounter in cu29::monitoring - Rust
cu29::monitoring

Struct ScopedAllocCounter

source
pub struct ScopedAllocCounter { /* private fields */ }
Expand description

A simple struct that counts the number of bytes allocated and deallocated in a scope.

+ScopedAllocCounter in cu29::monitoring - Rust
cu29::monitoring

Struct ScopedAllocCounter

source
pub struct ScopedAllocCounter { /* private fields */ }
Expand description

A simple struct that counts the number of bytes allocated and deallocated in a scope.

Implementations§

Trait Implementations§

source§

impl Default for ScopedAllocCounter

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl Drop for ScopedAllocCounter

Build a difference between the number of bytes allocated and deallocated in the scope at drop time.

source§

fn drop(&mut self)

Executes the destructor for this type. Read more

Auto Trait Implementations§

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where diff --git a/cu29/monitoring/trait.CuMonitor.html b/cu29/monitoring/trait.CuMonitor.html index f01609cc2..48e528f31 100644 --- a/cu29/monitoring/trait.CuMonitor.html +++ b/cu29/monitoring/trait.CuMonitor.html @@ -1,4 +1,4 @@ -CuMonitor in cu29::monitoring - Rust
cu29::monitoring

Trait CuMonitor

source
pub trait CuMonitor: Sized {
+CuMonitor in cu29::monitoring - Rust
cu29::monitoring

Trait CuMonitor

source
pub trait CuMonitor: Sized {
     // Required methods
     fn new(
         config: Option<&ComponentConfig>,
@@ -29,4 +29,4 @@
     error: &CuError,
 ) -> Decision

Callbacked when a Task errored out. The runtime requires an immediate decision.

Provided Methods§

source

fn start(&mut self, _clock: &RobotClock) -> CuResult<()>

source

fn stop(&mut self, _clock: &RobotClock) -> CuResult<()>

Callbacked when copper is stopping.

-

Object Safety§

This trait is not object safe.

Implementors§

\ No newline at end of file +

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

\ No newline at end of file diff --git a/cu29/struct.CuError.html b/cu29/struct.CuError.html index 1a710e3a7..3285a949d 100644 --- a/cu29/struct.CuError.html +++ b/cu29/struct.CuError.html @@ -1,4 +1,4 @@ -CuError in cu29 - Rust
cu29

Struct CuError

source
pub struct CuError { /* private fields */ }
Expand description

Common copper Error type.

+CuError in cu29 - Rust
cu29

Struct CuError

source
pub struct CuError { /* private fields */ }
Expand description

Common copper Error type.

Implementations§

source§

impl CuError

source

pub fn new_with_cause(message: &str, cause: impl Error) -> CuError

source

pub fn add_cause(self, context: &str) -> CuError

Trait Implementations§

source§

impl Clone for CuError

source§

fn clone(&self) -> CuError

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for CuError

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<'de> Deserialize<'de> for CuError

source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<CuError, <__D as Deserializer<'de>>::Error>
where @@ -17,8 +17,8 @@ From<T> for U chooses to do.

§

impl<T> ToCompactString for T
where T: Display,

§

fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>

Fallible version of [ToCompactString::to_compact_string()] Read more
§

fn to_compact_string(&self) -> CompactString

Converts the given value to a [CompactString]. Read more
source§

impl<T> ToOwned for T
where - T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where + T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

\ No newline at end of file diff --git a/cu29/trait.CopperListTuple.html b/cu29/trait.CopperListTuple.html index 7c16ae0ac..c8c3c5367 100644 --- a/cu29/trait.CopperListTuple.html +++ b/cu29/trait.CopperListTuple.html @@ -1,7 +1,7 @@ -CopperListTuple in cu29 - Rust
cu29

Trait CopperListTuple

source
pub trait CopperListTuple:
+CopperListTuple in cu29 - Rust
cu29

Trait CopperListTuple

source
pub trait CopperListTuple:
     Sized
     + Encode
     + Decode
     + Debug { }
Expand description

A CopperListTuple needs to be encodable, decodable and fixed size in memory.

-

Object Safety§

This trait is not object safe.

Implementors§

source§

impl<T> CopperListTuple for T
where +

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

source§

impl<T> CopperListTuple for T
where T: Encode + Decode + Debug,

\ No newline at end of file diff --git a/cu29/trait.WriteStream.html b/cu29/trait.WriteStream.html index 53ac1c9ad..4a9f0142b 100644 --- a/cu29/trait.WriteStream.html +++ b/cu29/trait.WriteStream.html @@ -1,4 +1,4 @@ -WriteStream in cu29 - Rust
cu29

Trait WriteStream

source
pub trait WriteStream<E>:
+WriteStream in cu29 - Rust
cu29

Trait WriteStream

source
pub trait WriteStream<E>:
     Sync
     + Send
     + Debug
where diff --git a/cu29/type.CuResult.html b/cu29/type.CuResult.html index 97280bd42..7634b2731 100644 --- a/cu29/type.CuResult.html +++ b/cu29/type.CuResult.html @@ -1,4 +1,4 @@ -CuResult in cu29 - Rust
cu29

Type Alias CuResult

source
pub type CuResult<T> = Result<T, CuError>;

Aliased Type§

enum CuResult<T> {
+CuResult in cu29 - Rust
cu29

Type Alias CuResult

source
pub type CuResult<T> = Result<T, CuError>;

Aliased Type§

enum CuResult<T> {
     Ok(T),
     Err(CuError),
 }

Variants§

§1.0.0

Ok(T)

Contains the success value

diff --git a/cu29_clock/all.html b/cu29_clock/all.html index 696d0c9fa..6baa8685c 100644 --- a/cu29_clock/all.html +++ b/cu29_clock/all.html @@ -1 +1 @@ -List of all items in this crate
\ No newline at end of file +List of all items in this crate
\ No newline at end of file diff --git a/cu29_clock/index.html b/cu29_clock/index.html index 242e35900..0d85c8085 100644 --- a/cu29_clock/index.html +++ b/cu29_clock/index.html @@ -1,4 +1,4 @@ -cu29_clock - Rust

Crate cu29_clock

source

Structs§

\ No newline at end of file diff --git a/cu29_clock/struct.Instant.html b/cu29_clock/struct.Instant.html index 54d896b6a..79bdbd28f 100644 --- a/cu29_clock/struct.Instant.html +++ b/cu29_clock/struct.Instant.html @@ -1,4 +1,4 @@ -Instant in cu29_clock - Rust
cu29_clock

Struct Instant

pub struct Instant(/* private fields */);
Expand description

A point-in-time wall-clock measurement.

+Instant in cu29_clock - Rust
cu29_clock

Struct Instant

pub struct Instant(/* private fields */);
Expand description

A point-in-time wall-clock measurement.

Mimics most of the functionality of std::time::Instant but provides an additional method for using the “recent time” feature of quanta.

§Monotonicity

diff --git a/cu29_clock/struct.OptionCuTime.html b/cu29_clock/struct.OptionCuTime.html index 5b707c090..590dd6f26 100644 --- a/cu29_clock/struct.OptionCuTime.html +++ b/cu29_clock/struct.OptionCuTime.html @@ -1,4 +1,4 @@ -OptionCuTime in cu29_clock - Rust
cu29_clock

Struct OptionCuTime

source
pub struct OptionCuTime(/* private fields */);
Expand description

Homebrewed Option<CuDuration> to avoid using 128bits just to represent an Option.

+OptionCuTime in cu29_clock - Rust
cu29_clock

Struct OptionCuTime

source
pub struct OptionCuTime(/* private fields */);
Expand description

Homebrewed Option<CuDuration> to avoid using 128bits just to represent an Option.

Implementations§

source§

impl OptionCuTime

source

pub fn is_none(&self) -> bool

source

pub fn none() -> Self

source

pub fn unwrap(self) -> CuTime

Trait Implementations§

source§

impl<'__de> BorrowDecode<'__de> for OptionCuTime

source§

fn borrow_decode<__D: BorrowDecoder<'__de>>( decoder: &mut __D, ) -> Result<Self, DecodeError>

Attempt to decode this type with the given BorrowDecode.
source§

impl Clone for OptionCuTime

source§

fn clone(&self) -> OptionCuTime

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for OptionCuTime

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
source§

impl Decode for OptionCuTime

source§

fn decode<__D: Decoder>(decoder: &mut __D) -> Result<Self, DecodeError>

Attempt to decode this type with the given Decode.
source§

impl Default for OptionCuTime

source§

fn default() -> Self

Returns the “default value” for a type. Read more
source§

impl<'de> Deserialize<'de> for OptionCuTime

source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where @@ -14,8 +14,8 @@

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> ToOwned for T
where - T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where + T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

\ No newline at end of file diff --git a/cu29_clock/struct.RobotClock.html b/cu29_clock/struct.RobotClock.html index dfc28ef34..3f3ddf018 100644 --- a/cu29_clock/struct.RobotClock.html +++ b/cu29_clock/struct.RobotClock.html @@ -1,4 +1,4 @@ -RobotClock in cu29_clock - Rust
cu29_clock

Struct RobotClock

source
pub struct RobotClock { /* private fields */ }
Expand description

A running Robot clock. +RobotClock in cu29_clock - Rust

cu29_clock

Struct RobotClock

source
pub struct RobotClock { /* private fields */ }
Expand description

A running Robot clock. The clock is a monotonic clock that starts at an arbitrary reference time. It is clone resilient, ie a clone will be the same clock, even when mocked.

Implementations§

source§

impl RobotClock

source

pub fn new() -> Self

Creates a RobotClock using now as its reference time. diff --git a/cu29_clock/struct.RobotClockMock.html b/cu29_clock/struct.RobotClockMock.html index 33d134769..8cf976e83 100644 --- a/cu29_clock/struct.RobotClockMock.html +++ b/cu29_clock/struct.RobotClockMock.html @@ -1,4 +1,4 @@ -RobotClockMock in cu29_clock - Rust

cu29_clock

Struct RobotClockMock

source
pub struct RobotClockMock(/* private fields */);
Expand description

A mock clock that can be controlled by the user.

+RobotClockMock in cu29_clock - Rust
cu29_clock

Struct RobotClockMock

source
pub struct RobotClockMock(/* private fields */);
Expand description

A mock clock that can be controlled by the user.

Implementations§

source§

impl RobotClockMock

source

pub fn increment(&self, amount: Duration)

source

pub fn decrement(&self, amount: Duration)

Decrements the time by the given amount. Be careful this brakes the monotonicity of the clock.

source

pub fn value(&self) -> u64

Gets the current value of time.

diff --git a/cu29_clock/trait.ClockProvider.html b/cu29_clock/trait.ClockProvider.html index 28d5eedf9..643b7b81c 100644 --- a/cu29_clock/trait.ClockProvider.html +++ b/cu29_clock/trait.ClockProvider.html @@ -1,4 +1,4 @@ -ClockProvider in cu29_clock - Rust
cu29_clock

Trait ClockProvider

source
pub trait ClockProvider {
+ClockProvider in cu29_clock - Rust
cu29_clock

Trait ClockProvider

source
pub trait ClockProvider {
     // Required method
     fn get_clock(&self) -> RobotClock;
 }
Expand description

A trait to provide a clock to the runtime.

diff --git a/cu29_clock/type.CuTime.html b/cu29_clock/type.CuTime.html index 7dc15929c..a86ffd9aa 100644 --- a/cu29_clock/type.CuTime.html +++ b/cu29_clock/type.CuTime.html @@ -1,2 +1,2 @@ -CuTime in cu29_clock - Rust
cu29_clock

Type Alias CuTime

source
pub type CuTime = CuDuration;
Expand description

A robot time is just a duration from a fixed point in time.

+CuTime in cu29_clock - Rust
cu29_clock

Type Alias CuTime

source
pub type CuTime = CuDuration;
Expand description

A robot time is just a duration from a fixed point in time.

Aliased Type§

struct CuTime(pub u64);

Fields§

§0: u64

Trait Implementations§

source§

impl Into<OptionCuTime> for CuTime

source§

fn into(self) -> OptionCuTime

Converts this type into the (usually inferred) input type.
\ No newline at end of file diff --git a/cu29_derive/all.html b/cu29_derive/all.html index a121f1f5d..dd44943f5 100644 --- a/cu29_derive/all.html +++ b/cu29_derive/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Macros

Attribute Macros

\ No newline at end of file +List of all items in this crate

List of all items

Macros

Attribute Macros

\ No newline at end of file diff --git a/cu29_derive/attr.copper_runtime.html b/cu29_derive/attr.copper_runtime.html index 99f61089d..087a29eb7 100644 --- a/cu29_derive/attr.copper_runtime.html +++ b/cu29_derive/attr.copper_runtime.html @@ -1,3 +1,3 @@ -copper_runtime in cu29_derive - Rust
cu29_derive

Attribute Macro copper_runtime

source
#[copper_runtime]
Expand description

Adds #[copper_runtime(config = “path”)] to your application struct to generate the runtime. +copper_runtime in cu29_derive - Rust

cu29_derive

Attribute Macro copper_runtime

source
#[copper_runtime]
Expand description

Adds #[copper_runtime(config = “path”)] to your application struct to generate the runtime. This will add a “runtime” field to your struct and implement the “new” and “run” methods.

\ No newline at end of file diff --git a/cu29_derive/index.html b/cu29_derive/index.html index 9fddeabce..ea56f2646 100644 --- a/cu29_derive/index.html +++ b/cu29_derive/index.html @@ -1,4 +1,4 @@ -cu29_derive - Rust

Crate cu29_derive

source

Macros§

  • Generates the CopperList content type from a config. +cu29_derive - Rust

    Crate cu29_derive

    source

    Macros§

    • Generates the CopperList content type from a config. gen_cumsgs!(“path/to/config.toml”) It will create a new type called CuMsgs you can pass to the log reader for decoding:

    Attribute Macros§

    • Adds #[copper_runtime(config = “path”)] to your application struct to generate the runtime. This will add a “runtime” field to your struct and implement the “new” and “run” methods.
    \ No newline at end of file diff --git a/cu29_derive/macro.gen_cumsgs.html b/cu29_derive/macro.gen_cumsgs.html index 5d9c7291f..9dba2f95d 100644 --- a/cu29_derive/macro.gen_cumsgs.html +++ b/cu29_derive/macro.gen_cumsgs.html @@ -1,4 +1,4 @@ -gen_cumsgs in cu29_derive - Rust
    cu29_derive

    Macro gen_cumsgs

    source
    gen_cumsgs!() { /* proc-macro */ }
    Expand description

    Generates the CopperList content type from a config. +gen_cumsgs in cu29_derive - Rust

    cu29_derive

    Macro gen_cumsgs

    source
    gen_cumsgs!() { /* proc-macro */ }
    Expand description

    Generates the CopperList content type from a config. gen_cumsgs!(“path/to/config.toml”) It will create a new type called CuMsgs you can pass to the log reader for decoding:

    \ No newline at end of file diff --git a/cu29_export/all.html b/cu29_export/all.html index 30be3cb01..908f85a80 100644 --- a/cu29_export/all.html +++ b/cu29_export/all.html @@ -1 +1 @@ -List of all items in this crate
    \ No newline at end of file +List of all items in this crate
    \ No newline at end of file diff --git a/cu29_export/enum.Command.html b/cu29_export/enum.Command.html index d2ee130e3..f317b354f 100644 --- a/cu29_export/enum.Command.html +++ b/cu29_export/enum.Command.html @@ -1,4 +1,4 @@ -Command in cu29_export - Rust
    cu29_export

    Enum Command

    source
    pub enum Command {
    +Command in cu29_export - Rust
    cu29_export

    Enum Command

    source
    pub enum Command {
         ExtractLog {
             log_index: PathBuf,
         },
    diff --git a/cu29_export/enum.ExportFormat.html b/cu29_export/enum.ExportFormat.html
    index 125038fea..d600ffe78 100644
    --- a/cu29_export/enum.ExportFormat.html
    +++ b/cu29_export/enum.ExportFormat.html
    @@ -1,4 +1,4 @@
    -ExportFormat in cu29_export - Rust
    cu29_export

    Enum ExportFormat

    source
    pub enum ExportFormat {
    +ExportFormat in cu29_export - Rust
    cu29_export

    Enum ExportFormat

    source
    pub enum ExportFormat {
         Json,
         Csv,
     }

    Variants§

    §

    Json

    §

    Csv

    Trait Implementations§

    source§

    impl Clone for ExportFormat

    source§

    fn clone(&self) -> ExportFormat

    Returns a copy of the value. Read more
    1.0.0 · source§

    fn clone_from(&mut self, source: &Self)

    Performs copy-assignment from source. Read more
    source§

    impl Display for ExportFormat

    source§

    fn fmt(&self, f: &mut Formatter<'_>) -> Result

    Formats the value using the given formatter. Read more
    source§

    impl Ord for ExportFormat

    source§

    fn cmp(&self, other: &ExportFormat) -> Ordering

    This method returns an Ordering between self and other. Read more
    1.21.0 · source§

    fn max(self, other: Self) -> Self
    where @@ -25,8 +25,8 @@ From<T> for U chooses to do.

    §

    impl<T> ToCompactString for T
    where T: Display,

    §

    fn try_to_compact_string(&self) -> Result<CompactString, ToCompactStringError>

    Fallible version of [ToCompactString::to_compact_string()] Read more
    §

    fn to_compact_string(&self) -> CompactString

    Converts the given value to a [CompactString]. Read more
    source§

    impl<T> ToOwned for T
    where - T: Clone,

    source§

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T> ToString for T
    where - T: Display + ?Sized,

    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where + T: Clone,

    source§

    type Owned = T

    The resulting type after obtaining ownership.
    source§

    fn to_owned(&self) -> T

    Creates owned data from borrowed data, usually by cloning. Read more
    source§

    fn clone_into(&self, target: &mut T)

    Uses borrowed data to replace owned data, usually by cloning. Read more
    source§

    impl<T> ToString for T
    where + T: Display + ?Sized,

    source§

    default fn to_string(&self) -> String

    Converts the given value to a String. Read more
    source§

    impl<T, U> TryFrom<U> for T
    where U: Into<T>,

    source§

    type Error = Infallible

    The type returned in the event of a conversion error.
    source§

    fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

    Performs the conversion.
    source§

    impl<T, U> TryInto<U> for T
    where U: TryFrom<T>,

    source§

    type Error = <U as TryFrom<T>>::Error

    The type returned in the event of a conversion error.
    source§

    fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

    Performs the conversion.
    §

    impl<T> Ungil for T
    where T: Send,

    \ No newline at end of file diff --git a/cu29_export/fn.copperlists_dump.html b/cu29_export/fn.copperlists_dump.html index ee4760f8e..6da787b94 100644 --- a/cu29_export/fn.copperlists_dump.html +++ b/cu29_export/fn.copperlists_dump.html @@ -1,4 +1,4 @@ -copperlists_dump in cu29_export - Rust
    cu29_export

    Function copperlists_dump

    source
    pub fn copperlists_dump<P: CopperListTuple>(
    +copperlists_dump in cu29_export - Rust
    cu29_export

    Function copperlists_dump

    source
    pub fn copperlists_dump<P: CopperListTuple>(
         src: impl Read,
     ) -> impl Iterator<Item = CopperList<P>>
    Expand description

    Extracts the copper lists from a binary representation. P is the Payload determined by the configuration of the application.

    diff --git a/cu29_export/fn.run_cli.html b/cu29_export/fn.run_cli.html index 7fc73c36f..97bdeb69c 100644 --- a/cu29_export/fn.run_cli.html +++ b/cu29_export/fn.run_cli.html @@ -1,4 +1,4 @@ -run_cli in cu29_export - Rust
    cu29_export

    Function run_cli

    source
    pub fn run_cli<P>() -> CuResult<()>
    where +run_cli in cu29_export - Rust
    cu29_export

    Function run_cli

    source
    pub fn run_cli<P>() -> CuResult<()>
    where P: CopperListTuple,
    Expand description

    This is a generator for a main function to build a log extractor. It depends on the specific type of the CopperList payload that is determined at compile time from the configuration.

    \ No newline at end of file diff --git a/cu29_export/fn.textlog_dump.html b/cu29_export/fn.textlog_dump.html index 3031c35e8..49ef8a0ab 100644 --- a/cu29_export/fn.textlog_dump.html +++ b/cu29_export/fn.textlog_dump.html @@ -1,4 +1,4 @@ -textlog_dump in cu29_export - Rust
    cu29_export

    Function textlog_dump

    source
    pub fn textlog_dump(src: impl Read, index: &Path) -> CuResult<()>
    Expand description

    Full dump of the copper structured log from its binary representation. +textlog_dump in cu29_export - Rust

    cu29_export

    Function textlog_dump

    source
    pub fn textlog_dump(src: impl Read, index: &Path) -> CuResult<()>
    Expand description

    Full dump of the copper structured log from its binary representation. This rebuilds a textual log. src: the source of the log data index: the path to the index file (containing the interned strings constructed at build time)

    diff --git a/cu29_export/index.html b/cu29_export/index.html index 8eb0ea99b..0d81d0068 100644 --- a/cu29_export/index.html +++ b/cu29_export/index.html @@ -1,4 +1,4 @@ -cu29_export - Rust

    Crate cu29_export

    source

    Structs§

    • This is a generator for a main function to build a log extractor.

    Enums§

    Functions§

    • Extracts the copper lists from a binary representation. +cu29_export - Rust

      Crate cu29_export

      source

      Structs§

      • This is a generator for a main function to build a log extractor.

      Enums§

      Functions§

      • Extracts the copper lists from a binary representation. P is the Payload determined by the configuration of the application.
      • This is a generator for a main function to build a log extractor. It depends on the specific type of the CopperList payload that is determined at compile time from the configuration.
      • Full dump of the copper structured log from its binary representation. This rebuilds a textual log. diff --git a/cu29_export/struct.LogReaderCli.html b/cu29_export/struct.LogReaderCli.html index 163767e02..0599da498 100644 --- a/cu29_export/struct.LogReaderCli.html +++ b/cu29_export/struct.LogReaderCli.html @@ -1,4 +1,4 @@ -LogReaderCli in cu29_export - Rust
        cu29_export

        Struct LogReaderCli

        source
        pub struct LogReaderCli {
        +LogReaderCli in cu29_export - Rust
        cu29_export

        Struct LogReaderCli

        source
        pub struct LogReaderCli {
             pub unifiedlog_base: PathBuf,
             pub command: Command,
         }
        Expand description

        This is a generator for a main function to build a log extractor.

        diff --git a/cu29_helpers/all.html b/cu29_helpers/all.html index ea4a5f1e5..45bc822fa 100644 --- a/cu29_helpers/all.html +++ b/cu29_helpers/all.html @@ -1 +1 @@ -List of all items in this crate

        List of all items

        Structs

        Functions

        \ No newline at end of file +List of all items in this crate

        List of all items

        Structs

        Functions

        \ No newline at end of file diff --git a/cu29_helpers/fn.basic_copper_setup.html b/cu29_helpers/fn.basic_copper_setup.html index f71c947f1..c4d84dfc6 100644 --- a/cu29_helpers/fn.basic_copper_setup.html +++ b/cu29_helpers/fn.basic_copper_setup.html @@ -1,4 +1,4 @@ -basic_copper_setup in cu29_helpers - Rust
        cu29_helpers

        Function basic_copper_setup

        source
        pub fn basic_copper_setup(
        +basic_copper_setup in cu29_helpers - Rust
        cu29_helpers

        Function basic_copper_setup

        source
        pub fn basic_copper_setup(
             unifiedlogger_output_base_name: &Path,
             slab_size: Option<usize>,
             _text_log: bool,
        diff --git a/cu29_helpers/index.html b/cu29_helpers/index.html
        index 1dfcdf6e7..967f159fb 100644
        --- a/cu29_helpers/index.html
        +++ b/cu29_helpers/index.html
        @@ -1,2 +1,2 @@
        -cu29_helpers - Rust

        Crate cu29_helpers

        source

        Structs§

        • Just a simple struct to hold the various bits needed to run a Copper application.

        Functions§

        • This is a basic setup for a copper application to get you started. +cu29_helpers - Rust

          Crate cu29_helpers

          source

          Structs§

          • Just a simple struct to hold the various bits needed to run a Copper application.

          Functions§

          • This is a basic setup for a copper application to get you started. Duplicate and customize as needed when your needs grow.
          \ No newline at end of file diff --git a/cu29_helpers/struct.CopperContext.html b/cu29_helpers/struct.CopperContext.html index d1f61c364..614f75f0e 100644 --- a/cu29_helpers/struct.CopperContext.html +++ b/cu29_helpers/struct.CopperContext.html @@ -1,4 +1,4 @@ -CopperContext in cu29_helpers - Rust
          cu29_helpers

          Struct CopperContext

          source
          pub struct CopperContext {
          +CopperContext in cu29_helpers - Rust
          cu29_helpers

          Struct CopperContext

          source
          pub struct CopperContext {
               pub unified_logger: Arc<Mutex<UnifiedLoggerWrite>>,
               pub logger_runtime: LoggerRuntime,
               pub clock: RobotClock,
          diff --git a/cu29_intern_strs/all.html b/cu29_intern_strs/all.html
          index 4cf9064bc..5cc538798 100644
          --- a/cu29_intern_strs/all.html
          +++ b/cu29_intern_strs/all.html
          @@ -1 +1 @@
          -List of all items in this crate

          List of all items

          Functions

          \ No newline at end of file +List of all items in this crate

          List of all items

          Functions

          \ No newline at end of file diff --git a/cu29_intern_strs/fn.read_interned_strings.html b/cu29_intern_strs/fn.read_interned_strings.html index 4e7c04266..77f011858 100644 --- a/cu29_intern_strs/fn.read_interned_strings.html +++ b/cu29_intern_strs/fn.read_interned_strings.html @@ -1,2 +1,2 @@ -read_interned_strings in cu29_intern_strs - Rust
          cu29_intern_strs

          Function read_interned_strings

          source
          pub fn read_interned_strings(index: &Path) -> CuResult<Vec<String>>
          Expand description

          Rebuild the interned string index in memory.

          +read_interned_strings in cu29_intern_strs - Rust
          cu29_intern_strs

          Function read_interned_strings

          source
          pub fn read_interned_strings(index: &Path) -> CuResult<Vec<String>>
          Expand description

          Rebuild the interned string index in memory.

          \ No newline at end of file diff --git a/cu29_intern_strs/index.html b/cu29_intern_strs/index.html index e95d91896..79c3ec3ac 100644 --- a/cu29_intern_strs/index.html +++ b/cu29_intern_strs/index.html @@ -1 +1 @@ -cu29_intern_strs - Rust

          Crate cu29_intern_strs

          source

          Functions§

          \ No newline at end of file +cu29_intern_strs - Rust

          Crate cu29_intern_strs

          source

          Functions§

          \ No newline at end of file diff --git a/cu29_log/all.html b/cu29_log/all.html index 050834f17..04f1f153e 100644 --- a/cu29_log/all.html +++ b/cu29_log/all.html @@ -1 +1 @@ -List of all items in this crate
          \ No newline at end of file +List of all items in this crate
          \ No newline at end of file diff --git a/cu29_log/constant.ANONYMOUS.html b/cu29_log/constant.ANONYMOUS.html index adce16201..ffe2aeb45 100644 --- a/cu29_log/constant.ANONYMOUS.html +++ b/cu29_log/constant.ANONYMOUS.html @@ -1 +1 @@ -ANONYMOUS in cu29_log - Rust
          cu29_log

          Constant ANONYMOUS

          source
          pub const ANONYMOUS: u32 = 0;
          \ No newline at end of file +ANONYMOUS in cu29_log - Rust
          cu29_log

          Constant ANONYMOUS

          source
          pub const ANONYMOUS: u32 = 0;
          \ No newline at end of file diff --git a/cu29_log/constant.MAX_LOG_PARAMS_ON_STACK.html b/cu29_log/constant.MAX_LOG_PARAMS_ON_STACK.html index e9ed3679b..3d1047d22 100644 --- a/cu29_log/constant.MAX_LOG_PARAMS_ON_STACK.html +++ b/cu29_log/constant.MAX_LOG_PARAMS_ON_STACK.html @@ -1 +1 @@ -MAX_LOG_PARAMS_ON_STACK in cu29_log - Rust
          cu29_log

          Constant MAX_LOG_PARAMS_ON_STACK

          source
          pub const MAX_LOG_PARAMS_ON_STACK: usize = 10;
          \ No newline at end of file +MAX_LOG_PARAMS_ON_STACK in cu29_log - Rust
          cu29_log

          Constant MAX_LOG_PARAMS_ON_STACK

          source
          pub const MAX_LOG_PARAMS_ON_STACK: usize = 10;
          \ No newline at end of file diff --git a/cu29_log/fn.default_log_index_dir.html b/cu29_log/fn.default_log_index_dir.html index 331b313d2..ff49e946c 100644 --- a/cu29_log/fn.default_log_index_dir.html +++ b/cu29_log/fn.default_log_index_dir.html @@ -1,2 +1,2 @@ -default_log_index_dir in cu29_log - Rust
          cu29_log

          Function default_log_index_dir

          source
          pub fn default_log_index_dir() -> PathBuf
          Expand description

          Convenience function to returns the default path for the log index directory.

          +default_log_index_dir in cu29_log - Rust
          cu29_log

          Function default_log_index_dir

          source
          pub fn default_log_index_dir() -> PathBuf
          Expand description

          Convenience function to returns the default path for the log index directory.

          \ No newline at end of file diff --git a/cu29_log/fn.format_logline.html b/cu29_log/fn.format_logline.html index 0f9c185c0..ed77b29de 100644 --- a/cu29_log/fn.format_logline.html +++ b/cu29_log/fn.format_logline.html @@ -1,4 +1,4 @@ -format_logline in cu29_log - Rust
          cu29_log

          Function format_logline

          source
          pub fn format_logline(
          +format_logline in cu29_log - Rust
          cu29_log

          Function format_logline

          source
          pub fn format_logline(
               time: CuTime,
               format_str: &str,
               params: &[String],
          diff --git a/cu29_log/fn.rebuild_logline.html b/cu29_log/fn.rebuild_logline.html
          index d7c1152e0..0b441520d 100644
          --- a/cu29_log/fn.rebuild_logline.html
          +++ b/cu29_log/fn.rebuild_logline.html
          @@ -1,4 +1,4 @@
          -rebuild_logline in cu29_log - Rust
          cu29_log

          Function rebuild_logline

          source
          pub fn rebuild_logline(
          +rebuild_logline in cu29_log - Rust
          cu29_log

          Function rebuild_logline

          source
          pub fn rebuild_logline(
               all_interned_strings: &Vec<String>,
               entry: &CuLogEntry,
           ) -> CuResult<String>
          Expand description

          Rebuild a log line from the interned strings and the CuLogEntry. diff --git a/cu29_log/index.html b/cu29_log/index.html index 7129180af..239020164 100644 --- a/cu29_log/index.html +++ b/cu29_log/index.html @@ -1,2 +1,2 @@ -cu29_log - Rust

          Crate cu29_log

          source

          Re-exports§

          Structs§

          • This is the basic structure for a log entry in Copper.

          Constants§

          Functions§

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

-
source§

impl<T> ToString for T
where - T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where +

source§

impl<T> ToString for T
where + T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<T> CopperListTuple for T
where T: Encode + Decode + Debug,

source§

impl<T> DeserializeOwned for T
where diff --git a/cu29_log_derive/all.html b/cu29_log_derive/all.html index 5f57ac398..12f299ce4 100644 --- a/cu29_log_derive/all.html +++ b/cu29_log_derive/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Macros

\ No newline at end of file +List of all items in this crate

List of all items

Macros

\ No newline at end of file diff --git a/cu29_log_derive/index.html b/cu29_log_derive/index.html index e2b53ac4c..fe51c4b42 100644 --- a/cu29_log_derive/index.html +++ b/cu29_log_derive/index.html @@ -1,4 +1,4 @@ -cu29_log_derive - Rust

Crate cu29_log_derive

source

Macros§

  • This macro is used to log a message with parameters. +cu29_log_derive - Rust

    Crate cu29_log_derive

    source

    Macros§

    • This macro is used to log a message with parameters. The first parameter is a string literal that represents the message to be logged. Only {} is supported as a placeholder for parameters. The rest of the parameters are the values to be logged. diff --git a/cu29_log_derive/macro.debug.html b/cu29_log_derive/macro.debug.html index 30a4f23b8..6742c006b 100644 --- a/cu29_log_derive/macro.debug.html +++ b/cu29_log_derive/macro.debug.html @@ -1,4 +1,4 @@ -debug in cu29_log_derive - Rust
      cu29_log_derive

      Macro debug

      source
      debug!() { /* proc-macro */ }
      Expand description

      This macro is used to log a message with parameters. +debug in cu29_log_derive - Rust

      cu29_log_derive

      Macro debug

      source
      debug!() { /* proc-macro */ }
      Expand description

      This macro is used to log a message with parameters. The first parameter is a string literal that represents the message to be logged. Only {} is supported as a placeholder for parameters. The rest of the parameters are the values to be logged. diff --git a/cu29_log_runtime/all.html b/cu29_log_runtime/all.html index 3b2a46723..78c5c4587 100644 --- a/cu29_log_runtime/all.html +++ b/cu29_log_runtime/all.html @@ -1 +1 @@ -List of all items in this crate

      \ No newline at end of file +List of all items in this crate
      \ No newline at end of file diff --git a/cu29_log_runtime/fn.log.html b/cu29_log_runtime/fn.log.html index c5bcbfd2e..bf206918e 100644 --- a/cu29_log_runtime/fn.log.html +++ b/cu29_log_runtime/fn.log.html @@ -1,3 +1,3 @@ -log in cu29_log_runtime - Rust
      cu29_log_runtime

      Function log

      source
      pub fn log(entry: &mut CuLogEntry) -> CuResult<()>
      Expand description

      Function called from generated code to log data. +log in cu29_log_runtime - Rust

      cu29_log_runtime

      Function log

      source
      pub fn log(entry: &mut CuLogEntry) -> CuResult<()>
      Expand description

      Function called from generated code to log data. It moves entry by design, it will be absorbed in the queue.

      \ No newline at end of file diff --git a/cu29_log_runtime/fn.log_debug_mode.html b/cu29_log_runtime/fn.log_debug_mode.html index fe7c3e653..086386219 100644 --- a/cu29_log_runtime/fn.log_debug_mode.html +++ b/cu29_log_runtime/fn.log_debug_mode.html @@ -1,4 +1,4 @@ -log_debug_mode in cu29_log_runtime - Rust
      cu29_log_runtime

      Function log_debug_mode

      source
      pub fn log_debug_mode(
      +log_debug_mode in cu29_log_runtime - Rust
      cu29_log_runtime

      Function log_debug_mode

      source
      pub fn log_debug_mode(
           entry: &mut CuLogEntry,
           format_str: &str,
           param_names: &[&str],
      diff --git a/cu29_log_runtime/index.html b/cu29_log_runtime/index.html
      index a556744e6..fae724674 100644
      --- a/cu29_log_runtime/index.html
      +++ b/cu29_log_runtime/index.html
      @@ -1,3 +1,3 @@
      -cu29_log_runtime - Rust

      Crate cu29_log_runtime

      source

      Structs§

      Functions§

      • Function called from generated code to log data. +cu29_log_runtime - Rust

        Crate cu29_log_runtime

        source

        Structs§

        Functions§

        • Function called from generated code to log data. It moves entry by design, it will be absorbed in the queue.
        • This version of log is only compiled in debug mode This allows a normal logging framework to be bridged.
        \ No newline at end of file diff --git a/cu29_log_runtime/struct.LoggerRuntime.html b/cu29_log_runtime/struct.LoggerRuntime.html index 6356c9fe1..7e9447e17 100644 --- a/cu29_log_runtime/struct.LoggerRuntime.html +++ b/cu29_log_runtime/struct.LoggerRuntime.html @@ -1,4 +1,4 @@ -LoggerRuntime in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct LoggerRuntime

        source
        pub struct LoggerRuntime {}
        Expand description

        The lifetime of this struct is the lifetime of the logger.

        +LoggerRuntime in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct LoggerRuntime

        source
        pub struct LoggerRuntime {}
        Expand description

        The lifetime of this struct is the lifetime of the logger.

        Implementations§

        source§

        impl LoggerRuntime

        source

        pub fn init( clock: RobotClock, destination: impl WriteStream<CuLogEntry> + 'static, diff --git a/cu29_log_runtime/struct.NullLog.html b/cu29_log_runtime/struct.NullLog.html index ee599203a..736935470 100644 --- a/cu29_log_runtime/struct.NullLog.html +++ b/cu29_log_runtime/struct.NullLog.html @@ -1,4 +1,4 @@ -NullLog in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct NullLog

        source
        pub struct NullLog {}

        Trait Implementations§

        source§

        impl Log for NullLog

        source§

        fn enabled(&self, _metadata: &Metadata<'_>) -> bool

        Determines if a log message with the specified metadata would be +NullLog in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct NullLog

        source
        pub struct NullLog {}

        Trait Implementations§

        source§

        impl Log for NullLog

        source§

        fn enabled(&self, _metadata: &Metadata<'_>) -> bool

        Determines if a log message with the specified metadata would be logged. Read more
        source§

        fn log(&self, _record: &Record<'_>)

        Logs the Record. Read more
        source§

        fn flush(&self)

        Flushes any buffered records. Read more

        Auto Trait Implementations§

        Blanket Implementations§

        source§

        impl<T> Any for T
        where T: 'static + ?Sized,

        source§

        fn type_id(&self) -> TypeId

        Gets the TypeId of self. Read more
        source§

        impl<T> Borrow<T> for T
        where T: ?Sized,

        source§

        fn borrow(&self) -> &T

        Immutably borrows from an owned value. Read more
        source§

        impl<T> BorrowMut<T> for T
        where diff --git a/cu29_log_runtime/struct.OwningIoWriter.html b/cu29_log_runtime/struct.OwningIoWriter.html index a18351dda..7c963d8c8 100644 --- a/cu29_log_runtime/struct.OwningIoWriter.html +++ b/cu29_log_runtime/struct.OwningIoWriter.html @@ -1,4 +1,4 @@ -OwningIoWriter in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct OwningIoWriter

        source
        pub struct OwningIoWriter<W: Write> { /* private fields */ }

        Implementations§

        source§

        impl<'a, W: Write> OwningIoWriter<W>

        source

        pub fn new(writer: W) -> Self

        source

        pub fn bytes_written(&self) -> usize

        source

        pub fn flush(&mut self) -> Result<(), EncodeError>

        Trait Implementations§

        source§

        impl<W: Write> Writer for OwningIoWriter<W>

        source§

        fn write(&mut self, bytes: &[u8]) -> Result<(), EncodeError>

        Write bytes to the underlying writer. Exactly bytes.len() bytes must be written, or else an error should be returned.

        Auto Trait Implementations§

        §

        impl<W> Freeze for OwningIoWriter<W>
        where +OwningIoWriter in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct OwningIoWriter

        source
        pub struct OwningIoWriter<W: Write> { /* private fields */ }

        Implementations§

        source§

        impl<'a, W: Write> OwningIoWriter<W>

        source

        pub fn new(writer: W) -> Self

        source

        pub fn bytes_written(&self) -> usize

        source

        pub fn flush(&mut self) -> Result<(), EncodeError>

        Trait Implementations§

        source§

        impl<W: Write> Writer for OwningIoWriter<W>

        source§

        fn write(&mut self, bytes: &[u8]) -> Result<(), EncodeError>

        Write bytes to the underlying writer. Exactly bytes.len() bytes must be written, or else an error should be returned.

        Auto Trait Implementations§

        §

        impl<W> Freeze for OwningIoWriter<W>
        where W: Freeze,

        §

        impl<W> RefUnwindSafe for OwningIoWriter<W>
        where W: RefUnwindSafe,

        §

        impl<W> Send for OwningIoWriter<W>
        where W: Send,

        §

        impl<W> Sync for OwningIoWriter<W>
        where diff --git a/cu29_log_runtime/struct.SimpleFileWriter.html b/cu29_log_runtime/struct.SimpleFileWriter.html index a15e4cbe6..ba2750443 100644 --- a/cu29_log_runtime/struct.SimpleFileWriter.html +++ b/cu29_log_runtime/struct.SimpleFileWriter.html @@ -1,4 +1,4 @@ -SimpleFileWriter in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct SimpleFileWriter

        source
        pub struct SimpleFileWriter { /* private fields */ }
        Expand description

        This allows this crate to be used outside of Copper (ie. decoupling it from the unifiedlog.

        +SimpleFileWriter in cu29_log_runtime - Rust
        cu29_log_runtime

        Struct SimpleFileWriter

        source
        pub struct SimpleFileWriter { /* private fields */ }
        Expand description

        This allows this crate to be used outside of Copper (ie. decoupling it from the unifiedlog.

        Implementations§

        source§

        impl SimpleFileWriter

        source

        pub fn new(path: &PathBuf) -> CuResult<Self>

        Trait Implementations§

        source§

        impl Debug for SimpleFileWriter

        source§

        fn fmt(&self, f: &mut Formatter<'_>) -> Result

        Formats the value using the given formatter. Read more
        source§

        impl WriteStream<CuLogEntry> for SimpleFileWriter

        source§

        fn log(&mut self, obj: &CuLogEntry) -> CuResult<()>

        source§

        fn flush(&mut self) -> CuResult<()>

        Auto Trait Implementations§

        Blanket Implementations§

        source§

        impl<T> Any for T
        where T: 'static + ?Sized,

        source§

        fn type_id(&self) -> TypeId

        Gets the TypeId of self. Read more
        source§

        impl<T> Borrow<T> for T
        where T: ?Sized,

        source§

        fn borrow(&self) -> &T

        Immutably borrows from an owned value. Read more
        source§

        impl<T> BorrowMut<T> for T
        where diff --git a/cu29_rendercfg/all.html b/cu29_rendercfg/all.html index 5968890ca..39b3bd036 100644 --- a/cu29_rendercfg/all.html +++ b/cu29_rendercfg/all.html @@ -1 +1 @@ -List of all items in this crate
        \ No newline at end of file +List of all items in this crate
        \ No newline at end of file diff --git a/cu29_rendercfg/config/fn.read_configuration.html b/cu29_rendercfg/config/fn.read_configuration.html index cc51f6e76..b8b81740a 100644 --- a/cu29_rendercfg/config/fn.read_configuration.html +++ b/cu29_rendercfg/config/fn.read_configuration.html @@ -1,2 +1,2 @@ -read_configuration in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Function read_configuration

        source
        pub fn read_configuration(config_filename: &str) -> CuResult<CuConfig>
        Expand description

        Read a copper configuration from a file.

        +read_configuration in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Function read_configuration

        source
        pub fn read_configuration(config_filename: &str) -> CuResult<CuConfig>
        Expand description

        Read a copper configuration from a file.

        \ No newline at end of file diff --git a/cu29_rendercfg/config/index.html b/cu29_rendercfg/config/index.html index 981cfeae9..6cc403f69 100644 --- a/cu29_rendercfg/config/index.html +++ b/cu29_rendercfg/config/index.html @@ -1,4 +1,4 @@ -cu29_rendercfg::config - Rust
        cu29_rendercfg

        Module config

        source
        Expand description

        This module defines the configuration of the copper runtime. +cu29_rendercfg::config - Rust

        cu29_rendercfg

        Module config

        source
        Expand description

        This module defines the configuration of the copper runtime. The configuration is a directed graph where nodes are tasks and edges are connections between tasks. The configuration is serialized in the RON format. The configuration is used to generate the runtime code at compile time.

        diff --git a/cu29_rendercfg/config/struct.Cnx.html b/cu29_rendercfg/config/struct.Cnx.html index 0eb0594df..6b1df16ea 100644 --- a/cu29_rendercfg/config/struct.Cnx.html +++ b/cu29_rendercfg/config/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Cnx

        source
        pub struct Cnx {
        +Cnx in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Cnx

        source
        pub struct Cnx {
             src: String,
             dst: String,
             pub msg: String,
        diff --git a/cu29_rendercfg/config/struct.ComponentConfig.html b/cu29_rendercfg/config/struct.ComponentConfig.html
        index 4ab52789e..595ce804e 100644
        --- a/cu29_rendercfg/config/struct.ComponentConfig.html
        +++ b/cu29_rendercfg/config/struct.ComponentConfig.html
        @@ -1,4 +1,4 @@
        -ComponentConfig in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct ComponentConfig

        source
        pub struct ComponentConfig(pub HashMap<String, Value>);
        Expand description

        This is the configuration of a component (like a task config or a monitoring config):w +ComponentConfig in cu29_rendercfg::config - Rust

        cu29_rendercfg::config

        Struct ComponentConfig

        source
        pub struct ComponentConfig(pub HashMap<String, Value>);
        Expand description

        This is the configuration of a component (like a task config or a monitoring config):w It is a map of key-value pairs. It is given to the new method of the task implementation.

        Tuple Fields§

        §0: HashMap<String, Value>

        Implementations§

        source§

        impl ComponentConfig

        source

        pub fn new() -> Self

        source

        pub fn get<T: From<Value>>(&self, key: &str) -> Option<T>

        source

        pub fn set<T: Into<Value>>(&mut self, key: &str, value: T)

        Trait Implementations§

        source§

        impl Clone for ComponentConfig

        source§

        fn clone(&self) -> ComponentConfig

        Returns a copy of the value. Read more
        1.0.0 · source§

        fn clone_from(&mut self, source: &Self)

        Performs copy-assignment from source. Read more
        source§

        impl Debug for ComponentConfig

        source§

        fn fmt(&self, f: &mut Formatter<'_>) -> Result

        Formats the value using the given formatter. Read more
        source§

        impl Default for ComponentConfig

        source§

        fn default() -> ComponentConfig

        Returns the “default value” for a type. Read more
        source§

        impl<'de> Deserialize<'de> for ComponentConfig

        source§

        fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
        where @@ -13,8 +13,8 @@

        That is, this conversion is whatever the implementation of From<T> for U chooses to do.

        source§

        impl<T> ToOwned for T
        where - T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where - T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where + T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where + T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where U: Into<T>,

        source§

        type Error = Infallible

        The type returned in the event of a conversion error.
        source§

        fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

        Performs the conversion.
        source§

        impl<T, U> TryInto<U> for T
        where U: TryFrom<T>,

        source§

        type Error = <U as TryFrom<T>>::Error

        The type returned in the event of a conversion error.
        source§

        fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

        Performs the conversion.
        source§

        impl<T> DeserializeOwned for T
        where T: for<'de> Deserialize<'de>,

        \ No newline at end of file diff --git a/cu29_rendercfg/config/struct.CuConfig.html b/cu29_rendercfg/config/struct.CuConfig.html index 0aa144b54..384a168df 100644 --- a/cu29_rendercfg/config/struct.CuConfig.html +++ b/cu29_rendercfg/config/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct CuConfig

        source
        pub struct CuConfig {
        +CuConfig in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct CuConfig

        source
        pub struct CuConfig {
             pub graph: StableDiGraph<Node, Cnx, u32>,
             monitor: Option<MonitorConfig>,
         }
        Expand description

        CuConfig is the programmatic representation of the configuration graph. diff --git a/cu29_rendercfg/config/struct.CuConfigRepresentation.html b/cu29_rendercfg/config/struct.CuConfigRepresentation.html index 17a4fe075..8d9048f36 100644 --- a/cu29_rendercfg/config/struct.CuConfigRepresentation.html +++ b/cu29_rendercfg/config/struct.CuConfigRepresentation.html @@ -1,4 +1,4 @@ -CuConfigRepresentation in cu29_rendercfg::config - Rust

        cu29_rendercfg::config

        Struct CuConfigRepresentation

        source
        struct CuConfigRepresentation {
        +CuConfigRepresentation in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct CuConfigRepresentation

        source
        struct CuConfigRepresentation {
             tasks: Vec<Node>,
             cnx: Vec<Cnx>,
             monitor: Option<MonitorConfig>,
        diff --git a/cu29_rendercfg/config/struct.MonitorConfig.html b/cu29_rendercfg/config/struct.MonitorConfig.html
        index 3e5576d23..3804e50ae 100644
        --- a/cu29_rendercfg/config/struct.MonitorConfig.html
        +++ b/cu29_rendercfg/config/struct.MonitorConfig.html
        @@ -1,4 +1,4 @@
        -MonitorConfig in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct MonitorConfig

        source
        pub struct MonitorConfig {
        +MonitorConfig in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct MonitorConfig

        source
        pub struct MonitorConfig {
             type_: String,
             config: Option<ComponentConfig>,
         }

        Fields§

        §type_: String§config: Option<ComponentConfig>

        Implementations§

        Trait Implementations§

        source§

        impl Clone for MonitorConfig

        source§

        fn clone(&self) -> MonitorConfig

        Returns a copy of the value. Read more
        1.0.0 · source§

        fn clone_from(&mut self, source: &Self)

        Performs copy-assignment from source. Read more
        source§

        impl Debug for MonitorConfig

        source§

        fn fmt(&self, f: &mut Formatter<'_>) -> Result

        Formats the value using the given formatter. Read more
        source§

        impl Default for MonitorConfig

        source§

        fn default() -> MonitorConfig

        Returns the “default value” for a type. Read more
        source§

        impl<'de> Deserialize<'de> for MonitorConfig

        source§

        fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
        where diff --git a/cu29_rendercfg/config/struct.Node.html b/cu29_rendercfg/config/struct.Node.html index 7753c3cc2..6d478667e 100644 --- a/cu29_rendercfg/config/struct.Node.html +++ b/cu29_rendercfg/config/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Node

        source
        pub struct Node {
        +Node in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Node

        source
        pub struct Node {
             id: String,
             type_: Option<String>,
             config: Option<ComponentConfig>,
        diff --git a/cu29_rendercfg/config/struct.Value.html b/cu29_rendercfg/config/struct.Value.html
        index 15e3ef3e4..8abbbe83b 100644
        --- a/cu29_rendercfg/config/struct.Value.html
        +++ b/cu29_rendercfg/config/struct.Value.html
        @@ -1,4 +1,4 @@
        -Value in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Value

        source
        pub struct Value(Value);
        Expand description

        Wrapper around the ron::Value to allow for custom serialization.

        +Value in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Struct Value

        source
        pub struct Value(Value);
        Expand description

        Wrapper around the ron::Value to allow for custom serialization.

        Tuple Fields§

        §0: Value

        Trait Implementations§

        source§

        impl Clone for Value

        source§

        fn clone(&self) -> Value

        Returns a copy of the value. Read more
        1.0.0 · source§

        fn clone_from(&mut self, source: &Self)

        Performs copy-assignment from source. Read more
        source§

        impl Debug for Value

        source§

        fn fmt(&self, f: &mut Formatter<'_>) -> Result

        Formats the value using the given formatter. Read more
        source§

        impl<'de> Deserialize<'de> for Value

        source§

        fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
        where __D: Deserializer<'de>,

        Deserialize this value from the given Serde deserializer. Read more
        source§

        impl Display for Value

        source§

        fn fmt(&self, f: &mut Formatter<'_>) -> Result

        Formats the value using the given formatter. Read more
        source§

        impl From<String> for Value

        source§

        fn from(value: String) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for String

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for bool

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for f64

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for i32

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for u32

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<Value> for u8

        source§

        fn from(value: Value) -> Self

        Converts to this type from the input type.
        source§

        impl From<f64> for Value

        source§

        fn from(value: f64) -> Self

        Converts to this type from the input type.
        source§

        impl From<i32> for Value

        source§

        fn from(value: i32) -> Self

        Converts to this type from the input type.
        source§

        impl From<u16> for Value

        source§

        fn from(value: u16) -> Self

        Converts to this type from the input type.
        source§

        impl From<u32> for Value

        source§

        fn from(value: u32) -> Self

        Converts to this type from the input type.
        source§

        impl From<u8> for Value

        source§

        fn from(value: u8) -> Self

        Converts to this type from the input type.
        source§

        impl PartialEq for Value

        source§

        fn eq(&self, other: &Value) -> bool

        Tests for self and other values to be equal, and is used by ==.
        1.0.0 · source§

        fn ne(&self, other: &Rhs) -> bool

        Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
        source§

        impl Serialize for Value

        source§

        fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
        where @@ -13,8 +13,8 @@ From<T> for U chooses to do.

        §

        impl<I> IntoResettable<String> for I
        where I: Into<String>,

        §

        fn into_resettable(self) -> Resettable<String>

        Convert to the intended resettable type
        source§

        impl<T> ToOwned for T
        where - T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where - T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where + T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where + T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where U: Into<T>,

        source§

        type Error = Infallible

        The type returned in the event of a conversion error.
        source§

        fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

        Performs the conversion.
        source§

        impl<T, U> TryInto<U> for T
        where U: TryFrom<T>,

        source§

        type Error = <U as TryFrom<T>>::Error

        The type returned in the event of a conversion error.
        source§

        fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

        Performs the conversion.
        source§

        impl<T> DeserializeOwned for T
        where T: for<'de> Deserialize<'de>,

        \ No newline at end of file diff --git a/cu29_rendercfg/config/type.NodeId.html b/cu29_rendercfg/config/type.NodeId.html index 33f4d06de..318eb3c06 100644 --- a/cu29_rendercfg/config/type.NodeId.html +++ b/cu29_rendercfg/config/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29_rendercfg::config - Rust
        cu29_rendercfg::config

        Type Alias NodeId

        source
        pub type NodeId = u32;
        Expand description

        NodeId is the unique identifier of a node in the configuration graph for petgraph +NodeId in cu29_rendercfg::config - Rust

        cu29_rendercfg::config

        Type Alias NodeId

        source
        pub type NodeId = u32;
        Expand description

        NodeId is the unique identifier of a node in the configuration graph for petgraph and the code generation.

        \ No newline at end of file diff --git a/cu29_rendercfg/enum.UnifiedLogType.html b/cu29_rendercfg/enum.UnifiedLogType.html index 96af97086..b56786d64 100644 --- a/cu29_rendercfg/enum.UnifiedLogType.html +++ b/cu29_rendercfg/enum.UnifiedLogType.html @@ -1,4 +1,4 @@ -UnifiedLogType in cu29_rendercfg - Rust
        cu29_rendercfg

        Enum UnifiedLogType

        source
        pub enum UnifiedLogType {
        +UnifiedLogType in cu29_rendercfg - Rust
        cu29_rendercfg

        Enum UnifiedLogType

        source
        pub enum UnifiedLogType {
             Empty,
             StructuredLogLine,
             CopperList,
        diff --git a/cu29_rendercfg/fn.main.html b/cu29_rendercfg/fn.main.html
        index 02fe20aa9..14a7a6ea0 100644
        --- a/cu29_rendercfg/fn.main.html
        +++ b/cu29_rendercfg/fn.main.html
        @@ -1,2 +1,2 @@
        -main in cu29_rendercfg - Rust
        cu29_rendercfg

        Function main

        source
        pub(crate) fn main() -> Result<()>
        Expand description

        Render the configuration file to a dot file then convert it to an SVG and optionally opens it with inkscape.

        +main in cu29_rendercfg - Rust
        cu29_rendercfg

        Function main

        source
        pub(crate) fn main() -> Result<()>
        Expand description

        Render the configuration file to a dot file then convert it to an SVG and optionally opens it with inkscape.

        \ No newline at end of file diff --git a/cu29_rendercfg/index.html b/cu29_rendercfg/index.html index 2013c81cf..77416995a 100644 --- a/cu29_rendercfg/index.html +++ b/cu29_rendercfg/index.html @@ -1,4 +1,4 @@ -cu29_rendercfg - Rust

        Crate cu29_rendercfg

        source

        Modules§

        source§

        impl<T> ToOwned for T
        where - T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where - T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where + T: Clone,

        source§

        type Owned = T

        The resulting type after obtaining ownership.
        source§

        fn to_owned(&self) -> T

        Creates owned data from borrowed data, usually by cloning. Read more
        source§

        fn clone_into(&self, target: &mut T)

        Uses borrowed data to replace owned data, usually by cloning. Read more
        source§

        impl<T> ToString for T
        where + T: Display + ?Sized,

        source§

        default fn to_string(&self) -> String

        Converts the given value to a String. Read more
        source§

        impl<T, U> TryFrom<U> for T
        where U: Into<T>,

        source§

        type Error = Infallible

        The type returned in the event of a conversion error.
        source§

        fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

        Performs the conversion.
        source§

        impl<T, U> TryInto<U> for T
        where U: TryFrom<T>,

        source§

        type Error = <U as TryFrom<T>>::Error

        The type returned in the event of a conversion error.
        source§

        fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

        Performs the conversion.
        source§

        impl<T> DeserializeOwned for T
        where T: for<'de> Deserialize<'de>,

        \ No newline at end of file diff --git a/cu29_rendercfg/trait.CopperListTuple.html b/cu29_rendercfg/trait.CopperListTuple.html index 19c107ee3..b5dc562e9 100644 --- a/cu29_rendercfg/trait.CopperListTuple.html +++ b/cu29_rendercfg/trait.CopperListTuple.html @@ -1,7 +1,7 @@ -CopperListTuple in cu29_rendercfg - Rust
        cu29_rendercfg

        Trait CopperListTuple

        source
        pub trait CopperListTuple:
        +CopperListTuple in cu29_rendercfg - Rust
        cu29_rendercfg

        Trait CopperListTuple

        source
        pub trait CopperListTuple:
             Sized
             + Encode
             + Decode
             + Debug { }
        Expand description

        A CopperListTuple needs to be encodable, decodable and fixed size in memory.

        -

        Object Safety§

        This trait is not object safe.

        Implementors§

        source§

        impl<T> CopperListTuple for T
        where +

        Dyn Compatibility§

        This trait is not dyn compatible.

        In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

        Implementors§

        source§

        impl<T> CopperListTuple for T
        where T: Encode + Decode + Debug,

        \ No newline at end of file diff --git a/cu29_rendercfg/trait.WriteStream.html b/cu29_rendercfg/trait.WriteStream.html index 990c487e4..f93473d2e 100644 --- a/cu29_rendercfg/trait.WriteStream.html +++ b/cu29_rendercfg/trait.WriteStream.html @@ -1,4 +1,4 @@ -WriteStream in cu29_rendercfg - Rust
        cu29_rendercfg

        Trait WriteStream

        source
        pub trait WriteStream<E>:
        +WriteStream in cu29_rendercfg - Rust
        cu29_rendercfg

        Trait WriteStream

        source
        pub trait WriteStream<E>:
             Sync
             + Send
             + Debug
        where diff --git a/cu29_rendercfg/type.CuResult.html b/cu29_rendercfg/type.CuResult.html index a293a3738..dd36a75b7 100644 --- a/cu29_rendercfg/type.CuResult.html +++ b/cu29_rendercfg/type.CuResult.html @@ -1,4 +1,4 @@ -CuResult in cu29_rendercfg - Rust
        cu29_rendercfg

        Type Alias CuResult

        source
        pub type CuResult<T> = Result<T, CuError>;

        Aliased Type§

        enum CuResult<T> {
        +CuResult in cu29_rendercfg - Rust
        cu29_rendercfg

        Type Alias CuResult

        source
        pub type CuResult<T> = Result<T, CuError>;

        Aliased Type§

        enum CuResult<T> {
             Ok(T),
             Err(CuError),
         }

        Variants§

        §1.0.0

        Ok(T)

        Contains the success value

        diff --git a/cu29_soa_derive/all.html b/cu29_soa_derive/all.html index 320809194..abdf63744 100644 --- a/cu29_soa_derive/all.html +++ b/cu29_soa_derive/all.html @@ -1 +1 @@ -List of all items in this crate

        List of all items

        Attribute Macros

        \ No newline at end of file +List of all items in this crate

        List of all items

        Attribute Macros

        \ No newline at end of file diff --git a/cu29_soa_derive/attr.soa.html b/cu29_soa_derive/attr.soa.html index a9171e949..159674cf1 100644 --- a/cu29_soa_derive/attr.soa.html +++ b/cu29_soa_derive/attr.soa.html @@ -1,4 +1,4 @@ -soa in cu29_soa_derive - Rust
        cu29_soa_derive

        Attribute Macro soa

        source
        #[soa]
        Expand description

        Build a fixed sized SoA (Structure of Arrays) from a struct. +soa in cu29_soa_derive - Rust

        cu29_soa_derive

        Attribute Macro soa

        source
        #[soa]
        Expand description

        Build a fixed sized SoA (Structure of Arrays) from a struct. The outputted SoA will be suitable for in place storage in messages and should be easier for the compiler to vectorize.

        for example:

        diff --git a/cu29_soa_derive/index.html b/cu29_soa_derive/index.html index ed1674877..584d1d362 100644 --- a/cu29_soa_derive/index.html +++ b/cu29_soa_derive/index.html @@ -1,3 +1,3 @@ -cu29_soa_derive - Rust

        Crate cu29_soa_derive

        source

        Attribute Macros§

        Dyn Compatibility§

        This trait is not dyn compatible.

        In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

        Implementors§

        source§

        impl<T> CopperListTuple for T
        where T: Encode + Decode + Debug + Sized,

        \ No newline at end of file diff --git a/cu29_traits/trait.WriteStream.html b/cu29_traits/trait.WriteStream.html index 373c88889..178743cb3 100644 --- a/cu29_traits/trait.WriteStream.html +++ b/cu29_traits/trait.WriteStream.html @@ -1,4 +1,4 @@ -WriteStream in cu29_traits - Rust
        cu29_traits

        Trait WriteStream

        source
        pub trait WriteStream<E: Encode>:
        +WriteStream in cu29_traits - Rust
        cu29_traits

        Trait WriteStream

        source
        pub trait WriteStream<E: Encode>:
             Sync
             + Send
             + Debug {
        diff --git a/cu29_traits/type.CuResult.html b/cu29_traits/type.CuResult.html
        index 1fb668d2f..ce8b7c38f 100644
        --- a/cu29_traits/type.CuResult.html
        +++ b/cu29_traits/type.CuResult.html
        @@ -1,4 +1,4 @@
        -CuResult in cu29_traits - Rust
        cu29_traits

        Type Alias CuResult

        source
        pub type CuResult<T> = Result<T, CuError>;

        Aliased Type§

        enum CuResult<T> {
        +CuResult in cu29_traits - Rust
        cu29_traits

        Type Alias CuResult

        source
        pub type CuResult<T> = Result<T, CuError>;

        Aliased Type§

        enum CuResult<T> {
             Ok(T),
             Err(CuError),
         }

        Variants§

        §1.0.0

        Ok(T)

        Contains the success value

        diff --git a/cu29_unifiedlog/all.html b/cu29_unifiedlog/all.html index 8180c2985..32f67e5f7 100644 --- a/cu29_unifiedlog/all.html +++ b/cu29_unifiedlog/all.html @@ -1 +1 @@ -List of all items in this crate
        \ No newline at end of file +List of all items in this crate
        \ No newline at end of file diff --git a/cu29_unifiedlog/enum.AllocatedSection.html b/cu29_unifiedlog/enum.AllocatedSection.html index ef2e5e627..be5dfeba7 100644 --- a/cu29_unifiedlog/enum.AllocatedSection.html +++ b/cu29_unifiedlog/enum.AllocatedSection.html @@ -1,4 +1,4 @@ -AllocatedSection in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Enum AllocatedSection

        source
        pub enum AllocatedSection {
        +AllocatedSection in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Enum AllocatedSection

        source
        pub enum AllocatedSection {
             NoMoreSpace,
             Section(SectionHandle),
         }

        Variants§

        §

        NoMoreSpace

        §

        Section(SectionHandle)

        Auto Trait Implementations§

        Blanket Implementations§

        source§

        impl<T> Any for T
        where diff --git a/cu29_unifiedlog/enum.UnifiedLogger.html b/cu29_unifiedlog/enum.UnifiedLogger.html index be4e2a9f5..c1cfd52be 100644 --- a/cu29_unifiedlog/enum.UnifiedLogger.html +++ b/cu29_unifiedlog/enum.UnifiedLogger.html @@ -1,4 +1,4 @@ -UnifiedLogger in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Enum UnifiedLogger

        source
        pub enum UnifiedLogger {
        +UnifiedLogger in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Enum UnifiedLogger

        source
        pub enum UnifiedLogger {
             Read(UnifiedLoggerRead),
             Write(UnifiedLoggerWrite),
         }
        Expand description

        Holder of the read or write side of the datalogger.

        diff --git a/cu29_unifiedlog/fn.stream_write.html b/cu29_unifiedlog/fn.stream_write.html index ad09ab6aa..716a64010 100644 --- a/cu29_unifiedlog/fn.stream_write.html +++ b/cu29_unifiedlog/fn.stream_write.html @@ -1,4 +1,4 @@ -stream_write in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Function stream_write

        source
        pub fn stream_write<E: Encode>(
        +stream_write in cu29_unifiedlog - Rust
        cu29_unifiedlog

        Function stream_write

        source
        pub fn stream_write<E: Encode>(
             logger: Arc<Mutex<UnifiedLoggerWrite>>,
             entry_type: UnifiedLogType,
             minimum_allocation_amount: usize,
        diff --git a/cu29_unifiedlog/index.html b/cu29_unifiedlog/index.html
        index 5be4863ea..39f44fbad 100644
        --- a/cu29_unifiedlog/index.html
        +++ b/cu29_unifiedlog/index.html
        @@ -1,4 +1,4 @@
        -cu29_unifiedlog - Rust

        Crate cu29_unifiedlog

        source

        Structs§

        • A SectionHandle is a handle to a section in the datalogger. +cu29_unifiedlog - Rust

          Crate cu29_unifiedlog

          source

          Structs§

          • A SectionHandle is a handle to a section in the datalogger. It allows to track the lifecycle of a section of the datalogger.
          • Each concurrent sublogger is tracked through a section header. They form a linked list of sections. The entry type is used to identify the type of data in the section.
          • Use this builder to create a new DataLogger.
          • This a convience wrapper around the UnifiedLoggerRead to implement the Read trait.
          • A read side of the datalogger.
          • A write side of the datalogger.

          Enums§

          Functions§

          • Create a new stream to write to the unifiedlogger.
          \ No newline at end of file diff --git a/cu29_unifiedlog/struct.SectionHandle.html b/cu29_unifiedlog/struct.SectionHandle.html index 3ec3980b7..715ed54ed 100644 --- a/cu29_unifiedlog/struct.SectionHandle.html +++ b/cu29_unifiedlog/struct.SectionHandle.html @@ -1,4 +1,4 @@ -SectionHandle in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct SectionHandle

          source
          pub struct SectionHandle { /* private fields */ }
          Expand description

          A SectionHandle is a handle to a section in the datalogger. +SectionHandle in cu29_unifiedlog - Rust

          cu29_unifiedlog

          Struct SectionHandle

          source
          pub struct SectionHandle { /* private fields */ }
          Expand description

          A SectionHandle is a handle to a section in the datalogger. It allows to track the lifecycle of a section of the datalogger.

          Implementations§

          source§

          impl SectionHandle

          source

          pub fn create(section_header: SectionHeader, buffer: &'static mut [u8]) -> Self

          source

          pub fn get_user_buffer(&mut self) -> &mut [u8]

          source

          pub fn update_header(&mut self)

          Trait Implementations§

          source§

          impl Default for SectionHandle

          source§

          fn default() -> SectionHandle

          Returns the “default value” for a type. Read more

          Auto Trait Implementations§

          Blanket Implementations§

          source§

          impl<T> Any for T
          where T: 'static + ?Sized,

          source§

          fn type_id(&self) -> TypeId

          Gets the TypeId of self. Read more
          source§

          impl<T> Borrow<T> for T
          where diff --git a/cu29_unifiedlog/struct.SectionHeader.html b/cu29_unifiedlog/struct.SectionHeader.html index 4bdde5bc1..af3368f01 100644 --- a/cu29_unifiedlog/struct.SectionHeader.html +++ b/cu29_unifiedlog/struct.SectionHeader.html @@ -1,4 +1,4 @@ -SectionHeader in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct SectionHeader

          source
          pub struct SectionHeader { /* private fields */ }
          Expand description

          Each concurrent sublogger is tracked through a section header. +SectionHeader in cu29_unifiedlog - Rust

          cu29_unifiedlog

          Struct SectionHeader

          source
          pub struct SectionHeader { /* private fields */ }
          Expand description

          Each concurrent sublogger is tracked through a section header. They form a linked list of sections. The entry type is used to identify the type of data in the section.

          Trait Implementations§

          source§

          impl<'__de> BorrowDecode<'__de> for SectionHeader

          source§

          fn borrow_decode<__D: BorrowDecoder<'__de>>( diff --git a/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html b/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html index 6e392d963..4b42305ea 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html @@ -1,4 +1,4 @@ -UnifiedLoggerBuilder in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerBuilder

          source
          pub struct UnifiedLoggerBuilder { /* private fields */ }
          Expand description

          Use this builder to create a new DataLogger.

          +UnifiedLoggerBuilder in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerBuilder

          source
          pub struct UnifiedLoggerBuilder { /* private fields */ }
          Expand description

          Use this builder to create a new DataLogger.

          Implementations§

          source§

          impl UnifiedLoggerBuilder

          source

          pub fn new() -> Self

          source

          pub fn file_base_name(self, file_path: &Path) -> Self

          If “something/toto.copper” is given, it will find or create “something/toto_0.copper”, “something/toto_1.copper” etc.

          source

          pub fn preallocated_size(self, preallocated_size: usize) -> Self

          source

          pub fn write(self, write: bool) -> Self

          source

          pub fn create(self, create: bool) -> Self

          source

          pub fn build(self) -> Result<UnifiedLogger>

          Trait Implementations§

          source§

          impl Default for UnifiedLoggerBuilder

          source§

          fn default() -> Self

          Returns the “default value” for a type. Read more

          Auto Trait Implementations§

          Blanket Implementations§

          source§

          impl<T> Any for T
          where T: 'static + ?Sized,

          source§

          fn type_id(&self) -> TypeId

          Gets the TypeId of self. Read more
          source§

          impl<T> Borrow<T> for T
          where diff --git a/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html b/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html index c276ceab6..d8f3709db 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html @@ -1,4 +1,4 @@ -UnifiedLoggerIOReader in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerIOReader

          source
          pub struct UnifiedLoggerIOReader { /* private fields */ }
          Expand description

          This a convience wrapper around the UnifiedLoggerRead to implement the Read trait.

          +UnifiedLoggerIOReader in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerIOReader

          source
          pub struct UnifiedLoggerIOReader { /* private fields */ }
          Expand description

          This a convience wrapper around the UnifiedLoggerRead to implement the Read trait.

          Implementations§

          source§

          impl UnifiedLoggerIOReader

          source

          pub fn new(logger: UnifiedLoggerRead, log_type: UnifiedLogType) -> Self

          Trait Implementations§

          source§

          impl Read for UnifiedLoggerIOReader

          source§

          fn read(&mut self, buf: &mut [u8]) -> Result<usize>

          Pull some bytes from this source into the specified buffer, returning how many bytes were read. Read more
          1.36.0 · source§

          fn read_vectored(&mut self, bufs: &mut [IoSliceMut<'_>]) -> Result<usize, Error>

          Like read, except that it reads into a slice of buffers. Read more
          source§

          fn is_read_vectored(&self) -> bool

          🔬This is a nightly-only experimental API. (can_vector)
          Determines if this Reader has an efficient read_vectored implementation. Read more
          1.0.0 · source§

          fn read_to_end(&mut self, buf: &mut Vec<u8>) -> Result<usize, Error>

          Reads all bytes until EOF in this source, placing them into buf. Read more
          1.0.0 · source§

          fn read_to_string(&mut self, buf: &mut String) -> Result<usize, Error>

          Reads all bytes until EOF in this source, appending them to buf. Read more
          1.6.0 · source§

          fn read_exact(&mut self, buf: &mut [u8]) -> Result<(), Error>

          Reads the exact number of bytes required to fill buf. Read more
          source§

          fn read_buf(&mut self, buf: BorrowedCursor<'_>) -> Result<(), Error>

          🔬This is a nightly-only experimental API. (read_buf)
          Pull some bytes from this source into the specified buffer. Read more
          source§

          fn read_buf_exact(&mut self, cursor: BorrowedCursor<'_>) -> Result<(), Error>

          🔬This is a nightly-only experimental API. (read_buf)
          Reads the exact number of bytes required to fill cursor. Read more
          1.0.0 · source§

          fn by_ref(&mut self) -> &mut Self
          where diff --git a/cu29_unifiedlog/struct.UnifiedLoggerRead.html b/cu29_unifiedlog/struct.UnifiedLoggerRead.html index 8d9da72a0..9e28e8498 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerRead.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerRead.html @@ -1,4 +1,4 @@ -UnifiedLoggerRead in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerRead

          source
          pub struct UnifiedLoggerRead { /* private fields */ }
          Expand description

          A read side of the datalogger.

          +UnifiedLoggerRead in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerRead

          source
          pub struct UnifiedLoggerRead { /* private fields */ }
          Expand description

          A read side of the datalogger.

          Implementations§

          source§

          impl UnifiedLoggerRead

          source

          pub fn new(base_file_path: &PathBuf) -> Result<Self>

          source

          pub fn read_next_section_type( &mut self, datalogtype: UnifiedLogType, diff --git a/cu29_unifiedlog/struct.UnifiedLoggerWrite.html b/cu29_unifiedlog/struct.UnifiedLoggerWrite.html index e57c93039..ed9ef5314 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerWrite.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerWrite.html @@ -1,4 +1,4 @@ -UnifiedLoggerWrite in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerWrite

          source
          pub struct UnifiedLoggerWrite { /* private fields */ }
          Expand description

          A write side of the datalogger.

          +UnifiedLoggerWrite in cu29_unifiedlog - Rust
          cu29_unifiedlog

          Struct UnifiedLoggerWrite

          source
          pub struct UnifiedLoggerWrite { /* private fields */ }
          Expand description

          A write side of the datalogger.

          Implementations§

          source§

          impl UnifiedLoggerWrite

          source

          pub fn flush_section(&mut self, section: &mut SectionHandle)

          Trait Implementations§

          source§

          impl Drop for UnifiedLoggerWrite

          source§

          fn drop(&mut self)

          Executes the destructor for this type. Read more

          Auto Trait Implementations§

          Blanket Implementations§

          source§

          impl<T> Any for T
          where T: 'static + ?Sized,

          source§

          fn type_id(&self) -> TypeId

          Gets the TypeId of self. Read more
          source§

          impl<T> Borrow<T> for T
          where T: ?Sized,

          source§

          fn borrow(&self) -> &T

          Immutably borrows from an owned value. Read more
          source§

          impl<T> BorrowMut<T> for T
          where diff --git a/help.html b/help.html index 0bbbb29c0..07d4462e3 100644 --- a/help.html +++ b/help.html @@ -1 +1 @@ -Help

          Rustdoc help

          Back
          \ No newline at end of file +Help

          Rustdoc help

          Back
          \ No newline at end of file diff --git a/index.html b/index.html index 332de40ca..2aa998d47 100644 --- a/index.html +++ b/index.html @@ -1,2 +1,2 @@ -Index of crates
          - \ No newline at end of file +Index of crates
          + \ No newline at end of file diff --git a/settings.html b/settings.html index 1e20b76c1..a8928a1c7 100644 --- a/settings.html +++ b/settings.html @@ -1 +1 @@ -Settings

          Rustdoc settings

          Back
          \ No newline at end of file +Settings

          Rustdoc settings

          Back
          \ No newline at end of file diff --git a/src/cu29/config.rs.html b/src/cu29/config.rs.html index 1d0798288..c11b20208 100644 --- a/src/cu29/config.rs.html +++ b/src/cu29/config.rs.html @@ -1,4 +1,4 @@ -config.rs - source

          cu29/
          config.rs

          +config.rs - source

          cu29/
          config.rs

           1
           2
           3
          diff --git a/src/cu29/copperlist.rs.html b/src/cu29/copperlist.rs.html
          index 2f90888a0..4311537fa 100644
          --- a/src/cu29/copperlist.rs.html
          +++ b/src/cu29/copperlist.rs.html
          @@ -1,4 +1,4 @@
          -copperlist.rs - source

          cu29/
          copperlist.rs

          +copperlist.rs - source

          cu29/
          copperlist.rs

           1
           2
           3
          diff --git a/src/cu29/curuntime.rs.html b/src/cu29/curuntime.rs.html
          index 823d606ca..f0711c905 100644
          --- a/src/cu29/curuntime.rs.html
          +++ b/src/cu29/curuntime.rs.html
          @@ -1,4 +1,4 @@
          -curuntime.rs - source

          cu29/
          curuntime.rs

          +curuntime.rs - source

          cu29/
          curuntime.rs

           1
           2
           3
          diff --git a/src/cu29/cutask.rs.html b/src/cu29/cutask.rs.html
          index 4ae1ed642..80bc40883 100644
          --- a/src/cu29/cutask.rs.html
          +++ b/src/cu29/cutask.rs.html
          @@ -1,4 +1,4 @@
          -cutask.rs - source

          cu29/
          cutask.rs

          +cutask.rs - source

          cu29/
          cutask.rs

           1
           2
           3
          diff --git a/src/cu29/lib.rs.html b/src/cu29/lib.rs.html
          index 5e0fd2c88..016ef398c 100644
          --- a/src/cu29/lib.rs.html
          +++ b/src/cu29/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29/
          lib.rs

          +lib.rs - source

          cu29/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29/monitoring.rs.html b/src/cu29/monitoring.rs.html
          index c364569e4..324d04820 100644
          --- a/src/cu29/monitoring.rs.html
          +++ b/src/cu29/monitoring.rs.html
          @@ -1,4 +1,4 @@
          -monitoring.rs - source

          cu29/
          monitoring.rs

          +monitoring.rs - source

          cu29/
          monitoring.rs

           1
           2
           3
          diff --git a/src/cu29_clock/lib.rs.html b/src/cu29_clock/lib.rs.html
          index 6f2b156a4..92b233d00 100644
          --- a/src/cu29_clock/lib.rs.html
          +++ b/src/cu29_clock/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_clock/
          lib.rs

          +lib.rs - source

          cu29_clock/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_derive/format.rs.html b/src/cu29_derive/format.rs.html
          index 7a5bca45e..6c3a22963 100644
          --- a/src/cu29_derive/format.rs.html
          +++ b/src/cu29_derive/format.rs.html
          @@ -1,4 +1,4 @@
          -format.rs - source

          cu29_derive/
          format.rs

          +format.rs - source

          cu29_derive/
          format.rs

           1
           2
           3
          diff --git a/src/cu29_derive/lib.rs.html b/src/cu29_derive/lib.rs.html
          index 58474a826..33c3ad2ba 100644
          --- a/src/cu29_derive/lib.rs.html
          +++ b/src/cu29_derive/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_derive/
          lib.rs

          +lib.rs - source

          cu29_derive/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_derive/utils.rs.html b/src/cu29_derive/utils.rs.html
          index 2a5510023..33e2a3cc2 100644
          --- a/src/cu29_derive/utils.rs.html
          +++ b/src/cu29_derive/utils.rs.html
          @@ -1,4 +1,4 @@
          -utils.rs - source

          cu29_derive/
          utils.rs

          +utils.rs - source

          cu29_derive/
          utils.rs

           1
           2
           3
          diff --git a/src/cu29_export/lib.rs.html b/src/cu29_export/lib.rs.html
          index 3976409f4..1130fe667 100644
          --- a/src/cu29_export/lib.rs.html
          +++ b/src/cu29_export/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_export/
          lib.rs

          +lib.rs - source

          cu29_export/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_helpers/lib.rs.html b/src/cu29_helpers/lib.rs.html
          index 6341ccba8..6ccf746e5 100644
          --- a/src/cu29_helpers/lib.rs.html
          +++ b/src/cu29_helpers/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_helpers/
          lib.rs

          +lib.rs - source

          cu29_helpers/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_intern_strs/lib.rs.html b/src/cu29_intern_strs/lib.rs.html
          index 056e86870..f401b42aa 100644
          --- a/src/cu29_intern_strs/lib.rs.html
          +++ b/src/cu29_intern_strs/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_intern_strs/
          lib.rs

          +lib.rs - source

          cu29_intern_strs/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_log/lib.rs.html b/src/cu29_log/lib.rs.html
          index da86e4d79..42b52702e 100644
          --- a/src/cu29_log/lib.rs.html
          +++ b/src/cu29_log/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_log/
          lib.rs

          +lib.rs - source

          cu29_log/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_log_derive/index.rs.html b/src/cu29_log_derive/index.rs.html
          index 1d487ab97..fb56ffdf4 100644
          --- a/src/cu29_log_derive/index.rs.html
          +++ b/src/cu29_log_derive/index.rs.html
          @@ -1,4 +1,4 @@
          -index.rs - source

          cu29_log_derive/
          index.rs

          +index.rs - source

          cu29_log_derive/
          index.rs

           1
           2
           3
          diff --git a/src/cu29_log_derive/lib.rs.html b/src/cu29_log_derive/lib.rs.html
          index 14281af49..520483216 100644
          --- a/src/cu29_log_derive/lib.rs.html
          +++ b/src/cu29_log_derive/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_log_derive/
          lib.rs

          +lib.rs - source

          cu29_log_derive/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_log_runtime/lib.rs.html b/src/cu29_log_runtime/lib.rs.html
          index 4825f7dfa..8130a061c 100644
          --- a/src/cu29_log_runtime/lib.rs.html
          +++ b/src/cu29_log_runtime/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_log_runtime/
          lib.rs

          +lib.rs - source

          cu29_log_runtime/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_rendercfg/config.rs.html b/src/cu29_rendercfg/config.rs.html
          index 5690bb037..1141caf51 100644
          --- a/src/cu29_rendercfg/config.rs.html
          +++ b/src/cu29_rendercfg/config.rs.html
          @@ -1,4 +1,4 @@
          -config.rs - source

          cu29_rendercfg/
          config.rs

          +config.rs - source

          cu29_rendercfg/
          config.rs

           1
           2
           3
          diff --git a/src/cu29_rendercfg/rendercfg.rs.html b/src/cu29_rendercfg/rendercfg.rs.html
          index de1a1ad7f..071c70c44 100644
          --- a/src/cu29_rendercfg/rendercfg.rs.html
          +++ b/src/cu29_rendercfg/rendercfg.rs.html
          @@ -1,4 +1,4 @@
          -rendercfg.rs - source

          cu29_rendercfg/
          rendercfg.rs

          +rendercfg.rs - source

          cu29_rendercfg/
          rendercfg.rs

           1
           2
           3
          diff --git a/src/cu29_soa_derive/format.rs.html b/src/cu29_soa_derive/format.rs.html
          index 0444fb6cc..2d2e60029 100644
          --- a/src/cu29_soa_derive/format.rs.html
          +++ b/src/cu29_soa_derive/format.rs.html
          @@ -1,4 +1,4 @@
          -format.rs - source

          cu29_soa_derive/
          format.rs

          +format.rs - source

          cu29_soa_derive/
          format.rs

           1
           2
           3
          diff --git a/src/cu29_soa_derive/lib.rs.html b/src/cu29_soa_derive/lib.rs.html
          index deae9d03d..5f91670c7 100644
          --- a/src/cu29_soa_derive/lib.rs.html
          +++ b/src/cu29_soa_derive/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_soa_derive/
          lib.rs

          +lib.rs - source

          cu29_soa_derive/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_traits/lib.rs.html b/src/cu29_traits/lib.rs.html
          index bf45a6600..5526bff43 100644
          --- a/src/cu29_traits/lib.rs.html
          +++ b/src/cu29_traits/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_traits/
          lib.rs

          +lib.rs - source

          cu29_traits/
          lib.rs

           1
           2
           3
          diff --git a/src/cu29_unifiedlog/lib.rs.html b/src/cu29_unifiedlog/lib.rs.html
          index 1a4fd7e14..deec7b1ad 100644
          --- a/src/cu29_unifiedlog/lib.rs.html
          +++ b/src/cu29_unifiedlog/lib.rs.html
          @@ -1,4 +1,4 @@
          -lib.rs - source

          cu29_unifiedlog/
          lib.rs

          +lib.rs - source

          cu29_unifiedlog/
          lib.rs

           1
           2
           3
          diff --git a/static.files/COPYRIGHT-23e9bde6c69aea69.txt b/static.files/COPYRIGHT-eb44e4cf.txt
          similarity index 100%
          rename from static.files/COPYRIGHT-23e9bde6c69aea69.txt
          rename to static.files/COPYRIGHT-eb44e4cf.txt
          diff --git a/static.files/FiraSans-LICENSE-db4b642586e02d97.txt b/static.files/FiraSans-LICENSE-05ab6dbd.txt
          similarity index 100%
          rename from static.files/FiraSans-LICENSE-db4b642586e02d97.txt
          rename to static.files/FiraSans-LICENSE-05ab6dbd.txt
          diff --git a/static.files/FiraSans-Medium-8f9a781e4970d388.woff2 b/static.files/FiraSans-Medium-e1aa3f0a.woff2
          similarity index 100%
          rename from static.files/FiraSans-Medium-8f9a781e4970d388.woff2
          rename to static.files/FiraSans-Medium-e1aa3f0a.woff2
          diff --git a/static.files/FiraSans-Regular-018c141bf0843ffd.woff2 b/static.files/FiraSans-Regular-0fe48ade.woff2
          similarity index 100%
          rename from static.files/FiraSans-Regular-018c141bf0843ffd.woff2
          rename to static.files/FiraSans-Regular-0fe48ade.woff2
          diff --git a/static.files/LICENSE-APACHE-b91fa81cba47b86a.txt b/static.files/LICENSE-APACHE-a60eea81.txt
          similarity index 100%
          rename from static.files/LICENSE-APACHE-b91fa81cba47b86a.txt
          rename to static.files/LICENSE-APACHE-a60eea81.txt
          diff --git a/static.files/LICENSE-MIT-65090b722b3f6c56.txt b/static.files/LICENSE-MIT-23f18e03.txt
          similarity index 100%
          rename from static.files/LICENSE-MIT-65090b722b3f6c56.txt
          rename to static.files/LICENSE-MIT-23f18e03.txt
          diff --git a/static.files/NanumBarunGothic-0f09457c7a19b7c6.ttf.woff2 b/static.files/NanumBarunGothic-13b3dcba.ttf.woff2
          similarity index 100%
          rename from static.files/NanumBarunGothic-0f09457c7a19b7c6.ttf.woff2
          rename to static.files/NanumBarunGothic-13b3dcba.ttf.woff2
          diff --git a/static.files/NanumBarunGothic-LICENSE-18c5adf4b52b4041.txt b/static.files/NanumBarunGothic-LICENSE-a37d393b.txt
          similarity index 100%
          rename from static.files/NanumBarunGothic-LICENSE-18c5adf4b52b4041.txt
          rename to static.files/NanumBarunGothic-LICENSE-a37d393b.txt
          diff --git a/static.files/SourceCodePro-It-1cc31594bf4f1f79.ttf.woff2 b/static.files/SourceCodePro-It-fc8b9304.ttf.woff2
          similarity index 100%
          rename from static.files/SourceCodePro-It-1cc31594bf4f1f79.ttf.woff2
          rename to static.files/SourceCodePro-It-fc8b9304.ttf.woff2
          diff --git a/static.files/SourceCodePro-LICENSE-d180d465a756484a.txt b/static.files/SourceCodePro-LICENSE-67f54ca7.txt
          similarity index 100%
          rename from static.files/SourceCodePro-LICENSE-d180d465a756484a.txt
          rename to static.files/SourceCodePro-LICENSE-67f54ca7.txt
          diff --git a/static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2 b/static.files/SourceCodePro-Regular-8badfe75.ttf.woff2
          similarity index 100%
          rename from static.files/SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2
          rename to static.files/SourceCodePro-Regular-8badfe75.ttf.woff2
          diff --git a/static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2 b/static.files/SourceCodePro-Semibold-aa29a496.ttf.woff2
          similarity index 100%
          rename from static.files/SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2
          rename to static.files/SourceCodePro-Semibold-aa29a496.ttf.woff2
          diff --git a/static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2 b/static.files/SourceSerif4-Bold-6d4fd4c0.ttf.woff2
          similarity index 100%
          rename from static.files/SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2
          rename to static.files/SourceSerif4-Bold-6d4fd4c0.ttf.woff2
          diff --git a/static.files/SourceSerif4-It-acdfaf1a8af734b1.ttf.woff2 b/static.files/SourceSerif4-It-ca3b17ed.ttf.woff2
          similarity index 100%
          rename from static.files/SourceSerif4-It-acdfaf1a8af734b1.ttf.woff2
          rename to static.files/SourceSerif4-It-ca3b17ed.ttf.woff2
          diff --git a/static.files/SourceSerif4-LICENSE-3bb119e13b1258b7.md b/static.files/SourceSerif4-LICENSE-a2cfd9d5.md
          similarity index 100%
          rename from static.files/SourceSerif4-LICENSE-3bb119e13b1258b7.md
          rename to static.files/SourceSerif4-LICENSE-a2cfd9d5.md
          diff --git a/static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2 b/static.files/SourceSerif4-Regular-6b053e98.ttf.woff2
          similarity index 100%
          rename from static.files/SourceSerif4-Regular-46f98efaafac5295.ttf.woff2
          rename to static.files/SourceSerif4-Regular-6b053e98.ttf.woff2
          diff --git a/static.files/favicon-2c020d218678b618.svg b/static.files/favicon-044be391.svg
          similarity index 100%
          rename from static.files/favicon-2c020d218678b618.svg
          rename to static.files/favicon-044be391.svg
          diff --git a/static.files/favicon-32x32-422f7d1d52889060.png b/static.files/favicon-32x32-6580c154.png
          similarity index 100%
          rename from static.files/favicon-32x32-422f7d1d52889060.png
          rename to static.files/favicon-32x32-6580c154.png
          diff --git a/static.files/main-f070b9041d14864c.js b/static.files/main-5f194d8c.js
          similarity index 100%
          rename from static.files/main-f070b9041d14864c.js
          rename to static.files/main-5f194d8c.js
          diff --git a/static.files/normalize-76eba96aa4d2e634.css b/static.files/normalize-9960930a.css
          similarity index 100%
          rename from static.files/normalize-76eba96aa4d2e634.css
          rename to static.files/normalize-9960930a.css
          diff --git a/static.files/noscript-0111fcff984fae8f.css b/static.files/noscript-893ab5e7.css
          similarity index 100%
          rename from static.files/noscript-0111fcff984fae8f.css
          rename to static.files/noscript-893ab5e7.css
          diff --git a/static.files/rust-logo-151179464ae7ed46.svg b/static.files/rust-logo-9a9549ea.svg
          similarity index 100%
          rename from static.files/rust-logo-151179464ae7ed46.svg
          rename to static.files/rust-logo-9a9549ea.svg
          diff --git a/static.files/rustdoc-b0742ba02757f159.css b/static.files/rustdoc-a5dc3bae.css
          similarity index 72%
          rename from static.files/rustdoc-b0742ba02757f159.css
          rename to static.files/rustdoc-a5dc3bae.css
          index 9fef311de..218d08688 100644
          --- a/static.files/rustdoc-b0742ba02757f159.css
          +++ b/static.files/rustdoc-a5dc3bae.css
          @@ -8,7 +8,7 @@ xmlns="http://www.w3.org/2000/svg" aria-label="Copy to clipboard">\
           ');--copy-path-height:34px;--copy-path-width:33px;--checkmark-image:url('data:image/svg+xml,\
           \
          -');--button-left-margin:4px;--button-border-radius:2px;--toolbar-button-border-radius:6px;--code-block-border-radius:6px;}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular-018c141bf0843ffd.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium-8f9a781e4970d388.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:normal;font-weight:400;src:local('Source Serif 4'),url("SourceSerif4-Regular-46f98efaafac5295.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:italic;font-weight:400;src:local('Source Serif 4 Italic'),url("SourceSerif4-It-acdfaf1a8af734b1.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:normal;font-weight:700;src:local('Source Serif 4 Bold'),url("SourceSerif4-Bold-a2c9cd1067f8b328.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular-562dcc5011b6de7d.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:italic;font-weight:400;src:url("SourceCodePro-It-1cc31594bf4f1f79.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold-d899c5a5c4aeb14a.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'NanumBarunGothic';src:url("NanumBarunGothic-0f09457c7a19b7c6.ttf.woff2") format("woff2");font-display:swap;unicode-range:U+AC00-D7AF,U+1100-11FF,U+3130-318F,U+A960-A97F,U+D7B0-D7FF;}*{box-sizing:border-box;}body{font:1rem/1.5 "Source Serif 4",NanumBarunGothic,serif;margin:0;position:relative;overflow-wrap:break-word;overflow-wrap:anywhere;font-feature-settings:"kern","liga";background-color:var(--main-background-color);color:var(--main-color);}h1{font-size:1.5rem;}h2{font-size:1.375rem;}h3{font-size:1.25rem;}h1,h2,h3,h4,h5,h6{font-weight:500;}h1,h2,h3,h4{margin:25px 0 15px 0;padding-bottom:6px;}.docblock h3,.docblock h4,h5,h6{margin:15px 0 5px 0;}.docblock>h2:first-child,.docblock>h3:first-child,.docblock>h4:first-child,.docblock>h5:first-child,.docblock>h6:first-child{margin-top:0;}.main-heading h1{margin:0;padding:0;grid-area:main-heading-h1;overflow-wrap:break-word;overflow-wrap:anywhere;}.main-heading{position:relative;display:grid;grid-template-areas:"main-heading-breadcrumbs main-heading-breadcrumbs" "main-heading-h1 main-heading-toolbar" "main-heading-sub-heading main-heading-toolbar";grid-template-columns:minmax(105px,1fr) minmax(0,max-content);grid-template-rows:minmax(25px,min-content) min-content min-content;padding-bottom:6px;margin-bottom:11px;}.rustdoc-breadcrumbs{grid-area:main-heading-breadcrumbs;line-height:1.25;display:flex;flex-wrap:wrap;align-items:end;padding-top:5px;}.rustdoc-breadcrumbs a{padding:4px 0;margin:-4px 0;z-index:1;}.content h2,.top-doc .docblock>h3,.top-doc .docblock>h4{border-bottom:1px solid var(--headings-border-bottom-color);}h1,h2{line-height:1.25;padding-top:3px;padding-bottom:9px;}h3.code-header{font-size:1.125rem;}h4.code-header{font-size:1rem;}.code-header{font-weight:600;margin:0;padding:0;white-space:pre-wrap;}.structfield{margin:0.6em 0;}#crate-search,h1,h2,h3,h4,h5,h6,.sidebar,.mobile-topbar,.search-input,.search-results .result-name,.item-name>a,.out-of-band,.sub-heading,span.since,a.src,rustdoc-toolbar,summary.hideme,.scraped-example-list,.rustdoc-breadcrumbs,ul.all-items{font-family:"Fira Sans",Arial,NanumBarunGothic,sans-serif;}#toggle-all-docs,a.anchor,.section-header a,#src-sidebar a,.rust a,.sidebar h2 a,.sidebar h3 a,.mobile-topbar h2 a,h1 a,.search-results a,.stab,.result-name i{color:var(--main-color);}span.enum,a.enum,span.struct,a.struct,span.union,a.union,span.primitive,a.primitive,span.type,a.type,span.foreigntype,a.foreigntype{color:var(--type-link-color);}span.trait,a.trait,span.traitalias,a.traitalias{color:var(--trait-link-color);}span.associatedtype,a.associatedtype,span.constant,a.constant,span.static,a.static{color:var(--assoc-item-link-color);}span.fn,a.fn,span.method,a.method,span.tymethod,a.tymethod{color:var(--function-link-color);}span.attr,a.attr,span.derive,a.derive,span.macro,a.macro{color:var(--macro-link-color);}span.mod,a.mod{color:var(--mod-link-color);}span.keyword,a.keyword{color:var(--keyword-link-color);}a{color:var(--link-color);text-decoration:none;}ol,ul{padding-left:24px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.625em;}p,.docblock>.warning{margin:0 0 .75em 0;}p:last-child,.docblock>.warning:last-child{margin:0;}button{padding:1px 6px;cursor:pointer;}button#toggle-all-docs{padding:0;background:none;border:none;-webkit-appearance:none;opacity:1;}.rustdoc{display:flex;flex-direction:row;flex-wrap:nowrap;}main{position:relative;flex-grow:1;padding:10px 15px 40px 45px;min-width:0;}.src main{padding:15px;}.width-limiter{max-width:960px;margin-right:auto;}details:not(.toggle) summary{margin-bottom:.6em;}code,pre,.code-header{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.125em;}.docblock pre code,.docblock-short pre code{padding:0;}pre{padding:14px;line-height:1.5;}pre.item-decl{overflow-x:auto;}.item-decl .type-contents-toggle{contain:initial;}.src .content pre{padding:20px;}.rustdoc.src .example-wrap .src-line-numbers{padding:20px 0 20px 4px;}img{max-width:100%;}.logo-container{line-height:0;display:block;}.rust-logo{filter:var(--rust-logo-filter);}.sidebar{font-size:0.875rem;flex:0 0 var(--desktop-sidebar-width);width:var(--desktop-sidebar-width);overflow-y:scroll;overscroll-behavior:contain;position:sticky;height:100vh;top:0;left:0;z-index:var(--desktop-sidebar-z-index);}.rustdoc.src .sidebar{flex-basis:50px;width:50px;border-right:1px solid;overflow-x:hidden;overflow-y:hidden;}.hide-sidebar .sidebar,.hide-sidebar .sidebar-resizer{display:none;}.sidebar-resizer{touch-action:none;width:9px;cursor:col-resize;z-index:calc(var(--desktop-sidebar-z-index) + 1);position:fixed;height:100%;left:calc(var(--desktop-sidebar-width) + 1px);}.rustdoc.src .sidebar-resizer{left:49px;}.src-sidebar-expanded .src .sidebar-resizer{left:var(--src-sidebar-width);}.sidebar-resizing{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.sidebar-resizing*{cursor:col-resize !important;}.sidebar-resizing .sidebar{position:fixed;}.sidebar-resizing>body{padding-left:var(--resizing-sidebar-width);}.sidebar-resizer:hover,.sidebar-resizer:active,.sidebar-resizer:focus,.sidebar-resizer.active{width:10px;margin:0;left:var(--desktop-sidebar-width);border-left:solid 1px var(--sidebar-resizer-hover);}.src-sidebar-expanded .rustdoc.src .sidebar-resizer:hover,.src-sidebar-expanded .rustdoc.src .sidebar-resizer:active,.src-sidebar-expanded .rustdoc.src .sidebar-resizer:focus,.src-sidebar-expanded .rustdoc.src .sidebar-resizer.active{left:calc(var(--src-sidebar-width) - 1px);}@media (pointer:coarse){.sidebar-resizer{display:none !important;}}.sidebar-resizer.active{padding:0 140px;width:2px;margin-left:-140px;border-left:none;}.sidebar-resizer.active:before{border-left:solid 2px var(--sidebar-resizer-active);display:block;height:100%;content:"";}.sidebar,.mobile-topbar,.sidebar-menu-toggle,#src-sidebar{background-color:var(--sidebar-background-color);}.src .sidebar>*{visibility:hidden;}.src-sidebar-expanded .src .sidebar{overflow-y:auto;flex-basis:var(--src-sidebar-width);width:var(--src-sidebar-width);}.src-sidebar-expanded .src .sidebar>*{visibility:visible;}#all-types{margin-top:1em;}*{scrollbar-width:initial;scrollbar-color:var(--scrollbar-color);}.sidebar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color);}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;background-color:var(--scrollbar-track-background-color);}.sidebar::-webkit-scrollbar-track{background-color:var(--scrollbar-track-background-color);}::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-background-color);}.hidden{display:none !important;}.logo-container>img{height:48px;width:48px;}ul.block,.block li,.block ul{padding:0;margin:0;list-style:none;}.block ul a{padding-left:1rem;}.sidebar-elems a,.sidebar>h2 a{display:block;padding:0.25rem;margin-right:0.25rem;border-left:solid var(--sidebar-elems-left-padding) transparent;margin-left:calc(-0.25rem - var(--sidebar-elems-left-padding));background-clip:border-box;}.hide-toc #rustdoc-toc,.hide-toc .in-crate{display:none;}.hide-modnav #rustdoc-modnav{display:none;}.sidebar h2{text-wrap:balance;overflow-wrap:anywhere;padding:0;margin:0.7rem 0;}.sidebar h3{text-wrap:balance;overflow-wrap:anywhere;font-size:1.125rem;padding:0;margin:0;}.sidebar-elems,.sidebar>.version,.sidebar>h2{padding-left:var(--sidebar-elems-left-padding);}.sidebar a{color:var(--sidebar-link-color);}.sidebar .current,.sidebar .current a,.sidebar-crate a.logo-container:hover+h2 a,.sidebar a:hover:not(.logo-container){background-color:var(--sidebar-current-link-background-color);}.sidebar-elems .block{margin-bottom:2em;}.sidebar-elems .block li a{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}.sidebar-crate{display:flex;align-items:center;justify-content:center;margin:14px 32px 1rem;row-gap:10px;column-gap:32px;flex-wrap:wrap;}.sidebar-crate h2{flex-grow:1;margin:0 -8px;align-self:start;}.sidebar-crate .logo-container{margin:0 calc(-16px - var(--sidebar-elems-left-padding));padding:0 var(--sidebar-elems-left-padding);text-align:center;}.sidebar-crate .logo-container img{margin-top:-16px;border-top:solid 16px transparent;box-sizing:content-box;position:relative;background-clip:border-box;z-index:1;}.sidebar-crate h2 a{display:block;border-left:solid var(--sidebar-elems-left-padding) transparent;background-clip:border-box;margin:0 calc(-24px + 0.25rem) 0 calc(-0.2rem - var(--sidebar-elems-left-padding));padding:calc((16px - 0.57rem ) / 2 ) 0.25rem;padding-left:0.2rem;}.sidebar-crate h2 .version{display:block;font-weight:normal;font-size:1rem;overflow-wrap:break-word;}.sidebar-crate+.version{margin-top:-1rem;margin-bottom:1rem;}.mobile-topbar{display:none;}.rustdoc .example-wrap{display:flex;position:relative;margin-bottom:10px;}.rustdoc .example-wrap>pre,.rustdoc .scraped-example .src-line-numbers,.rustdoc .scraped-example .src-line-numbers>pre{border-radius:6px;}.rustdoc .example-wrap>.example-line-numbers,.rustdoc .scraped-example .src-line-numbers,.rustdoc .scraped-example .src-line-numbers>pre{border-top-right-radius:0;border-bottom-right-radius:0;}.rustdoc .example-wrap>.example-line-numbers+pre,.rustdoc .scraped-example .rust{border-top-left-radius:0;border-bottom-left-radius:0;}.rustdoc .scraped-example{position:relative;}.rustdoc .example-wrap:last-child{margin-bottom:0px;}.rustdoc .example-wrap pre{margin:0;flex-grow:1;}.scraped-example:not(.expanded) .example-wrap{max-height:calc(1.5em * 5 + 10px);}.more-scraped-examples .scraped-example:not(.expanded) .example-wrap{max-height:calc(1.5em * 10 + 10px);}.rustdoc:not(.src) .scraped-example:not(.expanded) .src-line-numbers,.rustdoc:not(.src) .scraped-example:not(.expanded) .src-line-numbers>pre,.rustdoc:not(.src) .scraped-example:not(.expanded) pre.rust{padding-bottom:0;overflow:auto hidden;}.rustdoc:not(.src) .scraped-example .src-line-numbers{padding-top:0;}.rustdoc:not(.src) .scraped-example.expanded .src-line-numbers{padding-bottom:0;}.rustdoc:not(.src) .example-wrap pre{overflow:auto;}.rustdoc .example-wrap pre.example-line-numbers,.rustdoc .example-wrap .src-line-numbers{min-width:fit-content;flex-grow:0;text-align:right;-webkit-user-select:none;user-select:none;padding:14px 8px;padding-right:2px;color:var(--src-line-numbers-span-color);}.rustdoc .scraped-example .example-wrap .src-line-numbers{padding:0;}.rustdoc .src-line-numbers pre{padding:14px 0;}.src-line-numbers a,.src-line-numbers span{color:var(--src-line-numbers-span-color);padding:0 8px;}.src-line-numbers :target{background-color:transparent;border-right:none;padding:0 8px;}.src-line-numbers .line-highlighted{background-color:var(--src-line-number-highlighted-background-color);}.search-loading{text-align:center;}.docblock-short{overflow-wrap:break-word;overflow-wrap:anywhere;}.docblock :not(pre)>code,.docblock-short code{white-space:pre-wrap;}.top-doc .docblock h2{font-size:1.375rem;}.top-doc .docblock h3{font-size:1.25rem;}.top-doc .docblock h4,.top-doc .docblock h5{font-size:1.125rem;}.top-doc .docblock h6{font-size:1rem;}.docblock h5{font-size:1rem;}.docblock h6{font-size:0.875rem;}.docblock{margin-left:24px;position:relative;}.docblock>:not(.more-examples-toggle):not(.example-wrap){max-width:100%;overflow-x:auto;}.sub-heading{font-size:1rem;flex-grow:0;grid-area:main-heading-sub-heading;line-height:1.25;padding-bottom:4px;}.main-heading rustdoc-toolbar,.main-heading .out-of-band{grid-area:main-heading-toolbar;}rustdoc-toolbar{display:flex;flex-direction:row;flex-wrap:nowrap;min-height:60px;}.docblock code,.docblock-short code,pre,.rustdoc.src .example-wrap,.example-wrap .src-line-numbers{background-color:var(--code-block-background-color);border-radius:var(--code-block-border-radius);}#main-content{position:relative;}.docblock table{margin:.5em 0;border-collapse:collapse;}.docblock table td,.docblock table th{padding:.5em;border:1px solid var(--border-color);}.docblock table tbody tr:nth-child(2n){background:var(--table-alt-row-background-color);}.docblock .stab,.docblock-short .stab{display:inline-block;}.docblock li{margin-bottom:.4em;}.docblock li p:not(:last-child){margin-bottom:.3em;}div.where{white-space:pre-wrap;font-size:0.875rem;}.item-info{display:block;margin-left:24px;}.item-info code{font-size:0.875rem;}#main-content>.item-info{margin-left:0;}nav.sub{flex-grow:1;flex-flow:row nowrap;margin:4px 0 0 0;display:flex;align-items:center;}.search-form{position:relative;display:flex;height:34px;flex-grow:1;}.src nav.sub{margin:0 0 -10px 0;}.section-header{display:block;position:relative;}.section-header:hover>.anchor,.impl:hover>.anchor,.trait-impl:hover>.anchor,.variant:hover>.anchor{display:initial;}.anchor{display:none;position:absolute;left:-0.5em;background:none !important;}.anchor.field{left:-5px;}.section-header>.anchor{left:-15px;padding-right:8px;}h2.section-header>.anchor{padding-right:6px;}a.doc-anchor{color:var(--main-color);display:none;position:absolute;left:-17px;padding-right:10px;padding-left:3px;}*:hover>.doc-anchor{display:block;}.top-doc>.docblock>*:first-child>.doc-anchor{display:none !important;}.main-heading a:hover,.example-wrap .rust a:hover,.all-items a:hover,.docblock a:not(.scrape-help):not(.tooltip):hover:not(.doc-anchor),.docblock-short a:not(.scrape-help):not(.tooltip):hover,.item-info a{text-decoration:underline;}.crate.block li.current a{font-weight:500;}table,.item-table{overflow-wrap:break-word;}.item-table{display:table;padding:0;margin:0;width:100%;}.item-table>li{display:table-row;}.item-table>li>div{display:table-cell;}.item-table>li>.item-name{padding-right:1.25rem;}.search-results-title{margin-top:0;white-space:nowrap;display:flex;align-items:baseline;}.search-results-title+.sub-heading{color:var(--main-color);display:flex;align-items:baseline;white-space:nowrap;}#crate-search-div{position:relative;min-width:0;}#crate-search{padding:0 23px 0 4px;max-width:100%;text-overflow:ellipsis;border:1px solid var(--border-color);border-radius:4px;outline:none;cursor:pointer;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;background-color:var(--main-background-color);color:inherit;line-height:1.5;font-weight:500;}#crate-search:hover,#crate-search:focus{border-color:var(--crate-search-hover-border);}#crate-search-div::after{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;content:"";background-repeat:no-repeat;background-size:20px;background-position:calc(100% - 2px) 56%;background-image:url('data:image/svg+xml,');--button-left-margin:4px;--button-border-radius:2px;--toolbar-button-border-radius:6px;--code-block-border-radius:6px;}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:400;src:local('Fira Sans'),url("FiraSans-Regular-0fe48ade.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Fira Sans';font-style:normal;font-weight:500;src:local('Fira Sans Medium'),url("FiraSans-Medium-e1aa3f0a.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:normal;font-weight:400;src:local('Source Serif 4'),url("SourceSerif4-Regular-6b053e98.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:italic;font-weight:400;src:local('Source Serif 4 Italic'),url("SourceSerif4-It-ca3b17ed.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Serif 4';font-style:normal;font-weight:700;src:local('Source Serif 4 Bold'),url("SourceSerif4-Bold-6d4fd4c0.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:400;src:url("SourceCodePro-Regular-8badfe75.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:italic;font-weight:400;src:url("SourceCodePro-It-fc8b9304.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Source Code Pro';font-style:normal;font-weight:600;src:url("SourceCodePro-Semibold-aa29a496.ttf.woff2") format("woff2");font-display:swap;}@font-face {font-family:'NanumBarunGothic';src:url("NanumBarunGothic-13b3dcba.ttf.woff2") format("woff2");font-display:swap;unicode-range:U+AC00-D7AF,U+1100-11FF,U+3130-318F,U+A960-A97F,U+D7B0-D7FF;}*{box-sizing:border-box;}body{font:1rem/1.5 "Source Serif 4",NanumBarunGothic,serif;margin:0;position:relative;overflow-wrap:break-word;overflow-wrap:anywhere;font-feature-settings:"kern","liga";background-color:var(--main-background-color);color:var(--main-color);}h1{font-size:1.5rem;}h2{font-size:1.375rem;}h3{font-size:1.25rem;}h1,h2,h3,h4,h5,h6{font-weight:500;}h1,h2,h3,h4{margin:25px 0 15px 0;padding-bottom:6px;}.docblock h3,.docblock h4,h5,h6{margin:15px 0 5px 0;}.docblock>h2:first-child,.docblock>h3:first-child,.docblock>h4:first-child,.docblock>h5:first-child,.docblock>h6:first-child{margin-top:0;}.main-heading h1{margin:0;padding:0;grid-area:main-heading-h1;overflow-wrap:break-word;overflow-wrap:anywhere;}.main-heading{position:relative;display:grid;grid-template-areas:"main-heading-breadcrumbs main-heading-breadcrumbs" "main-heading-h1 main-heading-toolbar" "main-heading-sub-heading main-heading-toolbar";grid-template-columns:minmax(105px,1fr) minmax(0,max-content);grid-template-rows:minmax(25px,min-content) min-content min-content;padding-bottom:6px;margin-bottom:11px;}.rustdoc-breadcrumbs{grid-area:main-heading-breadcrumbs;line-height:1.25;display:flex;flex-wrap:wrap;align-items:end;padding-top:5px;}.rustdoc-breadcrumbs a{padding:4px 0;margin:-4px 0;z-index:1;}.content h2,.top-doc .docblock>h3,.top-doc .docblock>h4{border-bottom:1px solid var(--headings-border-bottom-color);}h1,h2{line-height:1.25;padding-top:3px;padding-bottom:9px;}h3.code-header{font-size:1.125rem;}h4.code-header{font-size:1rem;}.code-header{font-weight:600;margin:0;padding:0;white-space:pre-wrap;}.structfield{margin:0.6em 0;}#crate-search,h1,h2,h3,h4,h5,h6,.sidebar,.mobile-topbar,.search-input,.search-results .result-name,.item-name>a,.out-of-band,.sub-heading,span.since,a.src,rustdoc-toolbar,summary.hideme,.scraped-example-list,.rustdoc-breadcrumbs,ul.all-items{font-family:"Fira Sans",Arial,NanumBarunGothic,sans-serif;}#toggle-all-docs,a.anchor,.section-header a,#src-sidebar a,.rust a,.sidebar h2 a,.sidebar h3 a,.mobile-topbar h2 a,h1 a,.search-results a,.stab,.result-name i{color:var(--main-color);}span.enum,a.enum,span.struct,a.struct,span.union,a.union,span.primitive,a.primitive,span.type,a.type,span.foreigntype,a.foreigntype{color:var(--type-link-color);}span.trait,a.trait,span.traitalias,a.traitalias{color:var(--trait-link-color);}span.associatedtype,a.associatedtype,span.constant,a.constant,span.static,a.static{color:var(--assoc-item-link-color);}span.fn,a.fn,span.method,a.method,span.tymethod,a.tymethod{color:var(--function-link-color);}span.attr,a.attr,span.derive,a.derive,span.macro,a.macro{color:var(--macro-link-color);}span.mod,a.mod{color:var(--mod-link-color);}span.keyword,a.keyword{color:var(--keyword-link-color);}a{color:var(--link-color);text-decoration:none;}ol,ul{padding-left:24px;}ul ul,ol ul,ul ol,ol ol{margin-bottom:.625em;}p,.docblock>.warning{margin:0 0 .75em 0;}p:last-child,.docblock>.warning:last-child{margin:0;}button{padding:1px 6px;cursor:pointer;}button#toggle-all-docs{padding:0;background:none;border:none;-webkit-appearance:none;opacity:1;}.rustdoc{display:flex;flex-direction:row;flex-wrap:nowrap;}main{position:relative;flex-grow:1;padding:10px 15px 40px 45px;min-width:0;}.src main{padding:15px;}.width-limiter{max-width:960px;margin-right:auto;}details:not(.toggle) summary{margin-bottom:.6em;}code,pre,.code-header{font-family:"Source Code Pro",monospace;}.docblock code,.docblock-short code{border-radius:3px;padding:0 0.125em;}.docblock pre code,.docblock-short pre code{padding:0;}pre{padding:14px;line-height:1.5;}pre.item-decl{overflow-x:auto;}.item-decl .type-contents-toggle{contain:initial;}.src .content pre{padding:20px;}.rustdoc.src .example-wrap .src-line-numbers{padding:20px 0 20px 4px;}img{max-width:100%;}.logo-container{line-height:0;display:block;}.rust-logo{filter:var(--rust-logo-filter);}.sidebar{font-size:0.875rem;flex:0 0 var(--desktop-sidebar-width);width:var(--desktop-sidebar-width);overflow-y:scroll;overscroll-behavior:contain;position:sticky;height:100vh;top:0;left:0;z-index:var(--desktop-sidebar-z-index);}.rustdoc.src .sidebar{flex-basis:50px;width:50px;border-right:1px solid;overflow-x:hidden;overflow-y:hidden;}.hide-sidebar .sidebar,.hide-sidebar .sidebar-resizer{display:none;}.sidebar-resizer{touch-action:none;width:9px;cursor:col-resize;z-index:calc(var(--desktop-sidebar-z-index) + 1);position:fixed;height:100%;left:calc(var(--desktop-sidebar-width) + 1px);}.rustdoc.src .sidebar-resizer{left:49px;}.src-sidebar-expanded .src .sidebar-resizer{left:var(--src-sidebar-width);}.sidebar-resizing{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.sidebar-resizing*{cursor:col-resize !important;}.sidebar-resizing .sidebar{position:fixed;}.sidebar-resizing>body{padding-left:var(--resizing-sidebar-width);}.sidebar-resizer:hover,.sidebar-resizer:active,.sidebar-resizer:focus,.sidebar-resizer.active{width:10px;margin:0;left:var(--desktop-sidebar-width);border-left:solid 1px var(--sidebar-resizer-hover);}.src-sidebar-expanded .rustdoc.src .sidebar-resizer:hover,.src-sidebar-expanded .rustdoc.src .sidebar-resizer:active,.src-sidebar-expanded .rustdoc.src .sidebar-resizer:focus,.src-sidebar-expanded .rustdoc.src .sidebar-resizer.active{left:calc(var(--src-sidebar-width) - 1px);}@media (pointer:coarse){.sidebar-resizer{display:none !important;}}.sidebar-resizer.active{padding:0 140px;width:2px;margin-left:-140px;border-left:none;}.sidebar-resizer.active:before{border-left:solid 2px var(--sidebar-resizer-active);display:block;height:100%;content:"";}.sidebar,.mobile-topbar,.sidebar-menu-toggle,#src-sidebar{background-color:var(--sidebar-background-color);}.src .sidebar>*{visibility:hidden;}.src-sidebar-expanded .src .sidebar{overflow-y:auto;flex-basis:var(--src-sidebar-width);width:var(--src-sidebar-width);}.src-sidebar-expanded .src .sidebar>*{visibility:visible;}#all-types{margin-top:1em;}*{scrollbar-width:initial;scrollbar-color:var(--scrollbar-color);}.sidebar{scrollbar-width:thin;scrollbar-color:var(--scrollbar-color);}::-webkit-scrollbar{width:12px;}.sidebar::-webkit-scrollbar{width:8px;}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0;background-color:var(--scrollbar-track-background-color);}.sidebar::-webkit-scrollbar-track{background-color:var(--scrollbar-track-background-color);}::-webkit-scrollbar-thumb,.sidebar::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-background-color);}.hidden{display:none !important;}.logo-container>img{height:48px;width:48px;}ul.block,.block li,.block ul{padding:0;margin:0;list-style:none;}.block ul a{padding-left:1rem;}.sidebar-elems a,.sidebar>h2 a{display:block;padding:0.25rem;margin-right:0.25rem;border-left:solid var(--sidebar-elems-left-padding) transparent;margin-left:calc(-0.25rem - var(--sidebar-elems-left-padding));background-clip:border-box;}.hide-toc #rustdoc-toc,.hide-toc .in-crate{display:none;}.hide-modnav #rustdoc-modnav{display:none;}.sidebar h2{text-wrap:balance;overflow-wrap:anywhere;padding:0;margin:0.7rem 0;}.sidebar h3{text-wrap:balance;overflow-wrap:anywhere;font-size:1.125rem;padding:0;margin:0;}.sidebar-elems,.sidebar>.version,.sidebar>h2{padding-left:var(--sidebar-elems-left-padding);}.sidebar a{color:var(--sidebar-link-color);}.sidebar .current,.sidebar .current a,.sidebar-crate a.logo-container:hover+h2 a,.sidebar a:hover:not(.logo-container){background-color:var(--sidebar-current-link-background-color);}.sidebar-elems .block{margin-bottom:2em;}.sidebar-elems .block li a{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;}.sidebar-crate{display:flex;align-items:center;justify-content:center;margin:14px 32px 1rem;row-gap:10px;column-gap:32px;flex-wrap:wrap;}.sidebar-crate h2{flex-grow:1;margin:0 -8px;align-self:start;}.sidebar-crate .logo-container{margin:0 calc(-16px - var(--sidebar-elems-left-padding));padding:0 var(--sidebar-elems-left-padding);text-align:center;}.sidebar-crate .logo-container img{margin-top:-16px;border-top:solid 16px transparent;box-sizing:content-box;position:relative;background-clip:border-box;z-index:1;}.sidebar-crate h2 a{display:block;border-left:solid var(--sidebar-elems-left-padding) transparent;background-clip:border-box;margin:0 calc(-24px + 0.25rem) 0 calc(-0.2rem - var(--sidebar-elems-left-padding));padding:calc((16px - 0.57rem ) / 2 ) 0.25rem;padding-left:0.2rem;}.sidebar-crate h2 .version{display:block;font-weight:normal;font-size:1rem;overflow-wrap:break-word;}.sidebar-crate+.version{margin-top:-1rem;margin-bottom:1rem;}.mobile-topbar{display:none;}.rustdoc .example-wrap{display:flex;position:relative;margin-bottom:10px;}.rustdoc .example-wrap>pre,.rustdoc .scraped-example .src-line-numbers,.rustdoc .scraped-example .src-line-numbers>pre{border-radius:6px;}.rustdoc .example-wrap>.example-line-numbers,.rustdoc .scraped-example .src-line-numbers,.rustdoc .scraped-example .src-line-numbers>pre{border-top-right-radius:0;border-bottom-right-radius:0;}.rustdoc .example-wrap>.example-line-numbers+pre,.rustdoc .scraped-example .rust{border-top-left-radius:0;border-bottom-left-radius:0;}.rustdoc .scraped-example{position:relative;}.rustdoc .example-wrap:last-child{margin-bottom:0px;}.rustdoc .example-wrap pre{margin:0;flex-grow:1;}.scraped-example:not(.expanded) .example-wrap{max-height:calc(1.5em * 5 + 10px);}.more-scraped-examples .scraped-example:not(.expanded) .example-wrap{max-height:calc(1.5em * 10 + 10px);}.rustdoc:not(.src) .scraped-example:not(.expanded) .src-line-numbers,.rustdoc:not(.src) .scraped-example:not(.expanded) .src-line-numbers>pre,.rustdoc:not(.src) .scraped-example:not(.expanded) pre.rust{padding-bottom:0;overflow:auto hidden;}.rustdoc:not(.src) .scraped-example .src-line-numbers{padding-top:0;}.rustdoc:not(.src) .scraped-example.expanded .src-line-numbers{padding-bottom:0;}.rustdoc:not(.src) .example-wrap pre{overflow:auto;}.rustdoc .example-wrap pre.example-line-numbers,.rustdoc .example-wrap .src-line-numbers{min-width:fit-content;flex-grow:0;text-align:right;-webkit-user-select:none;user-select:none;padding:14px 8px;padding-right:2px;color:var(--src-line-numbers-span-color);}.rustdoc .scraped-example .example-wrap .src-line-numbers{padding:0;}.rustdoc .src-line-numbers pre{padding:14px 0;}.src-line-numbers a,.src-line-numbers span{color:var(--src-line-numbers-span-color);padding:0 8px;}.src-line-numbers :target{background-color:transparent;border-right:none;padding:0 8px;}.src-line-numbers .line-highlighted{background-color:var(--src-line-number-highlighted-background-color);}.search-loading{text-align:center;}.docblock-short{overflow-wrap:break-word;overflow-wrap:anywhere;}.docblock :not(pre)>code,.docblock-short code{white-space:pre-wrap;}.top-doc .docblock h2{font-size:1.375rem;}.top-doc .docblock h3{font-size:1.25rem;}.top-doc .docblock h4,.top-doc .docblock h5{font-size:1.125rem;}.top-doc .docblock h6{font-size:1rem;}.docblock h5{font-size:1rem;}.docblock h6{font-size:0.875rem;}.docblock{margin-left:24px;position:relative;}.docblock>:not(.more-examples-toggle):not(.example-wrap){max-width:100%;overflow-x:auto;}.sub-heading{font-size:1rem;flex-grow:0;grid-area:main-heading-sub-heading;line-height:1.25;padding-bottom:4px;}.main-heading rustdoc-toolbar,.main-heading .out-of-band{grid-area:main-heading-toolbar;}rustdoc-toolbar{display:flex;flex-direction:row;flex-wrap:nowrap;min-height:60px;}.docblock code,.docblock-short code,pre,.rustdoc.src .example-wrap,.example-wrap .src-line-numbers{background-color:var(--code-block-background-color);border-radius:var(--code-block-border-radius);}#main-content{position:relative;}.docblock table{margin:.5em 0;border-collapse:collapse;}.docblock table td,.docblock table th{padding:.5em;border:1px solid var(--border-color);}.docblock table tbody tr:nth-child(2n){background:var(--table-alt-row-background-color);}.docblock .stab,.docblock-short .stab{display:inline-block;}.docblock li{margin-bottom:.4em;}.docblock li p:not(:last-child){margin-bottom:.3em;}div.where{white-space:pre-wrap;font-size:0.875rem;}.item-info{display:block;margin-left:24px;}.item-info code{font-size:0.875rem;}#main-content>.item-info{margin-left:0;}nav.sub{flex-grow:1;flex-flow:row nowrap;margin:4px 0 0 0;display:flex;align-items:center;}.search-form{position:relative;display:flex;height:34px;flex-grow:1;}.src nav.sub{margin:0 0 -10px 0;}.section-header{display:block;position:relative;}.section-header:hover>.anchor,.impl:hover>.anchor,.trait-impl:hover>.anchor,.variant:hover>.anchor{display:initial;}.anchor{display:none;position:absolute;left:-0.5em;background:none !important;}.anchor.field{left:-5px;}.section-header>.anchor{left:-15px;padding-right:8px;}h2.section-header>.anchor{padding-right:6px;}a.doc-anchor{color:var(--main-color);display:none;position:absolute;left:-17px;padding-right:10px;padding-left:3px;}*:hover>.doc-anchor{display:block;}.top-doc>.docblock>*:first-child>.doc-anchor{display:none !important;}.main-heading a:hover,.example-wrap .rust a:hover,.all-items a:hover,.docblock a:not(.scrape-help):not(.tooltip):hover:not(.doc-anchor),.docblock-short a:not(.scrape-help):not(.tooltip):hover,.item-info a{text-decoration:underline;}.crate.block li.current a{font-weight:500;}table,.item-table{overflow-wrap:break-word;}.item-table{display:table;padding:0;margin:0;width:100%;}.item-table>li{display:table-row;}.item-table>li>div{display:table-cell;}.item-table>li>.item-name{padding-right:1.25rem;}.search-results-title{margin-top:0;white-space:nowrap;display:flex;align-items:baseline;}.search-results-title+.sub-heading{color:var(--main-color);display:flex;align-items:baseline;white-space:nowrap;}#crate-search-div{position:relative;min-width:0;}#crate-search{padding:0 23px 0 4px;max-width:100%;text-overflow:ellipsis;border:1px solid var(--border-color);border-radius:4px;outline:none;cursor:pointer;-moz-appearance:none;-webkit-appearance:none;text-indent:0.01px;background-color:var(--main-background-color);color:inherit;line-height:1.5;font-weight:500;}#crate-search:hover,#crate-search:focus{border-color:var(--crate-search-hover-border);}#crate-search-div::after{pointer-events:none;width:100%;height:100%;position:absolute;top:0;left:0;content:"";background-repeat:no-repeat;background-size:20px;background-position:calc(100% - 2px) 56%;background-image:url('data:image/svg+xml, \
           	');filter:var(--crate-search-div-filter);}#crate-search-div:hover::after,#crate-search-div:focus-within::after{filter:var(--crate-search-div-hover-filter);}#crate-search>option{font-size:1rem;}.search-input{-webkit-appearance:none;outline:none;border:1px solid var(--border-color);border-radius:2px;padding:8px;font-size:1rem;flex-grow:1;background-color:var(--button-background-color);color:var(--search-color);}.search-input:focus{border-color:var(--search-input-focused-border-color);}.search-results{display:none;}.search-results.active{display:block;}.search-results>a{display:flex;margin-left:2px;margin-right:2px;border-bottom:1px solid var(--search-result-border-color);gap:1em;}.search-results>a>div.desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:2;}.search-results a:hover,.search-results a:focus{background-color:var(--search-result-link-focus-background-color);}.search-results .result-name{display:flex;align-items:center;justify-content:start;flex:3;}.search-results .result-name .alias{color:var(--search-results-alias-color);}.search-results .result-name .grey{color:var(--search-results-grey-color);}.search-results .result-name .typename{color:var(--search-results-grey-color);font-size:0.875rem;width:var(--search-typename-width);}.search-results .result-name .path{word-break:break-all;max-width:calc(100% - var(--search-typename-width));display:inline-block;}.search-results .result-name .path>*{display:inline;}.popover{position:absolute;top:100%;right:0;z-index:calc(var(--desktop-sidebar-z-index) + 1);margin-top:7px;border-radius:3px;border:1px solid var(--border-color);background-color:var(--main-background-color);color:var(--main-color);--popover-arrow-offset:11px;}.popover::before{content:'';position:absolute;right:var(--popover-arrow-offset);border:solid var(--border-color);border-width:1px 1px 0 0;background-color:var(--main-background-color);padding:4px;transform:rotate(-45deg);top:-5px;}.setting-line{margin:1.2em 0.6em;}.setting-radio input,.setting-check input{margin-right:0.3em;height:1.2rem;width:1.2rem;border:2px solid var(--settings-input-border-color);outline:none;-webkit-appearance:none;cursor:pointer;}.setting-radio input{border-radius:50%;}.setting-radio span,.setting-check span{padding-bottom:1px;}.setting-radio{margin-top:0.1em;margin-bottom:0.1em;min-width:3.8em;padding:0.3em;display:inline-flex;align-items:center;cursor:pointer;}.setting-radio+.setting-radio{margin-left:0.5em;}.setting-check{margin-right:20px;display:flex;align-items:center;cursor:pointer;}.setting-radio input:checked{box-shadow:inset 0 0 0 3px var(--main-background-color);background-color:var(--settings-input-color);}.setting-check input:checked{background-color:var(--settings-input-color);border-width:1px;content:url('data:image/svg+xml,\
          diff --git a/static.files/scrape-examples-46fc985aa763a438.js b/static.files/scrape-examples-d508a8a9.js
          similarity index 100%
          rename from static.files/scrape-examples-46fc985aa763a438.js
          rename to static.files/scrape-examples-d508a8a9.js
          diff --git a/static.files/search-e056c65ede92db13.js b/static.files/search-c5a66128.js
          similarity index 100%
          rename from static.files/search-e056c65ede92db13.js
          rename to static.files/search-c5a66128.js
          diff --git a/static.files/settings-805db61a62df4bd2.js b/static.files/settings-0f613d39.js
          similarity index 100%
          rename from static.files/settings-805db61a62df4bd2.js
          rename to static.files/settings-0f613d39.js
          diff --git a/static.files/src-script-e66d777a5a92e9b2.js b/static.files/src-script-56102188.js
          similarity index 100%
          rename from static.files/src-script-e66d777a5a92e9b2.js
          rename to static.files/src-script-56102188.js
          diff --git a/static.files/storage-1d39b6787ed640ff.js b/static.files/storage-59e33391.js
          similarity index 100%
          rename from static.files/storage-1d39b6787ed640ff.js
          rename to static.files/storage-59e33391.js
          diff --git a/type.impl/core/result/enum.Result.js b/type.impl/core/result/enum.Result.js
          index 553c32cfd..0118bdd36 100644
          --- a/type.impl/core/result/enum.Result.js
          +++ b/type.impl/core/result/enum.Result.js
          @@ -1,5 +1,5 @@
           (function() {
          -    var type_impls = Object.fromEntries([["cu29",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29::CuResult"],["
          source§

          impl<C, E> ControlFlow for Result<C, E>
          where\n C: ControlFlow,

          ","ControlFlow","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.84.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.84.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29::CuResult"],["
          §

          impl<T, E> LifetimeFree for Result<T, E>
          where\n T: LifetimeFree,\n E: LifetimeFree,

          ","LifetimeFree","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29::CuResult"]]],["cu29_rendercfg",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29_rendercfg::CuResult"],["
          source§

          impl<C, E> ControlFlow for Result<C, E>
          where\n C: ControlFlow,

          ","ControlFlow","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29_rendercfg::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29_rendercfg::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29_rendercfg::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.84.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.84.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29_rendercfg::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29_rendercfg::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29_rendercfg::CuResult"]]],["cu29_traits",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29_traits::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29_traits::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29_traits::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29_traits::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_traits::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29_traits::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29_traits::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.84.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.84.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.84.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29_traits::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29_traits::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29_traits::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29_traits::CuResult"]]]]); + var type_impls = Object.fromEntries([["cu29",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29::CuResult"],["
          source§

          impl<C, E> ControlFlow for Result<C, E>
          where\n C: ControlFlow,

          ","ControlFlow","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.83.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.83.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29::CuResult"],["
          §

          impl<T, E> LifetimeFree for Result<T, E>
          where\n T: LifetimeFree,\n E: LifetimeFree,

          ","LifetimeFree","cu29::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29::CuResult"]]],["cu29_rendercfg",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29_rendercfg::CuResult"],["
          source§

          impl<C, E> ControlFlow for Result<C, E>
          where\n C: ControlFlow,

          ","ControlFlow","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29_rendercfg::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29_rendercfg::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29_rendercfg::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.83.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.83.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29_rendercfg::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29_rendercfg::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29_rendercfg::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29_rendercfg::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29_rendercfg::CuResult"]]],["cu29_traits",[["
          source§

          impl<'de, T, U> BorrowDecode<'de> for Result<T, U>
          where\n T: BorrowDecode<'de>,\n U: BorrowDecode<'de>,

          source§

          fn borrow_decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: BorrowDecoder<'de>,

          Attempt to decode this type with the given BorrowDecode.
          ","BorrowDecode<'de>","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Clone for Result<T, E>
          where\n T: Clone,\n E: Clone,

          source§

          fn clone(&self) -> Result<T, E>

          Returns a copy of the value. Read more
          source§

          fn clone_from(&mut self, source: &Result<T, E>)

          Performs copy-assignment from source. Read more
          ","Clone","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Debug for Result<T, E>
          where\n T: Debug,\n E: Debug,

          source§

          fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

          Formats the value using the given formatter. Read more
          ","Debug","cu29_traits::CuResult"],["
          source§

          impl<T, U> Decode for Result<T, U>
          where\n T: Decode,\n U: Decode,

          source§

          fn decode<D>(decoder: &mut D) -> Result<Result<T, U>, DecodeError>
          where\n D: Decoder,

          Attempt to decode this type with the given Decode.
          ","Decode","cu29_traits::CuResult"],["
          source§

          impl<'de, T, E> Deserialize<'de> for Result<T, E>
          where\n T: Deserialize<'de>,\n E: Deserialize<'de>,

          source§

          fn deserialize<D>(\n deserializer: D,\n) -> Result<Result<T, E>, <D as Deserializer<'de>>::Error>
          where\n D: Deserializer<'de>,

          Deserialize this value from the given Serde deserializer. Read more
          ","Deserialize<'de>","cu29_traits::CuResult"],["
          source§

          impl<T, U> Encode for Result<T, U>
          where\n T: Encode,\n U: Encode,

          source§

          fn encode<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
          where\n E: Encoder,

          Encode a given type.
          ","Encode","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<A, E, V> FromIterator<Result<A, E>> for Result<V, E>
          where\n V: FromIterator<A>,

          source§

          fn from_iter<I>(iter: I) -> Result<V, E>
          where\n I: IntoIterator<Item = Result<A, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err occur, a\ncontainer with the values of each Result is returned.

          \n

          Here is an example which increments every integer in a vector,\nchecking for overflow:

          \n\n
          let v = vec![1, 2];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_add(1).ok_or(\"Overflow!\")\n).collect();\nassert_eq!(res, Ok(vec![2, 3]));
          \n

          Here is another example that tries to subtract one from another list\nof integers, this time checking for underflow:

          \n\n
          let v = vec![1, 2, 0];\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32|\n    x.checked_sub(1).ok_or(\"Underflow!\")\n).collect();\nassert_eq!(res, Err(\"Underflow!\"));
          \n

          Here is a variation on the previous example, showing that no\nfurther elements are taken from iter after the first Err.

          \n\n
          let v = vec![3, 2, 1, 10];\nlet mut shared = 0;\nlet res: Result<Vec<u32>, &'static str> = v.iter().map(|x: &u32| {\n    shared += x;\n    x.checked_sub(2).ok_or(\"Underflow!\")\n}).collect();\nassert_eq!(res, Err(\"Underflow!\"));\nassert_eq!(shared, 6);
          \n

          Since the third element caused an underflow, no further elements were taken,\nso the final value of shared is 6 (= 3 + 2 + 1), not 16.

          \n
          ","FromIterator>","cu29_traits::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Result<Infallible, E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(residual: Result<Infallible, E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_traits::CuResult"],["
          source§

          impl<T, E, F> FromResidual<Yeet<E>> for Result<T, F>
          where\n F: From<E>,

          source§

          fn from_residual(_: Yeet<E>) -> Result<T, F>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from a compatible Residual type. Read more
          ","FromResidual>","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Hash for Result<T, E>
          where\n T: Hash,\n E: Hash,

          source§

          fn hash<__H>(&self, state: &mut __H)
          where\n __H: Hasher,

          Feeds this value into the given Hasher. Read more
          1.3.0 · source§

          fn hash_slice<H>(data: &[Self], state: &mut H)
          where\n H: Hasher,\n Self: Sized,

          Feeds a slice of this type into the given Hasher. Read more
          ","Hash","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> IntoIterator for Result<T, E>

          source§

          fn into_iter(self) -> IntoIter<T>

          Returns a consuming iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(5);\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, [5]);\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nlet v: Vec<u32> = x.into_iter().collect();\nassert_eq!(v, []);
          \n
          source§

          type Item = T

          The type of the elements being iterated over.
          source§

          type IntoIter = IntoIter<T>

          Which kind of iterator are we turning this into?
          ","IntoIterator","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Ord for Result<T, E>
          where\n T: Ord,\n E: Ord,

          source§

          fn cmp(&self, other: &Result<T, E>) -> Ordering

          This method returns an Ordering between self and other. Read more
          1.21.0 · source§

          fn max(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the maximum of two values. Read more
          1.21.0 · source§

          fn min(self, other: Self) -> Self
          where\n Self: Sized,

          Compares and returns the minimum of two values. Read more
          1.50.0 · source§

          fn clamp(self, min: Self, max: Self) -> Self
          where\n Self: Sized,

          Restrict a value to a certain interval. Read more
          ","Ord","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialEq for Result<T, E>
          where\n T: PartialEq,\n E: PartialEq,

          source§

          fn eq(&self, other: &Result<T, E>) -> bool

          Tests for self and other values to be equal, and is used by ==.
          1.0.0 · source§

          fn ne(&self, other: &Rhs) -> bool

          Tests for !=. The default implementation is almost always sufficient,\nand should not be overridden without very good reason.
          ","PartialEq","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> PartialOrd for Result<T, E>
          where\n T: PartialOrd,\n E: PartialOrd,

          source§

          fn partial_cmp(&self, other: &Result<T, E>) -> Option<Ordering>

          This method returns an ordering between self and other values if one exists. Read more
          1.0.0 · source§

          fn lt(&self, other: &Rhs) -> bool

          Tests less than (for self and other) and is used by the < operator. Read more
          1.0.0 · source§

          fn le(&self, other: &Rhs) -> bool

          Tests less than or equal to (for self and other) and is used by the\n<= operator. Read more
          1.0.0 · source§

          fn gt(&self, other: &Rhs) -> bool

          Tests greater than (for self and other) and is used by the >\noperator. Read more
          1.0.0 · source§

          fn ge(&self, other: &Rhs) -> bool

          Tests greater than or equal to (for self and other) and is used by\nthe >= operator. Read more
          ","PartialOrd","cu29_traits::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Product<Result<U, E>> for Result<T, E>
          where\n T: Product<U>,

          source§

          fn product<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the product of all elements is returned.

          \n
          §Examples
          \n

          This multiplies each number in a vector of strings,\nif a string could not be parsed the operation returns Err:

          \n\n
          let nums = vec![\"5\", \"10\", \"1\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert_eq!(total, Ok(100));\nlet nums = vec![\"5\", \"10\", \"one\", \"2\"];\nlet total: Result<usize, _> = nums.iter().map(|w| w.parse::<usize>()).product();\nassert!(total.is_err());
          \n
          ","Product>","cu29_traits::CuResult"],["
          source§

          impl<T, E> Residual<T> for Result<Infallible, E>

          source§

          type TryType = Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2_residual)
          The “return” type of this meta-function.
          ","Residual","cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<&T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let val = 12;\nlet x: Result<&i32, i32> = Ok(&val);\nassert_eq!(x, Ok(&12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<&mut T, E>

          1.59.0 (const: 1.83.0) · source

          pub const fn copied(self) -> Result<T, E>
          where\n T: Copy,

          Maps a Result<&mut T, E> to a Result<T, E> by copying the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet copied = x.copied();\nassert_eq!(copied, Ok(12));
          \n
          1.59.0 · source

          pub fn cloned(self) -> Result<T, E>
          where\n T: Clone,

          Maps a Result<&mut T, E> to a Result<T, E> by cloning the contents of the\nOk part.

          \n
          §Examples
          \n
          let mut val = 12;\nlet x: Result<&mut i32, i32> = Ok(&mut val);\nassert_eq!(x, Ok(&mut 12));\nlet cloned = x.cloned();\nassert_eq!(cloned, Ok(12));
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<Option<T>, E>

          1.33.0 (const: 1.83.0) · source

          pub const fn transpose(self) -> Option<Result<T, E>>

          Transposes a Result of an Option into an Option of a Result.

          \n

          Ok(None) will be mapped to None.\nOk(Some(_)) and Err(_) will be mapped to Some(Ok(_)) and Some(Err(_)).

          \n
          §Examples
          \n
          #[derive(Debug, Eq, PartialEq)]\nstruct SomeErr;\n\nlet x: Result<Option<i32>, SomeErr> = Ok(Some(5));\nlet y: Option<Result<i32, SomeErr>> = Some(Ok(5));\nassert_eq!(x.transpose(), y);
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<Result<T, E>, E>

          source

          pub const fn flatten(self) -> Result<T, E>

          🔬This is a nightly-only experimental API. (result_flattening)

          Converts from Result<Result<T, E>, E> to Result<T, E>

          \n
          §Examples
          \n
          #![feature(result_flattening)]\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Ok(\"hello\"));\nassert_eq!(Ok(\"hello\"), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Ok(Err(6));\nassert_eq!(Err(6), x.flatten());\n\nlet x: Result<Result<&'static str, u32>, u32> = Err(6);\nassert_eq!(Err(6), x.flatten());
          \n

          Flattening only removes one level of nesting at a time:

          \n\n
          #![feature(result_flattening)]\nlet x: Result<Result<Result<&'static str, u32>, u32>, u32> = Ok(Ok(Ok(\"hello\")));\nassert_eq!(Ok(Ok(\"hello\")), x.flatten());\nassert_eq!(Ok(\"hello\"), x.flatten().flatten());
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Result<T, E>

          1.0.0 (const: 1.48.0) · source

          pub const fn is_ok(&self) -> bool

          Returns true if the result is Ok.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_ok(), true);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_ok(), false);
          \n
          1.70.0 · source

          pub fn is_ok_and(self, f: impl FnOnce(T) -> bool) -> bool

          Returns true if the result is Ok and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.is_ok_and(|x| x > 1), true);\n\nlet x: Result<u32, &str> = Ok(0);\nassert_eq!(x.is_ok_and(|x| x > 1), false);\n\nlet x: Result<u32, &str> = Err(\"hey\");\nassert_eq!(x.is_ok_and(|x| x > 1), false);
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn is_err(&self) -> bool

          Returns true if the result is Err.

          \n
          §Examples
          \n
          let x: Result<i32, &str> = Ok(-3);\nassert_eq!(x.is_err(), false);\n\nlet x: Result<i32, &str> = Err(\"Some error message\");\nassert_eq!(x.is_err(), true);
          \n
          1.70.0 · source

          pub fn is_err_and(self, f: impl FnOnce(E) -> bool) -> bool

          Returns true if the result is Err and the value inside of it matches a predicate.

          \n
          §Examples
          \n
          use std::io::{Error, ErrorKind};\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::NotFound, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), true);\n\nlet x: Result<u32, Error> = Err(Error::new(ErrorKind::PermissionDenied, \"!\"));\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);\n\nlet x: Result<u32, Error> = Ok(123);\nassert_eq!(x.is_err_and(|x| x.kind() == ErrorKind::NotFound), false);
          \n
          1.0.0 · source

          pub fn ok(self) -> Option<T>

          Converts from Result<T, E> to Option<T>.

          \n

          Converts self into an Option<T>, consuming self,\nand discarding the error, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.ok(), Some(2));\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.ok(), None);
          \n
          1.0.0 · source

          pub fn err(self) -> Option<E>

          Converts from Result<T, E> to Option<E>.

          \n

          Converts self into an Option<E>, consuming self,\nand discarding the success value, if any.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.err(), None);\n\nlet x: Result<u32, &str> = Err(\"Nothing here\");\nassert_eq!(x.err(), Some(\"Nothing here\"));
          \n
          1.0.0 (const: 1.48.0) · source

          pub const fn as_ref(&self) -> Result<&T, &E>

          Converts from &Result<T, E> to Result<&T, &E>.

          \n

          Produces a new Result, containing a reference\ninto the original, leaving the original in place.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.as_ref(), Ok(&2));\n\nlet x: Result<u32, &str> = Err(\"Error\");\nassert_eq!(x.as_ref(), Err(&\"Error\"));
          \n
          1.0.0 (const: 1.83.0) · source

          pub const fn as_mut(&mut self) -> Result<&mut T, &mut E>

          Converts from &mut Result<T, E> to Result<&mut T, &mut E>.

          \n
          §Examples
          \n
          fn mutate(r: &mut Result<i32, i32>) {\n    match r.as_mut() {\n        Ok(v) => *v = 42,\n        Err(e) => *e = 0,\n    }\n}\n\nlet mut x: Result<i32, i32> = Ok(2);\nmutate(&mut x);\nassert_eq!(x.unwrap(), 42);\n\nlet mut x: Result<i32, i32> = Err(13);\nmutate(&mut x);\nassert_eq!(x.unwrap_err(), 0);
          \n
          1.0.0 · source

          pub fn map<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to Result<U, E> by applying a function to a\ncontained Ok value, leaving an Err value untouched.

          \n

          This function can be used to compose the results of two functions.

          \n
          §Examples
          \n

          Print the numbers on each line of a string multiplied by two.

          \n\n
          let line = \"1\\n2\\n3\\n4\\n\";\n\nfor num in line.lines() {\n    match num.parse::<i32>().map(|i| i * 2) {\n        Ok(n) => println!(\"{n}\"),\n        Err(..) => {}\n    }\n}
          \n
          1.41.0 · source

          pub fn map_or<U, F>(self, default: U, f: F) -> U
          where\n F: FnOnce(T) -> U,

          Returns the provided default (if Err), or\napplies a function to the contained value (if Ok).

          \n

          Arguments passed to map_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use map_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let x: Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or(42, |v| v.len()), 3);\n\nlet x: Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or(42, |v| v.len()), 42);
          \n
          1.41.0 · source

          pub fn map_or_else<U, D, F>(self, default: D, f: F) -> U
          where\n D: FnOnce(E) -> U,\n F: FnOnce(T) -> U,

          Maps a Result<T, E> to U by applying fallback function default to\na contained Err value, or function f to a contained Ok value.

          \n

          This function can be used to unpack a successful result\nwhile handling an error.

          \n
          §Examples
          \n
          let k = 21;\n\nlet x : Result<_, &str> = Ok(\"foo\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 3);\n\nlet x : Result<&str, _> = Err(\"bar\");\nassert_eq!(x.map_or_else(|e| k * 2, |v| v.len()), 42);
          \n
          1.0.0 · source

          pub fn map_err<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> F,

          Maps a Result<T, E> to Result<T, F> by applying a function to a\ncontained Err value, leaving an Ok value untouched.

          \n

          This function can be used to pass through a successful result while handling\nan error.

          \n
          §Examples
          \n
          fn stringify(x: u32) -> String { format!(\"error code: {x}\") }\n\nlet x: Result<u32, u32> = Ok(2);\nassert_eq!(x.map_err(stringify), Ok(2));\n\nlet x: Result<u32, u32> = Err(13);\nassert_eq!(x.map_err(stringify), Err(\"error code: 13\".to_string()));
          \n
          1.76.0 · source

          pub fn inspect<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&T),

          Calls a function with a reference to the contained value if Ok.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          let x: u8 = \"4\"\n    .parse::<u8>()\n    .inspect(|x| println!(\"original: {x}\"))\n    .map(|x| x.pow(3))\n    .expect(\"failed to parse number\");
          \n
          1.76.0 · source

          pub fn inspect_err<F>(self, f: F) -> Result<T, E>
          where\n F: FnOnce(&E),

          Calls a function with a reference to the contained value if Err.

          \n

          Returns the original result.

          \n
          §Examples
          \n
          use std::{fs, io};\n\nfn read() -> io::Result<String> {\n    fs::read_to_string(\"address.txt\")\n        .inspect_err(|e| eprintln!(\"failed to read file: {e}\"))\n}
          \n
          1.47.0 · source

          pub fn as_deref(&self) -> Result<&<T as Deref>::Target, &E>
          where\n T: Deref,

          Converts from Result<T, E> (or &Result<T, E>) to Result<&<T as Deref>::Target, &E>.

          \n

          Coerces the Ok variant of the original Result via Deref\nand returns the new Result.

          \n
          §Examples
          \n
          let x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&str, &u32> = Ok(\"hello\");\nassert_eq!(x.as_deref(), y);\n\nlet x: Result<String, u32> = Err(42);\nlet y: Result<&str, &u32> = Err(&42);\nassert_eq!(x.as_deref(), y);
          \n
          1.47.0 · source

          pub fn as_deref_mut(&mut self) -> Result<&mut <T as Deref>::Target, &mut E>
          where\n T: DerefMut,

          Converts from Result<T, E> (or &mut Result<T, E>) to Result<&mut <T as DerefMut>::Target, &mut E>.

          \n

          Coerces the Ok variant of the original Result via DerefMut\nand returns the new Result.

          \n
          §Examples
          \n
          let mut s = \"HELLO\".to_string();\nlet mut x: Result<String, u32> = Ok(\"hello\".to_string());\nlet y: Result<&mut str, &mut u32> = Ok(&mut s);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);\n\nlet mut i = 42;\nlet mut x: Result<String, u32> = Err(42);\nlet y: Result<&mut str, &mut u32> = Err(&mut i);\nassert_eq!(x.as_deref_mut().map(|x| { x.make_ascii_uppercase(); x }), y);
          \n
          1.0.0 · source

          pub fn iter(&self) -> Iter<'_, T>

          Returns an iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(7);\nassert_eq!(x.iter().next(), Some(&7));\n\nlet x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter().next(), None);
          \n
          1.0.0 · source

          pub fn iter_mut(&mut self) -> IterMut<'_, T>

          Returns a mutable iterator over the possibly contained value.

          \n

          The iterator yields one value if the result is Result::Ok, otherwise none.

          \n
          §Examples
          \n
          let mut x: Result<u32, &str> = Ok(7);\nmatch x.iter_mut().next() {\n    Some(v) => *v = 40,\n    None => {},\n}\nassert_eq!(x, Ok(40));\n\nlet mut x: Result<u32, &str> = Err(\"nothing!\");\nassert_eq!(x.iter_mut().next(), None);
          \n
          1.4.0 · source

          pub fn expect(self, msg: &str) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message including the\npassed message, and the content of the Err.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.expect(\"Testing expect\"); // panics with `Testing expect: emergency failure`
          \n
          §Recommended Message Style
          \n

          We recommend that expect messages are used to describe the reason you\nexpect the Result should be Ok.

          \n\n
          let path = std::env::var(\"IMPORTANT_PATH\")\n    .expect(\"env variable `IMPORTANT_PATH` should be set by `wrapper_script.sh`\");
          \n

          Hint: If you’re having trouble remembering how to phrase expect\nerror messages remember to focus on the word “should” as in “env\nvariable should be set by blah” or “the given binary should be available\nand executable by the current user”.

          \n

          For more detail on expect message styles and the reasoning behind our recommendation please\nrefer to the section on “Common Message\nStyles” in the\nstd::error module docs.

          \n
          1.0.0 · source

          pub fn unwrap(self) -> T
          where\n E: Debug,

          Returns the contained Ok value, consuming the self value.

          \n

          Because this function may panic, its use is generally discouraged.\nInstead, prefer to use pattern matching and handle the Err\ncase explicitly, or call unwrap_or, unwrap_or_else, or\nunwrap_or_default.

          \n
          §Panics
          \n

          Panics if the value is an Err, with a panic message provided by the\nErr’s value.

          \n
          §Examples
          \n

          Basic usage:

          \n\n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(x.unwrap(), 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nx.unwrap(); // panics with `emergency failure`
          \n
          1.16.0 · source

          pub fn unwrap_or_default(self) -> T
          where\n T: Default,

          Returns the contained Ok value or a default

          \n

          Consumes the self argument then, if Ok, returns the contained\nvalue, otherwise if Err, returns the default value for that\ntype.

          \n
          §Examples
          \n

          Converts a string to an integer, turning poorly-formed strings\ninto 0 (the default value for integers). parse converts\na string to any other type that implements FromStr, returning an\nErr on error.

          \n\n
          let good_year_from_input = \"1909\";\nlet bad_year_from_input = \"190blarg\";\nlet good_year = good_year_from_input.parse().unwrap_or_default();\nlet bad_year = bad_year_from_input.parse().unwrap_or_default();\n\nassert_eq!(1909, good_year);\nassert_eq!(0, bad_year);
          \n
          1.17.0 · source

          pub fn expect_err(self, msg: &str) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a panic message including the\npassed message, and the content of the Ok.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(10);\nx.expect_err(\"Testing expect_err\"); // panics with `Testing expect_err: 10`
          \n
          1.0.0 · source

          pub fn unwrap_err(self) -> E
          where\n T: Debug,

          Returns the contained Err value, consuming the self value.

          \n
          §Panics
          \n

          Panics if the value is an Ok, with a custom panic message provided\nby the Ok’s value.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nx.unwrap_err(); // panics with `2`
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(x.unwrap_err(), \"emergency failure\");
          \n
          source

          pub fn into_ok(self) -> T
          where\n E: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Ok value, but never panics.

          \n

          Unlike unwrap, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap as a maintainability safeguard that will fail\nto compile if the error type of the Result is later changed\nto an error that can actually occur.

          \n
          §Examples
          \n
          \nfn only_good_news() -> Result<String, !> {\n    Ok(\"this is fine\".into())\n}\n\nlet s: String = only_good_news().into_ok();\nprintln!(\"{s}\");
          \n
          source

          pub fn into_err(self) -> E
          where\n T: Into<!>,

          🔬This is a nightly-only experimental API. (unwrap_infallible)

          Returns the contained Err value, but never panics.

          \n

          Unlike unwrap_err, this method is known to never panic on the\nresult types it is implemented for. Therefore, it can be used\ninstead of unwrap_err as a maintainability safeguard that will fail\nto compile if the ok type of the Result is later changed\nto a type that can actually occur.

          \n
          §Examples
          \n
          \nfn only_bad_news() -> Result<!, String> {\n    Err(\"Oops, it failed\".into())\n}\n\nlet error: String = only_bad_news().into_err();\nprintln!(\"{error}\");
          \n
          1.0.0 · source

          pub fn and<U>(self, res: Result<U, E>) -> Result<U, E>

          Returns res if the result is Ok, otherwise returns the Err value of self.

          \n

          Arguments passed to and are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use and_then, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<&str, &str> = Ok(\"foo\");\nassert_eq!(x.and(y), Err(\"early error\"));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<&str, &str> = Err(\"late error\");\nassert_eq!(x.and(y), Err(\"not a 2\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<&str, &str> = Ok(\"different result type\");\nassert_eq!(x.and(y), Ok(\"different result type\"));
          \n
          1.0.0 · source

          pub fn and_then<U, F>(self, op: F) -> Result<U, E>
          where\n F: FnOnce(T) -> Result<U, E>,

          Calls op if the result is Ok, otherwise returns the Err value of self.

          \n

          This function can be used for control flow based on Result values.

          \n
          §Examples
          \n
          fn sq_then_to_string(x: u32) -> Result<String, &'static str> {\n    x.checked_mul(x).map(|sq| sq.to_string()).ok_or(\"overflowed\")\n}\n\nassert_eq!(Ok(2).and_then(sq_then_to_string), Ok(4.to_string()));\nassert_eq!(Ok(1_000_000).and_then(sq_then_to_string), Err(\"overflowed\"));\nassert_eq!(Err(\"not a number\").and_then(sq_then_to_string), Err(\"not a number\"));
          \n

          Often used to chain fallible operations that may return Err.

          \n\n
          use std::{io::ErrorKind, path::Path};\n\n// Note: on Windows \"/\" maps to \"C:\\\"\nlet root_modified_time = Path::new(\"/\").metadata().and_then(|md| md.modified());\nassert!(root_modified_time.is_ok());\n\nlet should_fail = Path::new(\"/bad/path\").metadata().and_then(|md| md.modified());\nassert!(should_fail.is_err());\nassert_eq!(should_fail.unwrap_err().kind(), ErrorKind::NotFound);
          \n
          1.0.0 · source

          pub fn or<F>(self, res: Result<T, F>) -> Result<T, F>

          Returns res if the result is Err, otherwise returns the Ok value of self.

          \n

          Arguments passed to or are eagerly evaluated; if you are passing the\nresult of a function call, it is recommended to use or_else, which is\nlazily evaluated.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"early error\");\nlet y: Result<u32, &str> = Ok(2);\nassert_eq!(x.or(y), Ok(2));\n\nlet x: Result<u32, &str> = Err(\"not a 2\");\nlet y: Result<u32, &str> = Err(\"late error\");\nassert_eq!(x.or(y), Err(\"late error\"));\n\nlet x: Result<u32, &str> = Ok(2);\nlet y: Result<u32, &str> = Ok(100);\nassert_eq!(x.or(y), Ok(2));
          \n
          1.0.0 · source

          pub fn or_else<F, O>(self, op: O) -> Result<T, F>
          where\n O: FnOnce(E) -> Result<T, F>,

          Calls op if the result is Err, otherwise returns the Ok value of self.

          \n

          This function can be used for control flow based on result values.

          \n
          §Examples
          \n
          fn sq(x: u32) -> Result<u32, u32> { Ok(x * x) }\nfn err(x: u32) -> Result<u32, u32> { Err(x) }\n\nassert_eq!(Ok(2).or_else(sq).or_else(sq), Ok(2));\nassert_eq!(Ok(2).or_else(err).or_else(sq), Ok(2));\nassert_eq!(Err(3).or_else(sq).or_else(err), Ok(9));\nassert_eq!(Err(3).or_else(err).or_else(err), Err(3));
          \n
          1.0.0 · source

          pub fn unwrap_or(self, default: T) -> T

          Returns the contained Ok value or a provided default.

          \n

          Arguments passed to unwrap_or are eagerly evaluated; if you are passing\nthe result of a function call, it is recommended to use unwrap_or_else,\nwhich is lazily evaluated.

          \n
          §Examples
          \n
          let default = 2;\nlet x: Result<u32, &str> = Ok(9);\nassert_eq!(x.unwrap_or(default), 9);\n\nlet x: Result<u32, &str> = Err(\"error\");\nassert_eq!(x.unwrap_or(default), default);
          \n
          1.0.0 · source

          pub fn unwrap_or_else<F>(self, op: F) -> T
          where\n F: FnOnce(E) -> T,

          Returns the contained Ok value or computes it from a closure.

          \n
          §Examples
          \n
          fn count(x: &str) -> usize { x.len() }\n\nassert_eq!(Ok(2).unwrap_or_else(count), 2);\nassert_eq!(Err(\"foo\").unwrap_or_else(count), 3);
          \n
          1.58.0 · source

          pub unsafe fn unwrap_unchecked(self) -> T

          Returns the contained Ok value, consuming the self value,\nwithout checking that the value is not an Err.

          \n
          §Safety
          \n

          Calling this method on an Err is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nassert_eq!(unsafe { x.unwrap_unchecked() }, 2);
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nunsafe { x.unwrap_unchecked(); } // Undefined behavior!
          \n
          1.58.0 · source

          pub unsafe fn unwrap_err_unchecked(self) -> E

          Returns the contained Err value, consuming the self value,\nwithout checking that the value is not an Ok.

          \n
          §Safety
          \n

          Calling this method on an Ok is undefined behavior.

          \n
          §Examples
          \n
          let x: Result<u32, &str> = Ok(2);\nunsafe { x.unwrap_err_unchecked() }; // Undefined behavior!
          \n\n
          let x: Result<u32, &str> = Err(\"emergency failure\");\nassert_eq!(unsafe { x.unwrap_err_unchecked() }, \"emergency failure\");
          \n
          ",0,"cu29_traits::CuResult"],["
          source§

          impl<T, E> Serialize for Result<T, E>
          where\n T: Serialize,\n E: Serialize,

          source§

          fn serialize<S>(\n &self,\n serializer: S,\n) -> Result<<S as Serializer>::Ok, <S as Serializer>::Error>
          where\n S: Serializer,

          Serialize this value into the given Serde serializer. Read more
          ","Serialize","cu29_traits::CuResult"],["
          1.16.0 · source§

          impl<T, U, E> Sum<Result<U, E>> for Result<T, E>
          where\n T: Sum<U>,

          source§

          fn sum<I>(iter: I) -> Result<T, E>
          where\n I: Iterator<Item = Result<U, E>>,

          Takes each element in the Iterator: if it is an Err, no further\nelements are taken, and the Err is returned. Should no Err\noccur, the sum of all elements is returned.

          \n
          §Examples
          \n

          This sums up every integer in a vector, rejecting the sum if a negative\nelement is encountered:

          \n\n
          let f = |&x: &i32| if x < 0 { Err(\"Negative element found\") } else { Ok(x) };\nlet v = vec![1, 2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Ok(3));\nlet v = vec![1, -2];\nlet res: Result<i32, _> = v.iter().map(f).sum();\nassert_eq!(res, Err(\"Negative element found\"));
          \n
          ","Sum>","cu29_traits::CuResult"],["
          1.61.0 · source§

          impl<T, E> Termination for Result<T, E>
          where\n T: Termination,\n E: Debug,

          source§

          fn report(self) -> ExitCode

          Is called to get the representation of the value as status code.\nThis status code is returned to the operating system.
          ","Termination","cu29_traits::CuResult"],["
          source§

          impl<T, E> Try for Result<T, E>

          source§

          type Output = T

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value produced by ? when not short-circuiting.
          source§

          type Residual = Result<Infallible, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          The type of the value passed to FromResidual::from_residual\nas part of ? when short-circuiting. Read more
          source§

          fn from_output(output: <Result<T, E> as Try>::Output) -> Result<T, E>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Constructs the type from its Output type. Read more
          source§

          fn branch(\n self,\n) -> ControlFlow<<Result<T, E> as Try>::Residual, <Result<T, E> as Try>::Output>

          🔬This is a nightly-only experimental API. (try_trait_v2)
          Used in ? to decide whether the operator should produce a value\n(because this returned ControlFlow::Continue)\nor propagate a value back to the caller\n(because this returned ControlFlow::Break). Read more
          ","Try","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Copy for Result<T, E>
          where\n T: Copy,\n E: Copy,

          ","Copy","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> Eq for Result<T, E>
          where\n T: Eq,\n E: Eq,

          ","Eq","cu29_traits::CuResult"],["
          1.0.0 · source§

          impl<T, E> StructuralPartialEq for Result<T, E>

          ","StructuralPartialEq","cu29_traits::CuResult"]]]]); if (window.register_type_impls) { window.register_type_impls(type_impls); } else {