diff --git a/cu29/all.html b/cu29/all.html index 7ca2d58f6..e3a94ce3e 100644 --- a/cu29/all.html +++ b/cu29/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Structs

Enums

Traits

Macros

Attribute Macros

Functions

Type Aliases

Statics

Constants

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

List of all items

Structs

Enums

Traits

Macros

Attribute Macros

Functions

Type Aliases

Statics

Constants

\ No newline at end of file diff --git a/cu29/config/fn.read_configuration.html b/cu29/config/fn.read_configuration.html index 145293a3b..4f498c57d 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

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

+read_configuration in cu29::config - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

\ No newline at end of file diff --git a/cu29/config/fn.read_configuration_str.html b/cu29/config/fn.read_configuration_str.html index 21885d4d9..a7cfc5073 100644 --- a/cu29/config/fn.read_configuration_str.html +++ b/cu29/config/fn.read_configuration_str.html @@ -1,4 +1,4 @@ -read_configuration_str in cu29::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
+read_configuration_str in cu29::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
     config_content: String,
 ) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a String.

\ No newline at end of file diff --git a/cu29/config/index.html b/cu29/config/index.html index 83f046be6..b1119c7fd 100644 --- a/cu29/config/index.html +++ b/cu29/config/index.html @@ -1,4 +1,4 @@ -cu29::config - Rust

Module config

Source
Expand description

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

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 f02c75ce3..d6f034400 100644 --- a/cu29/config/struct.Cnx.html +++ b/cu29/config/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29::config - Rust

Struct Cnx

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

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 deda71662..bd9dde43c 100644
--- a/cu29/config/struct.ComponentConfig.html
+++ b/cu29/config/struct.ComponentConfig.html
@@ -1,4 +1,4 @@
-ComponentConfig in cu29::config - Rust

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

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() -> ComponentConfig

Source

pub fn get<T>(&self, key: &str) -> Option<T>
where diff --git a/cu29/config/struct.CuConfig.html b/cu29/config/struct.CuConfig.html index 854873365..215bb8afc 100644 --- a/cu29/config/struct.CuConfig.html +++ b/cu29/config/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29::config - Rust

Struct CuConfig

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

Struct CuConfig

Source
pub struct CuConfig {
     pub graph: StableGraph<Node, Cnx>,
     pub monitor: Option<MonitorConfig>,
     pub logging: Option<LoggingConfig>,
diff --git a/cu29/config/struct.LoggingConfig.html b/cu29/config/struct.LoggingConfig.html
index 4dfbdea7c..de8cff9a3 100644
--- a/cu29/config/struct.LoggingConfig.html
+++ b/cu29/config/struct.LoggingConfig.html
@@ -1,4 +1,4 @@
-LoggingConfig in cu29::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
+LoggingConfig in cu29::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
     pub slab_size_mib: Option<u64>,
     pub section_size_mib: Option<u64>,
     pub enable_task_logging: bool,
diff --git a/cu29/config/struct.MonitorConfig.html b/cu29/config/struct.MonitorConfig.html
index 2993564e1..fa2f024c5 100644
--- a/cu29/config/struct.MonitorConfig.html
+++ b/cu29/config/struct.MonitorConfig.html
@@ -1,4 +1,4 @@
-MonitorConfig in cu29::config - Rust

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<(), Error>

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>( +MonitorConfig in cu29::config - Rust

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<(), Error>

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<MonitorConfig, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

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

impl Serialize for MonitorConfig

Source§

fn serialize<__S>( diff --git a/cu29/config/struct.Node.html b/cu29/config/struct.Node.html index e391b3d26..cb95db6a4 100644 --- a/cu29/config/struct.Node.html +++ b/cu29/config/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29::config - Rust

Struct Node

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

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

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) -> Node

Source

pub fn get_id(&self) -> String

Source

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

Source

pub fn get_type(&self) -> &str

Source

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

Source

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

Source

pub fn set_param<T>(&mut self, key: &str, value: T)
where diff --git a/cu29/config/struct.Value.html b/cu29/config/struct.Value.html index b82cd8315..8ba0dacde 100644 --- a/cu29/config/struct.Value.html +++ b/cu29/config/struct.Value.html @@ -1,4 +1,4 @@ -Value in cu29::config - Rust

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

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<(), Error>

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

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

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<Value, <__D as Deserializer<'de>>::Error>
where diff --git a/cu29/config/type.NodeId.html b/cu29/config/type.NodeId.html index fbeb2efc7..2755a0995 100644 --- a/cu29/config/type.NodeId.html +++ b/cu29/config/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29::config - Rust

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

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 033a71c88..93b1d16f9 100644 --- a/cu29/copperlist/enum.CopperListState.html +++ b/cu29/copperlist/enum.CopperListState.html @@ -1,4 +1,4 @@ -CopperListState in cu29::copperlist - Rust

Enum CopperListState

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

Enum CopperListState

Source
pub enum CopperListState {
     Free,
     Initialized,
     Processing,
diff --git a/cu29/copperlist/index.html b/cu29/copperlist/index.html
index f4e66eb2b..41e533872 100644
--- a/cu29/copperlist/index.html
+++ b/cu29/copperlist/index.html
@@ -1,4 +1,4 @@
-cu29::copperlist - Rust

Module copperlist

Source
Expand description

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

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§

CopperLiskMask
Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.
CopperList
CuListsManager
This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. diff --git a/cu29/copperlist/struct.CopperLiskMask.html b/cu29/copperlist/struct.CopperLiskMask.html index 95e2c4270..73d514d58 100644 --- a/cu29/copperlist/struct.CopperLiskMask.html +++ b/cu29/copperlist/struct.CopperLiskMask.html @@ -1,4 +1,4 @@ -CopperLiskMask in cu29::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. +CopperLiskMask in cu29::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.

Trait Implementations§

Source§

impl<'__de> BorrowDecode<'__de> for CopperLiskMask

Source§

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

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

impl Clone for CopperLiskMask

Source§

fn clone(&self) -> CopperLiskMask

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 CopperLiskMask

Source§

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

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

impl Decode for CopperLiskMask

Source§

fn decode<__D>(decoder: &mut __D) -> Result<CopperLiskMask, DecodeError>
where diff --git a/cu29/copperlist/struct.CopperList.html b/cu29/copperlist/struct.CopperList.html index e57e438c9..84ada511a 100644 --- a/cu29/copperlist/struct.CopperList.html +++ b/cu29/copperlist/struct.CopperList.html @@ -1,4 +1,4 @@ -CopperList in cu29::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P>
where +CopperList in cu29::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P>
where P: CopperListTuple,
{ pub id: u32, pub msgs: P, diff --git a/cu29/copperlist/struct.CuListsManager.html b/cu29/copperlist/struct.CuListsManager.html index e37d6b3fd..786ef46f9 100644 --- a/cu29/copperlist/struct.CuListsManager.html +++ b/cu29/copperlist/struct.CuListsManager.html @@ -1,4 +1,4 @@ -CuListsManager in cu29::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where +CuListsManager in cu29::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where P: CopperListTuple,
{ /* private fields */ }
Expand description

This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. P or Payload is typically a Tuple of various types of messages that are exchanged between tasks. N is the maximum number of in flight Copper List the runtime can support.

diff --git a/cu29/copperlist/type.AscIter.html b/cu29/copperlist/type.AscIter.html index 8313bb960..6b1e539ac 100644 --- a/cu29/copperlist/type.AscIter.html +++ b/cu29/copperlist/type.AscIter.html @@ -1 +1 @@ -AscIter in cu29::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file +AscIter in cu29::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/copperlist/type.AscIterMut.html b/cu29/copperlist/type.AscIterMut.html index 4f47f502c..cf0dbf6f5 100644 --- a/cu29/copperlist/type.AscIterMut.html +++ b/cu29/copperlist/type.AscIterMut.html @@ -1 +1 @@ -AscIterMut in cu29::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file +AscIterMut in cu29::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/copperlist/type.Iter.html b/cu29/copperlist/type.Iter.html index 81fefe4a4..e5b70083f 100644 --- a/cu29/copperlist/type.Iter.html +++ b/cu29/copperlist/type.Iter.html @@ -1 +1 @@ -Iter in cu29::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file +Iter in cu29::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/copperlist/type.IterMut.html b/cu29/copperlist/type.IterMut.html index 50f2fc0e3..21f1e319e 100644 --- a/cu29/copperlist/type.IterMut.html +++ b/cu29/copperlist/type.IterMut.html @@ -1 +1 @@ -IterMut in cu29::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file +IterMut in cu29::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/curuntime/enum.CuExecutionUnit.html b/cu29/curuntime/enum.CuExecutionUnit.html index 221857d86..9630175cc 100644 --- a/cu29/curuntime/enum.CuExecutionUnit.html +++ b/cu29/curuntime/enum.CuExecutionUnit.html @@ -1,4 +1,4 @@ -CuExecutionUnit in cu29::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
+CuExecutionUnit in cu29::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
     Step(CuExecutionStep),
     Loop(CuExecutionLoop),
 }
Expand description

This structure represents a step in the execution plan.

diff --git a/cu29/curuntime/enum.CuTaskType.html b/cu29/curuntime/enum.CuTaskType.html index 334bb394f..cfb669eaf 100644 --- a/cu29/curuntime/enum.CuTaskType.html +++ b/cu29/curuntime/enum.CuTaskType.html @@ -1,4 +1,4 @@ -CuTaskType in cu29::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
+CuTaskType in cu29::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
     Source,
     Regular,
     Sink,
diff --git a/cu29/curuntime/fn.compute_runtime_plan.html b/cu29/curuntime/fn.compute_runtime_plan.html
index e595a6f2d..b04364474 100644
--- a/cu29/curuntime/fn.compute_runtime_plan.html
+++ b/cu29/curuntime/fn.compute_runtime_plan.html
@@ -1,4 +1,4 @@
-compute_runtime_plan in cu29::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
+compute_runtime_plan in cu29::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
     config: &CuConfig,
 ) -> Result<CuExecutionLoop, CuError>
Expand description

This is the main heuristics to compute an execution plan at compilation time. TODO: Make that heuristic pluggable.

diff --git a/cu29/curuntime/fn.find_task_type_for_id.html b/cu29/curuntime/fn.find_task_type_for_id.html index 0bcf3467e..fb4ed5c88 100644 --- a/cu29/curuntime/fn.find_task_type_for_id.html +++ b/cu29/curuntime/fn.find_task_type_for_id.html @@ -1,4 +1,4 @@ -find_task_type_for_id in cu29::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
+find_task_type_for_id in cu29::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
     graph: &StableGraph<Node, Cnx>,
     node_id: u32,
 ) -> CuTaskType
\ No newline at end of file diff --git a/cu29/curuntime/index.html b/cu29/curuntime/index.html index de1e459a9..f88d90c9c 100644 --- a/cu29/curuntime/index.html +++ b/cu29/curuntime/index.html @@ -1,4 +1,4 @@ -cu29::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. +cu29::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. It is exposed to the user via the copper_runtime macro injecting it as a field in their application struct.

Structs§

CopperContext
Just a simple struct to hold the various bits needed to run a Copper application.
CuExecutionLoop
This structure represents a loop in the execution plan. It is used to represent a sequence of Execution units (loop or steps) that are executed diff --git a/cu29/curuntime/struct.CopperContext.html b/cu29/curuntime/struct.CopperContext.html index f12fd74c7..a47761a9a 100644 --- a/cu29/curuntime/struct.CopperContext.html +++ b/cu29/curuntime/struct.CopperContext.html @@ -1,4 +1,4 @@ -CopperContext in cu29::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
+CopperContext in cu29::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
     pub unified_logger: Arc<Mutex<UnifiedLoggerWrite>>,
     pub logger_runtime: LoggerRuntime,
     pub clock: RobotClock,
diff --git a/cu29/curuntime/struct.CuExecutionLoop.html b/cu29/curuntime/struct.CuExecutionLoop.html
index 33c9364b6..16e02d395 100644
--- a/cu29/curuntime/struct.CuExecutionLoop.html
+++ b/cu29/curuntime/struct.CuExecutionLoop.html
@@ -1,4 +1,4 @@
-CuExecutionLoop in cu29::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
+CuExecutionLoop in cu29::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
     pub steps: Vec<CuExecutionUnit>,
     pub loop_count: Option<u32>,
 }
Expand description

This structure represents a loop in the execution plan. diff --git a/cu29/curuntime/struct.CuExecutionStep.html b/cu29/curuntime/struct.CuExecutionStep.html index cddc1eea0..990262226 100644 --- a/cu29/curuntime/struct.CuExecutionStep.html +++ b/cu29/curuntime/struct.CuExecutionStep.html @@ -1,4 +1,4 @@ -CuExecutionStep in cu29::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
+CuExecutionStep in cu29::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
     pub node_id: u32,
     pub node: Node,
     pub task_type: CuTaskType,
diff --git a/cu29/curuntime/struct.CuRuntime.html b/cu29/curuntime/struct.CuRuntime.html
index d81b47e3d..da0159244 100644
--- a/cu29/curuntime/struct.CuRuntime.html
+++ b/cu29/curuntime/struct.CuRuntime.html
@@ -1,4 +1,4 @@
-CuRuntime in cu29::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>
where +CuRuntime in cu29::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>{
     pub tasks: CT,
diff --git a/cu29/cutask/index.html b/cu29/cutask/index.html
index 517c9262d..4009abb3e 100644
--- a/cu29/cutask/index.html
+++ b/cu29/cutask/index.html
@@ -1,4 +1,4 @@
-cu29::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement +cu29::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement or interact with to create a Copper task.

Structs§

CuCompactString
CuMsg
CuMsg is the envelope holding the msg payload and the metadata between tasks.
CuMsgMetadata
CuMsgMetadata is a structure that contains metadata common to all CuMsgs.

Traits§

CuMsgPack
CuMsgPayload
CuSinkTask
A Sink Task is a task that only consumes messages. For example drivers for actuators are Sink Tasks.
CuSrcTask
A Src Task is a task that only produces messages. For example drivers for sensors are Src Tasks. They are in push mode from the runtime. diff --git a/cu29/cutask/struct.CuCompactString.html b/cu29/cutask/struct.CuCompactString.html index 2c7e61f5c..df37aa571 100644 --- a/cu29/cutask/struct.CuCompactString.html +++ b/cu29/cutask/struct.CuCompactString.html @@ -1,4 +1,4 @@ -CuCompactString in cu29::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where +CuCompactString in cu29::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: BorrowDecoder<'de>,

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

impl Clone for CuCompactString

Source§

fn clone(&self) -> CuCompactString

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 CuCompactString

Source§

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

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

impl Decode for CuCompactString

Source§

fn decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: Decoder,

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

impl Default for CuCompactString

Source§

fn default() -> CuCompactString

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

impl<'de> Deserialize<'de> for CuCompactString

Source§

fn deserialize<__D>( __deserializer: __D, diff --git a/cu29/cutask/struct.CuMsg.html b/cu29/cutask/struct.CuMsg.html index 543ef7492..d03055a5a 100644 --- a/cu29/cutask/struct.CuMsg.html +++ b/cu29/cutask/struct.CuMsg.html @@ -1,4 +1,4 @@ -CuMsg in cu29::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where +CuMsg in cu29::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where T: CuMsgPayload,
{ pub metadata: CuMsgMetadata, /* private fields */ diff --git a/cu29/cutask/struct.CuMsgMetadata.html b/cu29/cutask/struct.CuMsgMetadata.html index 3281b1ca7..58fe2ca77 100644 --- a/cu29/cutask/struct.CuMsgMetadata.html +++ b/cu29/cutask/struct.CuMsgMetadata.html @@ -1,4 +1,4 @@ -CuMsgMetadata in cu29::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
+CuMsgMetadata in cu29::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
     pub process_time: PartialCuTimeRange,
     pub tov: Tov,
     pub status_txt: CuCompactString,
diff --git a/cu29/cutask/trait.CuMsgPack.html b/cu29/cutask/trait.CuMsgPack.html
index a3ec51595..650bcf06c 100644
--- a/cu29/cutask/trait.CuMsgPack.html
+++ b/cu29/cutask/trait.CuMsgPack.html
@@ -1,4 +1,4 @@
-CuMsgPack in cu29::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where +CuMsgPack in cu29::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl,

Source§

impl<'cl, T1, T2, T3> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>)
where T1: CuMsgPayload + 'cl, diff --git a/cu29/cutask/trait.CuMsgPayload.html b/cu29/cutask/trait.CuMsgPayload.html index 9f77c0d9c..76f8ad325 100644 --- a/cu29/cutask/trait.CuMsgPayload.html +++ b/cu29/cutask/trait.CuMsgPayload.html @@ -1,4 +1,4 @@ -CuMsgPayload in cu29::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
+CuMsgPayload in cu29::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
     Sized
     + Default
     + Debug
diff --git a/cu29/cutask/trait.CuSinkTask.html b/cu29/cutask/trait.CuSinkTask.html
index 394db2b59..7c01f6855 100644
--- a/cu29/cutask/trait.CuSinkTask.html
+++ b/cu29/cutask/trait.CuSinkTask.html
@@ -1,4 +1,4 @@
-CuSinkTask in cu29::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
+CuSinkTask in cu29::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/cutask/trait.CuSrcTask.html b/cu29/cutask/trait.CuSrcTask.html
index 235bb7f04..0c5caf6a0 100644
--- a/cu29/cutask/trait.CuSrcTask.html
+++ b/cu29/cutask/trait.CuSrcTask.html
@@ -1,4 +1,4 @@
-CuSrcTask in cu29::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
+CuSrcTask in cu29::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
     type Output: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/cutask/trait.CuTask.html b/cu29/cutask/trait.CuTask.html
index e64823b12..ce2e791b3 100644
--- a/cu29/cutask/trait.CuTask.html
+++ b/cu29/cutask/trait.CuTask.html
@@ -1,4 +1,4 @@
-CuTask in cu29::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
+CuTask in cu29::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
     type Output: CuMsgPack<'cl>;
 
diff --git a/cu29/cutask/trait.Freezable.html b/cu29/cutask/trait.Freezable.html
index c7663ac92..77d55a5be 100644
--- a/cu29/cutask/trait.Freezable.html
+++ b/cu29/cutask/trait.Freezable.html
@@ -1,4 +1,4 @@
-Freezable in cu29::cutask - Rust

Trait Freezable

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

Trait Freezable

Source
pub trait Freezable {
     // Provided methods
     fn freeze<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
        where E: Encoder { ... }
diff --git a/cu29/enum.UnifiedLogType.html b/cu29/enum.UnifiedLogType.html
index 71b744e7f..84314dd41 100644
--- a/cu29/enum.UnifiedLogType.html
+++ b/cu29/enum.UnifiedLogType.html
@@ -1,4 +1,4 @@
-UnifiedLogType in cu29 - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
+UnifiedLogType in cu29 - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
     Empty,
     StructuredLogLine,
     CopperList,
diff --git a/cu29/fn.read_configuration.html b/cu29/fn.read_configuration.html
index 57a938141..c8a8cf71c 100644
--- a/cu29/fn.read_configuration.html
+++ b/cu29/fn.read_configuration.html
@@ -1,2 +1,2 @@
-read_configuration in cu29 - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

+read_configuration in cu29 - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

\ No newline at end of file diff --git a/cu29/index.html b/cu29/index.html index 289e79710..1fe942e23 100644 --- a/cu29/index.html +++ b/cu29/index.html @@ -1,8 +1,9 @@ -cu29 - Rust

Crate cu29

Source
Expand description
logo +cu29 - Rust

Crate cu29

Source
Expand description
logo

§

§Copper

copper GitHub last commit +dependency status License Discord

Copper is a user-friendly runtime engine for creating fast and reliable robots. Copper is to robots what a diff --git a/cu29/macro.input_msg.html b/cu29/macro.input_msg.html index 0faff7b8d..c07ce832c 100644 --- a/cu29/macro.input_msg.html +++ b/cu29/macro.input_msg.html @@ -1,4 +1,4 @@ -input_msg in cu29 - Rust

Macro input_msg

Source
macro_rules! input_msg {
+input_msg in cu29 - Rust

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 c3decf8c5..4fdee3357 100644 --- a/cu29/macro.output_msg.html +++ b/cu29/macro.output_msg.html @@ -1,3 +1,3 @@ -output_msg in cu29 - Rust

Macro output_msg

Source
macro_rules! output_msg {
+output_msg in cu29 - Rust

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 f3e524222..3c7845b5c 100644 --- a/cu29/monitoring/enum.CuTaskState.html +++ b/cu29/monitoring/enum.CuTaskState.html @@ -1,4 +1,4 @@ -CuTaskState in cu29::monitoring - Rust

Enum CuTaskState

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

Enum CuTaskState

Source
pub enum CuTaskState {
     Start,
     Preprocess,
     Process,
diff --git a/cu29/monitoring/enum.Decision.html b/cu29/monitoring/enum.Decision.html
index 4883b05ca..1399484d8 100644
--- a/cu29/monitoring/enum.Decision.html
+++ b/cu29/monitoring/enum.Decision.html
@@ -1,4 +1,4 @@
-Decision in cu29::monitoring - Rust

Enum Decision

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

Enum Decision

Source
pub enum Decision {
     Abort,
     Ignore,
     Shutdown,
diff --git a/cu29/monitoring/index.html b/cu29/monitoring/index.html
index 3c0e45f87..37d83999a 100644
--- a/cu29/monitoring/index.html
+++ b/cu29/monitoring/index.html
@@ -1,4 +1,4 @@
-cu29::monitoring - Rust

Module monitoring

Source
Expand description

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

+cu29::monitoring - Rust

Module monitoring

Source
Expand description

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

Structs§

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

Enums§

CuTaskState
The state of a task.
Decision
Monitor decision to be taken when a task errored out.

Statics§

GLOBAL

Traits§

CuMonitor
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 e68b99e3f..f9c7d212c 100644 --- a/cu29/monitoring/static.GLOBAL.html +++ b/cu29/monitoring/static.GLOBAL.html @@ -1 +1 @@ -GLOBAL in cu29::monitoring - Rust

Static GLOBAL

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

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 2ce89374a..d1597b9d3 100644 --- a/cu29/monitoring/struct.CountingAllocator.html +++ b/cu29/monitoring/struct.CountingAllocator.html @@ -1,4 +1,4 @@ -CountingAllocator in cu29::monitoring - Rust

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

Struct CountingAllocator

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

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

Implementations§

Trait Implementations§

Source§

impl Default for CountingAllocator

Source§

fn default() -> CountingAllocator

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 82839d889..d81afc7b2 100644 --- a/cu29/monitoring/struct.CuDurationStatistics.html +++ b/cu29/monitoring/struct.CuDurationStatistics.html @@ -1,4 +1,4 @@ -CuDurationStatistics in cu29::monitoring - Rust

Struct CuDurationStatistics

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

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

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) -> CuDurationStatistics

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 is_empty(&self) -> bool

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<(), Error>

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 aee0077d1..d193879e1 100644 --- a/cu29/monitoring/struct.LiveStatistics.html +++ b/cu29/monitoring/struct.LiveStatistics.html @@ -1,4 +1,4 @@ -LiveStatistics in cu29::monitoring - Rust

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

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() -> LiveStatistics

Source

pub fn new_with_max(max: u64) -> LiveStatistics

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 is_empty(&self) -> bool

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<(), Error>

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 3ae682f39..a8ca253a1 100644 --- a/cu29/monitoring/struct.NoMonitor.html +++ b/cu29/monitoring/struct.NoMonitor.html @@ -1,4 +1,4 @@ -NoMonitor in cu29::monitoring - Rust

Struct NoMonitor

Source
pub struct NoMonitor {}
Expand description

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

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: &CuConfig, diff --git a/cu29/monitoring/struct.ScopedAllocCounter.html b/cu29/monitoring/struct.ScopedAllocCounter.html index 6d543af6d..be5e29d03 100644 --- a/cu29/monitoring/struct.ScopedAllocCounter.html +++ b/cu29/monitoring/struct.ScopedAllocCounter.html @@ -1,4 +1,4 @@ -ScopedAllocCounter in cu29::monitoring - Rust

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

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§

Source§

impl ScopedAllocCounter

Source

pub fn new() -> ScopedAllocCounter

Source

pub fn get_allocated(&self) -> usize

Returns the total number of bytes allocated in the current scope since the creation of this ScopedAllocCounter.

§Example
diff --git a/cu29/monitoring/trait.CuMonitor.html b/cu29/monitoring/trait.CuMonitor.html index 309be3a3c..606f62c12 100644 --- a/cu29/monitoring/trait.CuMonitor.html +++ b/cu29/monitoring/trait.CuMonitor.html @@ -1,4 +1,4 @@ -CuMonitor in cu29::monitoring - Rust

Trait CuMonitor

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

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
     // Required methods
     fn new(
         config: &CuConfig,
diff --git a/cu29/payload/index.html b/cu29/payload/index.html
index cca27b908..9268e5444 100644
--- a/cu29/payload/index.html
+++ b/cu29/payload/index.html
@@ -1 +1 @@
-cu29::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file +cu29::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file diff --git a/cu29/payload/struct.CuArray.html b/cu29/payload/struct.CuArray.html index b84193a60..a29db71b3 100644 --- a/cu29/payload/struct.CuArray.html +++ b/cu29/payload/struct.CuArray.html @@ -1,4 +1,4 @@ -CuArray in cu29::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

+CuArray in cu29::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

Implementations§

Source§

impl<T, const N: usize> CuArray<T, N>

Source

pub fn new() -> CuArray<T, N>

Source

pub fn fill_from_iter<I>(&mut self, iter: I)
where I: IntoIterator<Item = T>,

Source

pub fn len(&self) -> usize

Source

pub fn is_empty(&self) -> bool

Source

pub fn as_slice(&self) -> &[T]

Source

pub fn capacity(&self) -> usize

Trait Implementations§

Source§

impl<T, const N: usize> Clone for CuArray<T, N>
where T: Clone,

Source§

fn clone(&self) -> CuArray<T, N>

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<T, const N: usize> Debug for CuArray<T, N>
where diff --git a/cu29/prelude/attr.copper_runtime.html b/cu29/prelude/attr.copper_runtime.html index 85bf4fdc1..24089754e 100644 --- a/cu29/prelude/attr.copper_runtime.html +++ b/cu29/prelude/attr.copper_runtime.html @@ -1,4 +1,4 @@ -copper_runtime in cu29::prelude - Rust

Attribute Macro copper_runtime

Source
#[copper_runtime]
Expand description

Adds #[copper_runtime(config = “path”, sim_mode = false/true)] to your application struct to generate the runtime. +copper_runtime in cu29::prelude - Rust

Attribute Macro copper_runtime

Source
#[copper_runtime]
Expand description

Adds #[copper_runtime(config = “path”, sim_mode = false/true)] to your application struct to generate the runtime. if sim_mode is omitted, it is set to false. 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/prelude/config/fn.read_configuration.html b/cu29/prelude/config/fn.read_configuration.html index 4a85538c3..c81953a0f 100644 --- a/cu29/prelude/config/fn.read_configuration.html +++ b/cu29/prelude/config/fn.read_configuration.html @@ -1,2 +1,2 @@ -read_configuration in cu29::prelude::config - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

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

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

\ No newline at end of file diff --git a/cu29/prelude/config/fn.read_configuration_str.html b/cu29/prelude/config/fn.read_configuration_str.html index 2b96d2bea..abfef75da 100644 --- a/cu29/prelude/config/fn.read_configuration_str.html +++ b/cu29/prelude/config/fn.read_configuration_str.html @@ -1,4 +1,4 @@ -read_configuration_str in cu29::prelude::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
+read_configuration_str in cu29::prelude::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
     config_content: String,
 ) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a String.

\ No newline at end of file diff --git a/cu29/prelude/config/index.html b/cu29/prelude/config/index.html index ef0f7da4d..e6c4a3c59 100644 --- a/cu29/prelude/config/index.html +++ b/cu29/prelude/config/index.html @@ -1,4 +1,4 @@ -cu29::prelude::config - Rust

Module config

Source
Expand description

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

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/prelude/config/struct.Cnx.html b/cu29/prelude/config/struct.Cnx.html index ed44f6755..272527d17 100644 --- a/cu29/prelude/config/struct.Cnx.html +++ b/cu29/prelude/config/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29::prelude::config - Rust

Struct Cnx

Source
pub struct Cnx {
+Cnx in cu29::prelude::config - Rust

Struct Cnx

Source
pub struct Cnx {
     pub msg: String,
     pub batch: Option<u32>,
     pub store: Option<bool>,
diff --git a/cu29/prelude/config/struct.ComponentConfig.html b/cu29/prelude/config/struct.ComponentConfig.html
index e4aa28d29..5fc19106a 100644
--- a/cu29/prelude/config/struct.ComponentConfig.html
+++ b/cu29/prelude/config/struct.ComponentConfig.html
@@ -1,4 +1,4 @@
-ComponentConfig in cu29::prelude::config - Rust

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::prelude::config - Rust

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() -> ComponentConfig

Source

pub fn get<T>(&self, key: &str) -> Option<T>
where diff --git a/cu29/prelude/config/struct.CuConfig.html b/cu29/prelude/config/struct.CuConfig.html index 2fc2bc147..3f219c234 100644 --- a/cu29/prelude/config/struct.CuConfig.html +++ b/cu29/prelude/config/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29::prelude::config - Rust

Struct CuConfig

Source
pub struct CuConfig {
+CuConfig in cu29::prelude::config - Rust

Struct CuConfig

Source
pub struct CuConfig {
     pub graph: StableGraph<Node, Cnx>,
     pub monitor: Option<MonitorConfig>,
     pub logging: Option<LoggingConfig>,
diff --git a/cu29/prelude/config/struct.LoggingConfig.html b/cu29/prelude/config/struct.LoggingConfig.html
index 34dce13e1..d07bfe708 100644
--- a/cu29/prelude/config/struct.LoggingConfig.html
+++ b/cu29/prelude/config/struct.LoggingConfig.html
@@ -1,4 +1,4 @@
-LoggingConfig in cu29::prelude::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
+LoggingConfig in cu29::prelude::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
     pub slab_size_mib: Option<u64>,
     pub section_size_mib: Option<u64>,
     pub enable_task_logging: bool,
diff --git a/cu29/prelude/config/struct.MonitorConfig.html b/cu29/prelude/config/struct.MonitorConfig.html
index 97a9adf04..76cfaecf0 100644
--- a/cu29/prelude/config/struct.MonitorConfig.html
+++ b/cu29/prelude/config/struct.MonitorConfig.html
@@ -1,4 +1,4 @@
-MonitorConfig in cu29::prelude::config - Rust

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<(), Error>

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>( +MonitorConfig in cu29::prelude::config - Rust

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<(), Error>

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<MonitorConfig, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

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

impl Serialize for MonitorConfig

Source§

fn serialize<__S>( diff --git a/cu29/prelude/config/struct.Node.html b/cu29/prelude/config/struct.Node.html index 7993788a1..4c2fb0a81 100644 --- a/cu29/prelude/config/struct.Node.html +++ b/cu29/prelude/config/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29::prelude::config - Rust

Struct Node

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

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

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) -> Node

Source

pub fn get_id(&self) -> String

Source

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

Source

pub fn get_type(&self) -> &str

Source

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

Source

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

Source

pub fn set_param<T>(&mut self, key: &str, value: T)
where diff --git a/cu29/prelude/config/struct.Value.html b/cu29/prelude/config/struct.Value.html index bc57e2fa9..e76dae928 100644 --- a/cu29/prelude/config/struct.Value.html +++ b/cu29/prelude/config/struct.Value.html @@ -1,4 +1,4 @@ -Value in cu29::prelude::config - Rust

Struct Value

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

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

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

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<(), Error>

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

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

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<Value, <__D as Deserializer<'de>>::Error>
where diff --git a/cu29/prelude/config/type.NodeId.html b/cu29/prelude/config/type.NodeId.html index 5266133c1..040f14474 100644 --- a/cu29/prelude/config/type.NodeId.html +++ b/cu29/prelude/config/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29::prelude::config - Rust

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::prelude::config - Rust

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/prelude/constant.ANONYMOUS.html b/cu29/prelude/constant.ANONYMOUS.html index 1d3098819..26bf79527 100644 --- a/cu29/prelude/constant.ANONYMOUS.html +++ b/cu29/prelude/constant.ANONYMOUS.html @@ -1 +1 @@ -ANONYMOUS in cu29::prelude - Rust

Constant ANONYMOUS

pub const ANONYMOUS: u32 = 0; // 0u32
\ No newline at end of file +ANONYMOUS in cu29::prelude - Rust

Constant ANONYMOUS

pub const ANONYMOUS: u32 = 0; // 0u32
\ No newline at end of file diff --git a/cu29/prelude/constant.MAX_LOG_PARAMS_ON_STACK.html b/cu29/prelude/constant.MAX_LOG_PARAMS_ON_STACK.html index 159d05d35..75bde68d4 100644 --- a/cu29/prelude/constant.MAX_LOG_PARAMS_ON_STACK.html +++ b/cu29/prelude/constant.MAX_LOG_PARAMS_ON_STACK.html @@ -1 +1 @@ -MAX_LOG_PARAMS_ON_STACK in cu29::prelude - Rust

Constant MAX_LOG_PARAMS_ON_STACK

pub const MAX_LOG_PARAMS_ON_STACK: usize = 10; // 10usize
\ No newline at end of file +MAX_LOG_PARAMS_ON_STACK in cu29::prelude - Rust

Constant MAX_LOG_PARAMS_ON_STACK

pub const MAX_LOG_PARAMS_ON_STACK: usize = 10; // 10usize
\ No newline at end of file diff --git a/cu29/prelude/copperlist/enum.CopperListState.html b/cu29/prelude/copperlist/enum.CopperListState.html index 11d15d1b6..4b4e9eb3a 100644 --- a/cu29/prelude/copperlist/enum.CopperListState.html +++ b/cu29/prelude/copperlist/enum.CopperListState.html @@ -1,4 +1,4 @@ -CopperListState in cu29::prelude::copperlist - Rust

Enum CopperListState

Source
pub enum CopperListState {
+CopperListState in cu29::prelude::copperlist - Rust

Enum CopperListState

Source
pub enum CopperListState {
     Free,
     Initialized,
     Processing,
diff --git a/cu29/prelude/copperlist/index.html b/cu29/prelude/copperlist/index.html
index 79ad9b231..013dd17d3 100644
--- a/cu29/prelude/copperlist/index.html
+++ b/cu29/prelude/copperlist/index.html
@@ -1,4 +1,4 @@
-cu29::prelude::copperlist - Rust

Module copperlist

Source
Expand description

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

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§

CopperLiskMask
Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.
CopperList
CuListsManager
This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. diff --git a/cu29/prelude/copperlist/struct.CopperLiskMask.html b/cu29/prelude/copperlist/struct.CopperLiskMask.html index f386163ff..fb17b6a1c 100644 --- a/cu29/prelude/copperlist/struct.CopperLiskMask.html +++ b/cu29/prelude/copperlist/struct.CopperLiskMask.html @@ -1,4 +1,4 @@ -CopperLiskMask in cu29::prelude::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. +CopperLiskMask in cu29::prelude::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.

Trait Implementations§

Source§

impl<'__de> BorrowDecode<'__de> for CopperLiskMask

Source§

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

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

impl Clone for CopperLiskMask

Source§

fn clone(&self) -> CopperLiskMask

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 CopperLiskMask

Source§

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

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

impl Decode for CopperLiskMask

Source§

fn decode<__D>(decoder: &mut __D) -> Result<CopperLiskMask, DecodeError>
where diff --git a/cu29/prelude/copperlist/struct.CopperList.html b/cu29/prelude/copperlist/struct.CopperList.html index 505d54a96..208fab988 100644 --- a/cu29/prelude/copperlist/struct.CopperList.html +++ b/cu29/prelude/copperlist/struct.CopperList.html @@ -1,4 +1,4 @@ -CopperList in cu29::prelude::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P>
where +CopperList in cu29::prelude::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P>
where P: CopperListTuple,
{ pub id: u32, pub msgs: P, diff --git a/cu29/prelude/copperlist/struct.CuListsManager.html b/cu29/prelude/copperlist/struct.CuListsManager.html index 562fbe9cc..4c6bf6a7d 100644 --- a/cu29/prelude/copperlist/struct.CuListsManager.html +++ b/cu29/prelude/copperlist/struct.CuListsManager.html @@ -1,4 +1,4 @@ -CuListsManager in cu29::prelude::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where +CuListsManager in cu29::prelude::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where P: CopperListTuple,
{ /* private fields */ }
Expand description

This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. P or Payload is typically a Tuple of various types of messages that are exchanged between tasks. N is the maximum number of in flight Copper List the runtime can support.

diff --git a/cu29/prelude/copperlist/type.AscIter.html b/cu29/prelude/copperlist/type.AscIter.html index 877bfc7f0..02bfa8581 100644 --- a/cu29/prelude/copperlist/type.AscIter.html +++ b/cu29/prelude/copperlist/type.AscIter.html @@ -1 +1 @@ -AscIter in cu29::prelude::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file +AscIter in cu29::prelude::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/copperlist/type.AscIterMut.html b/cu29/prelude/copperlist/type.AscIterMut.html index 44d6f980f..2ecb2f9fa 100644 --- a/cu29/prelude/copperlist/type.AscIterMut.html +++ b/cu29/prelude/copperlist/type.AscIterMut.html @@ -1 +1 @@ -AscIterMut in cu29::prelude::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file +AscIterMut in cu29::prelude::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/copperlist/type.Iter.html b/cu29/prelude/copperlist/type.Iter.html index bf00df2d2..c86aec6b2 100644 --- a/cu29/prelude/copperlist/type.Iter.html +++ b/cu29/prelude/copperlist/type.Iter.html @@ -1 +1 @@ -Iter in cu29::prelude::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file +Iter in cu29::prelude::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/copperlist/type.IterMut.html b/cu29/prelude/copperlist/type.IterMut.html index 824f4b021..270487ae9 100644 --- a/cu29/prelude/copperlist/type.IterMut.html +++ b/cu29/prelude/copperlist/type.IterMut.html @@ -1 +1 @@ -IterMut in cu29::prelude::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file +IterMut in cu29::prelude::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/curuntime/enum.CuExecutionUnit.html b/cu29/prelude/curuntime/enum.CuExecutionUnit.html index 6ad0d7f83..4fe53d723 100644 --- a/cu29/prelude/curuntime/enum.CuExecutionUnit.html +++ b/cu29/prelude/curuntime/enum.CuExecutionUnit.html @@ -1,4 +1,4 @@ -CuExecutionUnit in cu29::prelude::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
+CuExecutionUnit in cu29::prelude::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
     Step(CuExecutionStep),
     Loop(CuExecutionLoop),
 }
Expand description

This structure represents a step in the execution plan.

diff --git a/cu29/prelude/curuntime/enum.CuTaskType.html b/cu29/prelude/curuntime/enum.CuTaskType.html index f77a7c168..c0a83cbe0 100644 --- a/cu29/prelude/curuntime/enum.CuTaskType.html +++ b/cu29/prelude/curuntime/enum.CuTaskType.html @@ -1,4 +1,4 @@ -CuTaskType in cu29::prelude::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
+CuTaskType in cu29::prelude::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
     Source,
     Regular,
     Sink,
diff --git a/cu29/prelude/curuntime/fn.compute_runtime_plan.html b/cu29/prelude/curuntime/fn.compute_runtime_plan.html
index bd6994fea..9b7c7a860 100644
--- a/cu29/prelude/curuntime/fn.compute_runtime_plan.html
+++ b/cu29/prelude/curuntime/fn.compute_runtime_plan.html
@@ -1,4 +1,4 @@
-compute_runtime_plan in cu29::prelude::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
+compute_runtime_plan in cu29::prelude::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
     config: &CuConfig,
 ) -> Result<CuExecutionLoop, CuError>
Expand description

This is the main heuristics to compute an execution plan at compilation time. TODO: Make that heuristic pluggable.

diff --git a/cu29/prelude/curuntime/fn.find_task_type_for_id.html b/cu29/prelude/curuntime/fn.find_task_type_for_id.html index 0ed30c0cd..9a3d91217 100644 --- a/cu29/prelude/curuntime/fn.find_task_type_for_id.html +++ b/cu29/prelude/curuntime/fn.find_task_type_for_id.html @@ -1,4 +1,4 @@ -find_task_type_for_id in cu29::prelude::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
+find_task_type_for_id in cu29::prelude::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
     graph: &StableGraph<Node, Cnx>,
     node_id: u32,
 ) -> CuTaskType
\ No newline at end of file diff --git a/cu29/prelude/curuntime/index.html b/cu29/prelude/curuntime/index.html index 638c0e8db..023e4292a 100644 --- a/cu29/prelude/curuntime/index.html +++ b/cu29/prelude/curuntime/index.html @@ -1,4 +1,4 @@ -cu29::prelude::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. +cu29::prelude::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. It is exposed to the user via the copper_runtime macro injecting it as a field in their application struct.

Structs§

CopperContext
Just a simple struct to hold the various bits needed to run a Copper application.
CuExecutionLoop
This structure represents a loop in the execution plan. It is used to represent a sequence of Execution units (loop or steps) that are executed diff --git a/cu29/prelude/curuntime/struct.CopperContext.html b/cu29/prelude/curuntime/struct.CopperContext.html index ff7278a9b..57e7bfd99 100644 --- a/cu29/prelude/curuntime/struct.CopperContext.html +++ b/cu29/prelude/curuntime/struct.CopperContext.html @@ -1,4 +1,4 @@ -CopperContext in cu29::prelude::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
+CopperContext in cu29::prelude::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
     pub unified_logger: Arc<Mutex<UnifiedLoggerWrite>>,
     pub logger_runtime: LoggerRuntime,
     pub clock: RobotClock,
diff --git a/cu29/prelude/curuntime/struct.CuExecutionLoop.html b/cu29/prelude/curuntime/struct.CuExecutionLoop.html
index 2c3b2b708..a53a6b8d4 100644
--- a/cu29/prelude/curuntime/struct.CuExecutionLoop.html
+++ b/cu29/prelude/curuntime/struct.CuExecutionLoop.html
@@ -1,4 +1,4 @@
-CuExecutionLoop in cu29::prelude::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
+CuExecutionLoop in cu29::prelude::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
     pub steps: Vec<CuExecutionUnit>,
     pub loop_count: Option<u32>,
 }
Expand description

This structure represents a loop in the execution plan. diff --git a/cu29/prelude/curuntime/struct.CuExecutionStep.html b/cu29/prelude/curuntime/struct.CuExecutionStep.html index 980f2f18b..0021bbb28 100644 --- a/cu29/prelude/curuntime/struct.CuExecutionStep.html +++ b/cu29/prelude/curuntime/struct.CuExecutionStep.html @@ -1,4 +1,4 @@ -CuExecutionStep in cu29::prelude::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
+CuExecutionStep in cu29::prelude::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
     pub node_id: u32,
     pub node: Node,
     pub task_type: CuTaskType,
diff --git a/cu29/prelude/curuntime/struct.CuRuntime.html b/cu29/prelude/curuntime/struct.CuRuntime.html
index 5fb2064bb..e6e8ec128 100644
--- a/cu29/prelude/curuntime/struct.CuRuntime.html
+++ b/cu29/prelude/curuntime/struct.CuRuntime.html
@@ -1,4 +1,4 @@
-CuRuntime in cu29::prelude::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>
where +CuRuntime in cu29::prelude::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>{
     pub tasks: CT,
diff --git a/cu29/prelude/cutask/index.html b/cu29/prelude/cutask/index.html
index 1752cd81a..7da8aa22c 100644
--- a/cu29/prelude/cutask/index.html
+++ b/cu29/prelude/cutask/index.html
@@ -1,4 +1,4 @@
-cu29::prelude::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement +cu29::prelude::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement or interact with to create a Copper task.

Structs§

CuCompactString
CuMsg
CuMsg is the envelope holding the msg payload and the metadata between tasks.
CuMsgMetadata
CuMsgMetadata is a structure that contains metadata common to all CuMsgs.

Traits§

CuMsgPack
CuMsgPayload
CuSinkTask
A Sink Task is a task that only consumes messages. For example drivers for actuators are Sink Tasks.
CuSrcTask
A Src Task is a task that only produces messages. For example drivers for sensors are Src Tasks. They are in push mode from the runtime. diff --git a/cu29/prelude/cutask/struct.CuCompactString.html b/cu29/prelude/cutask/struct.CuCompactString.html index 74ccd6804..78c15c852 100644 --- a/cu29/prelude/cutask/struct.CuCompactString.html +++ b/cu29/prelude/cutask/struct.CuCompactString.html @@ -1,4 +1,4 @@ -CuCompactString in cu29::prelude::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where +CuCompactString in cu29::prelude::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: BorrowDecoder<'de>,

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

impl Clone for CuCompactString

Source§

fn clone(&self) -> CuCompactString

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 CuCompactString

Source§

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

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

impl Decode for CuCompactString

Source§

fn decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: Decoder,

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

impl Default for CuCompactString

Source§

fn default() -> CuCompactString

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

impl<'de> Deserialize<'de> for CuCompactString

Source§

fn deserialize<__D>( __deserializer: __D, diff --git a/cu29/prelude/cutask/struct.CuMsg.html b/cu29/prelude/cutask/struct.CuMsg.html index 40ee508d5..2dd9a01d4 100644 --- a/cu29/prelude/cutask/struct.CuMsg.html +++ b/cu29/prelude/cutask/struct.CuMsg.html @@ -1,4 +1,4 @@ -CuMsg in cu29::prelude::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where +CuMsg in cu29::prelude::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where T: CuMsgPayload,
{ pub metadata: CuMsgMetadata, /* private fields */ diff --git a/cu29/prelude/cutask/struct.CuMsgMetadata.html b/cu29/prelude/cutask/struct.CuMsgMetadata.html index de68c621e..b26db5284 100644 --- a/cu29/prelude/cutask/struct.CuMsgMetadata.html +++ b/cu29/prelude/cutask/struct.CuMsgMetadata.html @@ -1,4 +1,4 @@ -CuMsgMetadata in cu29::prelude::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
+CuMsgMetadata in cu29::prelude::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
     pub process_time: PartialCuTimeRange,
     pub tov: Tov,
     pub status_txt: CuCompactString,
diff --git a/cu29/prelude/cutask/trait.CuMsgPack.html b/cu29/prelude/cutask/trait.CuMsgPack.html
index a30bda456..5b002916f 100644
--- a/cu29/prelude/cutask/trait.CuMsgPack.html
+++ b/cu29/prelude/cutask/trait.CuMsgPack.html
@@ -1,4 +1,4 @@
-CuMsgPack in cu29::prelude::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where +CuMsgPack in cu29::prelude::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl,

Source§

impl<'cl, T1, T2, T3> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>)
where T1: CuMsgPayload + 'cl, diff --git a/cu29/prelude/cutask/trait.CuMsgPayload.html b/cu29/prelude/cutask/trait.CuMsgPayload.html index 42462b1b4..bef13276b 100644 --- a/cu29/prelude/cutask/trait.CuMsgPayload.html +++ b/cu29/prelude/cutask/trait.CuMsgPayload.html @@ -1,4 +1,4 @@ -CuMsgPayload in cu29::prelude::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
+CuMsgPayload in cu29::prelude::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
     Sized
     + Default
     + Debug
diff --git a/cu29/prelude/cutask/trait.CuSinkTask.html b/cu29/prelude/cutask/trait.CuSinkTask.html
index f31bd95bb..be1c39b05 100644
--- a/cu29/prelude/cutask/trait.CuSinkTask.html
+++ b/cu29/prelude/cutask/trait.CuSinkTask.html
@@ -1,4 +1,4 @@
-CuSinkTask in cu29::prelude::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
+CuSinkTask in cu29::prelude::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/prelude/cutask/trait.CuSrcTask.html b/cu29/prelude/cutask/trait.CuSrcTask.html
index c93dd9e50..eebfe5b4f 100644
--- a/cu29/prelude/cutask/trait.CuSrcTask.html
+++ b/cu29/prelude/cutask/trait.CuSrcTask.html
@@ -1,4 +1,4 @@
-CuSrcTask in cu29::prelude::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
+CuSrcTask in cu29::prelude::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
     type Output: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/prelude/cutask/trait.CuTask.html b/cu29/prelude/cutask/trait.CuTask.html
index 7d7c4031c..1c625e777 100644
--- a/cu29/prelude/cutask/trait.CuTask.html
+++ b/cu29/prelude/cutask/trait.CuTask.html
@@ -1,4 +1,4 @@
-CuTask in cu29::prelude::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
+CuTask in cu29::prelude::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
     type Output: CuMsgPack<'cl>;
 
diff --git a/cu29/prelude/cutask/trait.Freezable.html b/cu29/prelude/cutask/trait.Freezable.html
index d1ebde6ce..b3e93187d 100644
--- a/cu29/prelude/cutask/trait.Freezable.html
+++ b/cu29/prelude/cutask/trait.Freezable.html
@@ -1,4 +1,4 @@
-Freezable in cu29::prelude::cutask - Rust

Trait Freezable

Source
pub trait Freezable {
+Freezable in cu29::prelude::cutask - Rust

Trait Freezable

Source
pub trait Freezable {
     // Provided methods
     fn freeze<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
        where E: Encoder { ... }
diff --git a/cu29/prelude/enum.AllocatedSection.html b/cu29/prelude/enum.AllocatedSection.html
index 53b4f1913..06d6f4d41 100644
--- a/cu29/prelude/enum.AllocatedSection.html
+++ b/cu29/prelude/enum.AllocatedSection.html
@@ -1,4 +1,4 @@
-AllocatedSection in cu29::prelude - Rust

Enum AllocatedSection

pub enum AllocatedSection {
+AllocatedSection in cu29::prelude - Rust

Enum AllocatedSection

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/prelude/enum.CopperListState.html b/cu29/prelude/enum.CopperListState.html index c9eb6035e..0675361d9 100644 --- a/cu29/prelude/enum.CopperListState.html +++ b/cu29/prelude/enum.CopperListState.html @@ -1,4 +1,4 @@ -CopperListState in cu29::prelude - Rust

Enum CopperListState

Source
pub enum CopperListState {
+CopperListState in cu29::prelude - Rust

Enum CopperListState

Source
pub enum CopperListState {
     Free,
     Initialized,
     Processing,
diff --git a/cu29/prelude/enum.CuExecutionUnit.html b/cu29/prelude/enum.CuExecutionUnit.html
index d7560365b..d7528569a 100644
--- a/cu29/prelude/enum.CuExecutionUnit.html
+++ b/cu29/prelude/enum.CuExecutionUnit.html
@@ -1,4 +1,4 @@
-CuExecutionUnit in cu29::prelude - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
+CuExecutionUnit in cu29::prelude - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
     Step(CuExecutionStep),
     Loop(CuExecutionLoop),
 }
Expand description

This structure represents a step in the execution plan.

diff --git a/cu29/prelude/enum.CuHandleInner.html b/cu29/prelude/enum.CuHandleInner.html index 9edf5852b..8371fe112 100644 --- a/cu29/prelude/enum.CuHandleInner.html +++ b/cu29/prelude/enum.CuHandleInner.html @@ -1,4 +1,4 @@ -CuHandleInner in cu29::prelude - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T>
where +CuHandleInner in cu29::prelude - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T>
where T: Debug,
{ Pooled(ReusableOwned<T>), Detached(T), diff --git a/cu29/prelude/enum.CuTaskCallbackState.html b/cu29/prelude/enum.CuTaskCallbackState.html index eacaa6cd3..ae8b97537 100644 --- a/cu29/prelude/enum.CuTaskCallbackState.html +++ b/cu29/prelude/enum.CuTaskCallbackState.html @@ -1,4 +1,4 @@ -CuTaskCallbackState in cu29::prelude - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where +CuTaskCallbackState in cu29::prelude - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where I: CuMsgPack<'cl>, O: CuMsgPack<'cl>,
{ New(Option<ComponentConfig>), diff --git a/cu29/prelude/enum.CuTaskState.html b/cu29/prelude/enum.CuTaskState.html index 0ed8087a5..db9e07e38 100644 --- a/cu29/prelude/enum.CuTaskState.html +++ b/cu29/prelude/enum.CuTaskState.html @@ -1,4 +1,4 @@ -CuTaskState in cu29::prelude - Rust

Enum CuTaskState

Source
pub enum CuTaskState {
+CuTaskState in cu29::prelude - Rust

Enum CuTaskState

Source
pub enum CuTaskState {
     Start,
     Preprocess,
     Process,
diff --git a/cu29/prelude/enum.CuTaskType.html b/cu29/prelude/enum.CuTaskType.html
index a04dabceb..c88e4af5a 100644
--- a/cu29/prelude/enum.CuTaskType.html
+++ b/cu29/prelude/enum.CuTaskType.html
@@ -1,4 +1,4 @@
-CuTaskType in cu29::prelude - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
+CuTaskType in cu29::prelude - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
     Source,
     Regular,
     Sink,
diff --git a/cu29/prelude/enum.Decision.html b/cu29/prelude/enum.Decision.html
index db96c1bde..e583a2d55 100644
--- a/cu29/prelude/enum.Decision.html
+++ b/cu29/prelude/enum.Decision.html
@@ -1,4 +1,4 @@
-Decision in cu29::prelude - Rust

Enum Decision

Source
pub enum Decision {
+Decision in cu29::prelude - Rust

Enum Decision

Source
pub enum Decision {
     Abort,
     Ignore,
     Shutdown,
diff --git a/cu29/prelude/enum.SimOverride.html b/cu29/prelude/enum.SimOverride.html
index 591a94375..d6795734e 100644
--- a/cu29/prelude/enum.SimOverride.html
+++ b/cu29/prelude/enum.SimOverride.html
@@ -1,4 +1,4 @@
-SimOverride in cu29::prelude - Rust

Enum SimOverride

Source
pub enum SimOverride {
+SimOverride in cu29::prelude - Rust

Enum SimOverride

Source
pub enum SimOverride {
     ExecutedBySim,
     ExecuteByRuntime,
     Errored(String),
diff --git a/cu29/prelude/enum.Tov.html b/cu29/prelude/enum.Tov.html
index 8a7e17ebd..aa80231ed 100644
--- a/cu29/prelude/enum.Tov.html
+++ b/cu29/prelude/enum.Tov.html
@@ -1,4 +1,4 @@
-Tov in cu29::prelude - Rust

Enum Tov

pub enum Tov {
+Tov in cu29::prelude - Rust

Enum Tov

pub enum Tov {
     None,
     Time(CuDuration),
     Range(CuTimeRange),
diff --git a/cu29/prelude/enum.UnifiedLogType.html b/cu29/prelude/enum.UnifiedLogType.html
index 6c6cb7ea7..67dad34bf 100644
--- a/cu29/prelude/enum.UnifiedLogType.html
+++ b/cu29/prelude/enum.UnifiedLogType.html
@@ -1,4 +1,4 @@
-UnifiedLogType in cu29::prelude - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
+UnifiedLogType in cu29::prelude - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
     Empty,
     StructuredLogLine,
     CopperList,
diff --git a/cu29/prelude/enum.UnifiedLogger.html b/cu29/prelude/enum.UnifiedLogger.html
index 176b47df6..eff7a1aa5 100644
--- a/cu29/prelude/enum.UnifiedLogger.html
+++ b/cu29/prelude/enum.UnifiedLogger.html
@@ -1,4 +1,4 @@
-UnifiedLogger in cu29::prelude - Rust

Enum UnifiedLogger

pub enum UnifiedLogger {
+UnifiedLogger in cu29::prelude - Rust

Enum UnifiedLogger

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

Holder of the read or write side of the datalogger.

diff --git a/cu29/prelude/enum.Value.html b/cu29/prelude/enum.Value.html index f496c7023..f0ffd5bf5 100644 --- a/cu29/prelude/enum.Value.html +++ b/cu29/prelude/enum.Value.html @@ -1,4 +1,4 @@ -Value in cu29::prelude - Rust

Enum Value

Source
pub enum Value {
+Value in cu29::prelude - Rust

Enum Value

Source
pub enum Value {
 
Show 20 variants Bool(bool), U8(u8), U16(u16), diff --git a/cu29/prelude/fn.compute_runtime_plan.html b/cu29/prelude/fn.compute_runtime_plan.html index 81c5f7a90..ab00996a6 100644 --- a/cu29/prelude/fn.compute_runtime_plan.html +++ b/cu29/prelude/fn.compute_runtime_plan.html @@ -1,4 +1,4 @@ -compute_runtime_plan in cu29::prelude - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
+compute_runtime_plan in cu29::prelude - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(
     config: &CuConfig,
 ) -> Result<CuExecutionLoop, CuError>
Expand description

This is the main heuristics to compute an execution plan at compilation time. TODO: Make that heuristic pluggable.

diff --git a/cu29/prelude/fn.default_log_index_dir.html b/cu29/prelude/fn.default_log_index_dir.html index 86db7ada8..b1524d807 100644 --- a/cu29/prelude/fn.default_log_index_dir.html +++ b/cu29/prelude/fn.default_log_index_dir.html @@ -1,2 +1,2 @@ -default_log_index_dir in cu29::prelude - Rust

Function default_log_index_dir

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::prelude - Rust

Function default_log_index_dir

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/prelude/fn.find_task_type_for_id.html b/cu29/prelude/fn.find_task_type_for_id.html index 4658e5378..4fb451316 100644 --- a/cu29/prelude/fn.find_task_type_for_id.html +++ b/cu29/prelude/fn.find_task_type_for_id.html @@ -1,4 +1,4 @@ -find_task_type_for_id in cu29::prelude - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
+find_task_type_for_id in cu29::prelude - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
     graph: &StableGraph<Node, Cnx>,
     node_id: u32,
 ) -> CuTaskType
\ No newline at end of file diff --git a/cu29/prelude/fn.format_logline.html b/cu29/prelude/fn.format_logline.html index e4924d30c..409e277e8 100644 --- a/cu29/prelude/fn.format_logline.html +++ b/cu29/prelude/fn.format_logline.html @@ -1,4 +1,4 @@ -format_logline in cu29::prelude - Rust

Function format_logline

pub fn format_logline(
+format_logline in cu29::prelude - Rust

Function format_logline

pub fn format_logline(
     time: CuDuration,
     format_str: &str,
     params: &[String],
diff --git a/cu29/prelude/fn.log.html b/cu29/prelude/fn.log.html
index 39978119a..c155c889c 100644
--- a/cu29/prelude/fn.log.html
+++ b/cu29/prelude/fn.log.html
@@ -1,3 +1,3 @@
-log in cu29::prelude - Rust

Function log

pub fn log(entry: &mut CuLogEntry) -> Result<(), CuError>
Expand description

Function called from generated code to log data. +log in cu29::prelude - Rust

Function log

pub fn log(entry: &mut CuLogEntry) -> Result<(), CuError>
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/prelude/fn.log_debug_mode.html b/cu29/prelude/fn.log_debug_mode.html index 414433c78..04ca370d3 100644 --- a/cu29/prelude/fn.log_debug_mode.html +++ b/cu29/prelude/fn.log_debug_mode.html @@ -1,4 +1,4 @@ -log_debug_mode in cu29::prelude - Rust

Function log_debug_mode

pub fn log_debug_mode(
+log_debug_mode in cu29::prelude - Rust

Function log_debug_mode

pub fn log_debug_mode(
     entry: &mut CuLogEntry,
     format_str: &str,
     param_names: &[&str],
diff --git a/cu29/prelude/fn.pools_statistics.html b/cu29/prelude/fn.pools_statistics.html
index 005f21bfb..7ff686230 100644
--- a/cu29/prelude/fn.pools_statistics.html
+++ b/cu29/prelude/fn.pools_statistics.html
@@ -1,3 +1,3 @@
-pools_statistics in cu29::prelude - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. +pools_statistics in cu29::prelude - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. We use SmallVec here to avoid heap allocations while the stack is running.

\ No newline at end of file diff --git a/cu29/prelude/fn.read_configuration.html b/cu29/prelude/fn.read_configuration.html index 09c906eff..a34b82fcf 100644 --- a/cu29/prelude/fn.read_configuration.html +++ b/cu29/prelude/fn.read_configuration.html @@ -1,2 +1,2 @@ -read_configuration in cu29::prelude - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

+read_configuration in cu29::prelude - Rust

Function read_configuration

Source
pub fn read_configuration(config_filename: &str) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a file.

\ No newline at end of file diff --git a/cu29/prelude/fn.read_configuration_str.html b/cu29/prelude/fn.read_configuration_str.html index d9fa91c43..ae16fedfa 100644 --- a/cu29/prelude/fn.read_configuration_str.html +++ b/cu29/prelude/fn.read_configuration_str.html @@ -1,4 +1,4 @@ -read_configuration_str in cu29::prelude - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
+read_configuration_str in cu29::prelude - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(
     config_content: String,
 ) -> Result<CuConfig, CuError>
Expand description

Read a copper configuration from a String.

\ No newline at end of file diff --git a/cu29/prelude/fn.read_interned_strings.html b/cu29/prelude/fn.read_interned_strings.html index 16c618d52..2cdbf1e30 100644 --- a/cu29/prelude/fn.read_interned_strings.html +++ b/cu29/prelude/fn.read_interned_strings.html @@ -1,2 +1,2 @@ -read_interned_strings in cu29::prelude - Rust

Function read_interned_strings

Source
pub fn read_interned_strings(index: &Path) -> Result<Vec<String>, CuError>
Expand description

Rebuild the interned string index in memory.

+read_interned_strings in cu29::prelude - Rust

Function read_interned_strings

pub fn read_interned_strings(index: &Path) -> Result<Vec<String>, CuError>
Expand description

Rebuild the interned string index in memory.

\ No newline at end of file diff --git a/cu29/prelude/fn.rebuild_logline.html b/cu29/prelude/fn.rebuild_logline.html index f003c28de..179028cfd 100644 --- a/cu29/prelude/fn.rebuild_logline.html +++ b/cu29/prelude/fn.rebuild_logline.html @@ -1,4 +1,4 @@ -rebuild_logline in cu29::prelude - Rust

Function rebuild_logline

pub fn rebuild_logline(
+rebuild_logline in cu29::prelude - Rust

Function rebuild_logline

pub fn rebuild_logline(
     all_interned_strings: &[String],
     entry: &CuLogEntry,
 ) -> Result<String, CuError>
Expand description

Rebuild a log line from the interned strings and the CuLogEntry. diff --git a/cu29/prelude/fn.stream_write.html b/cu29/prelude/fn.stream_write.html index 20887d470..909a1830d 100644 --- a/cu29/prelude/fn.stream_write.html +++ b/cu29/prelude/fn.stream_write.html @@ -1,4 +1,4 @@ -stream_write in cu29::prelude - Rust

Function stream_write

pub fn stream_write<E>(
+stream_write in cu29::prelude - Rust

Function stream_write

pub fn stream_write<E>(
     logger: Arc<Mutex<UnifiedLoggerWrite>>,
     entry_type: UnifiedLogType,
     minimum_allocation_amount: usize,
diff --git a/cu29/prelude/fn.to_value.html b/cu29/prelude/fn.to_value.html
index 1922dfda9..6146b5b6e 100644
--- a/cu29/prelude/fn.to_value.html
+++ b/cu29/prelude/fn.to_value.html
@@ -1,2 +1,2 @@
-to_value in cu29::prelude - Rust

Function to_value

Source
pub fn to_value<T>(value: T) -> Result<Value, SerializerError>
where +to_value in cu29::prelude - Rust

Function to_value

Source
pub fn to_value<T>(value: T) -> Result<Value, SerializerError>
where T: Serialize,
\ No newline at end of file diff --git a/cu29/prelude/index.html b/cu29/prelude/index.html index 94ba9ef20..10e5ca86a 100644 --- a/cu29/prelude/index.html +++ b/cu29/prelude/index.html @@ -1,4 +1,4 @@ -cu29::prelude - Rust

Module prelude

Source

Modules§

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

Module prelude

Source

Modules§

config
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.
copperlist
CopperList is the main data structure used by Copper to communicate between tasks. diff --git a/cu29/prelude/macro.debug.html b/cu29/prelude/macro.debug.html index e19cf40a9..b567530e6 100644 --- a/cu29/prelude/macro.debug.html +++ b/cu29/prelude/macro.debug.html @@ -1,4 +1,4 @@ -debug in cu29::prelude - Rust

Macro debug

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

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

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/prelude/macro.gen_cumsgs.html b/cu29/prelude/macro.gen_cumsgs.html index ebce25337..71b070f32 100644 --- a/cu29/prelude/macro.gen_cumsgs.html +++ b/cu29/prelude/macro.gen_cumsgs.html @@ -1,4 +1,4 @@ -gen_cumsgs in cu29::prelude - Rust

Macro gen_cumsgs

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

Generates the CopperList content type from a config. +gen_cumsgs in cu29::prelude - Rust

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/prelude/macro.input_msg.html b/cu29/prelude/macro.input_msg.html index 43da1059a..88dde9965 100644 --- a/cu29/prelude/macro.input_msg.html +++ b/cu29/prelude/macro.input_msg.html @@ -1,4 +1,4 @@ -input_msg in cu29::prelude - Rust

Macro input_msg

Source
macro_rules! input_msg {
+input_msg in cu29::prelude - Rust

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/prelude/macro.output_msg.html b/cu29/prelude/macro.output_msg.html index 7772ff603..f3e783395 100644 --- a/cu29/prelude/macro.output_msg.html +++ b/cu29/prelude/macro.output_msg.html @@ -1,3 +1,3 @@ -output_msg in cu29::prelude - Rust

Macro output_msg

Source
macro_rules! output_msg {
+output_msg in cu29::prelude - Rust

Macro output_msg

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

Enum CuTaskState

Source
pub enum CuTaskState {
+CuTaskState in cu29::prelude::monitoring - Rust

Enum CuTaskState

Source
pub enum CuTaskState {
     Start,
     Preprocess,
     Process,
diff --git a/cu29/prelude/monitoring/enum.Decision.html b/cu29/prelude/monitoring/enum.Decision.html
index e87b0a2cc..92a36286d 100644
--- a/cu29/prelude/monitoring/enum.Decision.html
+++ b/cu29/prelude/monitoring/enum.Decision.html
@@ -1,4 +1,4 @@
-Decision in cu29::prelude::monitoring - Rust

Enum Decision

Source
pub enum Decision {
+Decision in cu29::prelude::monitoring - Rust

Enum Decision

Source
pub enum Decision {
     Abort,
     Ignore,
     Shutdown,
diff --git a/cu29/prelude/monitoring/index.html b/cu29/prelude/monitoring/index.html
index 09292d413..207f1a1ed 100644
--- a/cu29/prelude/monitoring/index.html
+++ b/cu29/prelude/monitoring/index.html
@@ -1,4 +1,4 @@
-cu29::prelude::monitoring - Rust

Module monitoring

Source
Expand description

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

+cu29::prelude::monitoring - Rust

Module monitoring

Source
Expand description

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

Structs§

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

Enums§

CuTaskState
The state of a task.
Decision
Monitor decision to be taken when a task errored out.

Statics§

GLOBAL

Traits§

CuMonitor
Trait to implement a monitoring task.
\ No newline at end of file diff --git a/cu29/prelude/monitoring/static.GLOBAL.html b/cu29/prelude/monitoring/static.GLOBAL.html index 266b2fa25..06c414bc2 100644 --- a/cu29/prelude/monitoring/static.GLOBAL.html +++ b/cu29/prelude/monitoring/static.GLOBAL.html @@ -1 +1 @@ -GLOBAL in cu29::prelude::monitoring - Rust

Static GLOBAL

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

Static GLOBAL

Source
pub static GLOBAL: CountingAllocator
\ No newline at end of file diff --git a/cu29/prelude/monitoring/struct.CountingAllocator.html b/cu29/prelude/monitoring/struct.CountingAllocator.html index 9c578a724..f099e0d5f 100644 --- a/cu29/prelude/monitoring/struct.CountingAllocator.html +++ b/cu29/prelude/monitoring/struct.CountingAllocator.html @@ -1,4 +1,4 @@ -CountingAllocator in cu29::prelude::monitoring - Rust

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::prelude::monitoring - Rust

Struct CountingAllocator

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

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

Implementations§

Trait Implementations§

Source§

impl Default for CountingAllocator

Source§

fn default() -> CountingAllocator

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/prelude/monitoring/struct.CuDurationStatistics.html b/cu29/prelude/monitoring/struct.CuDurationStatistics.html index 0d64c5936..f1b05bd6d 100644 --- a/cu29/prelude/monitoring/struct.CuDurationStatistics.html +++ b/cu29/prelude/monitoring/struct.CuDurationStatistics.html @@ -1,4 +1,4 @@ -CuDurationStatistics in cu29::prelude::monitoring - Rust

Struct CuDurationStatistics

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

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

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) -> CuDurationStatistics

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 is_empty(&self) -> bool

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<(), Error>

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/prelude/monitoring/struct.LiveStatistics.html b/cu29/prelude/monitoring/struct.LiveStatistics.html index c010bf446..b768596b9 100644 --- a/cu29/prelude/monitoring/struct.LiveStatistics.html +++ b/cu29/prelude/monitoring/struct.LiveStatistics.html @@ -1,4 +1,4 @@ -LiveStatistics in cu29::prelude::monitoring - Rust

Struct LiveStatistics

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

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

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

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() -> LiveStatistics

Source

pub fn new_with_max(max: u64) -> LiveStatistics

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 is_empty(&self) -> bool

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<(), Error>

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/prelude/monitoring/struct.NoMonitor.html b/cu29/prelude/monitoring/struct.NoMonitor.html index 5aa45cc03..0db6f6499 100644 --- a/cu29/prelude/monitoring/struct.NoMonitor.html +++ b/cu29/prelude/monitoring/struct.NoMonitor.html @@ -1,4 +1,4 @@ -NoMonitor in cu29::prelude::monitoring - Rust

Struct NoMonitor

Source
pub struct NoMonitor {}
Expand description

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

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: &CuConfig, diff --git a/cu29/prelude/monitoring/struct.ScopedAllocCounter.html b/cu29/prelude/monitoring/struct.ScopedAllocCounter.html index 6895b9940..e9703cf53 100644 --- a/cu29/prelude/monitoring/struct.ScopedAllocCounter.html +++ b/cu29/prelude/monitoring/struct.ScopedAllocCounter.html @@ -1,4 +1,4 @@ -ScopedAllocCounter in cu29::prelude::monitoring - Rust

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::prelude::monitoring - Rust

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§

Source§

impl ScopedAllocCounter

Source

pub fn new() -> ScopedAllocCounter

Source

pub fn get_allocated(&self) -> usize

Returns the total number of bytes allocated in the current scope since the creation of this ScopedAllocCounter.

§Example
diff --git a/cu29/prelude/monitoring/trait.CuMonitor.html b/cu29/prelude/monitoring/trait.CuMonitor.html index 5739b0ea3..def165c6a 100644 --- a/cu29/prelude/monitoring/trait.CuMonitor.html +++ b/cu29/prelude/monitoring/trait.CuMonitor.html @@ -1,4 +1,4 @@ -CuMonitor in cu29::prelude::monitoring - Rust

Trait CuMonitor

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

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
     // Required methods
     fn new(
         config: &CuConfig,
diff --git a/cu29/prelude/payload/index.html b/cu29/prelude/payload/index.html
index 2a7e691ec..c105e745c 100644
--- a/cu29/prelude/payload/index.html
+++ b/cu29/prelude/payload/index.html
@@ -1 +1 @@
-cu29::prelude::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file +cu29::prelude::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file diff --git a/cu29/prelude/payload/struct.CuArray.html b/cu29/prelude/payload/struct.CuArray.html index 07d0a8a37..a8d4d18b3 100644 --- a/cu29/prelude/payload/struct.CuArray.html +++ b/cu29/prelude/payload/struct.CuArray.html @@ -1,4 +1,4 @@ -CuArray in cu29::prelude::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

+CuArray in cu29::prelude::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

Implementations§

Source§

impl<T, const N: usize> CuArray<T, N>

Source

pub fn new() -> CuArray<T, N>

Source

pub fn fill_from_iter<I>(&mut self, iter: I)
where I: IntoIterator<Item = T>,

Source

pub fn len(&self) -> usize

Source

pub fn is_empty(&self) -> bool

Source

pub fn as_slice(&self) -> &[T]

Source

pub fn capacity(&self) -> usize

Trait Implementations§

Source§

impl<T, const N: usize> Clone for CuArray<T, N>
where T: Clone,

Source§

fn clone(&self) -> CuArray<T, N>

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<T, const N: usize> Debug for CuArray<T, N>
where diff --git a/cu29/prelude/pool/enum.CuHandleInner.html b/cu29/prelude/pool/enum.CuHandleInner.html index 1619d4342..4e7138bbb 100644 --- a/cu29/prelude/pool/enum.CuHandleInner.html +++ b/cu29/prelude/pool/enum.CuHandleInner.html @@ -1,4 +1,4 @@ -CuHandleInner in cu29::prelude::pool - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T>
where +CuHandleInner in cu29::prelude::pool - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T>
where T: Debug,
{ Pooled(ReusableOwned<T>), Detached(T), diff --git a/cu29/prelude/pool/fn.pools_statistics.html b/cu29/prelude/pool/fn.pools_statistics.html index 962cab73b..bccf85e2d 100644 --- a/cu29/prelude/pool/fn.pools_statistics.html +++ b/cu29/prelude/pool/fn.pools_statistics.html @@ -1,3 +1,3 @@ -pools_statistics in cu29::prelude::pool - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. +pools_statistics in cu29::prelude::pool - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. We use SmallVec here to avoid heap allocations while the stack is running.

\ No newline at end of file diff --git a/cu29/prelude/pool/index.html b/cu29/prelude/pool/index.html index f48c559ce..55f329ced 100644 --- a/cu29/prelude/pool/index.html +++ b/cu29/prelude/pool/index.html @@ -1,4 +1,4 @@ -cu29::prelude::pool - Rust

Module pool

Source

Structs§

AlignedBuffer
A buffer that is aligned to a specific size with the Element of type E.
CuHandle
A shareable handle to an Array coming from a pool (either host or device).
CuHostMemoryPool
A pool of host memory buffers.

Enums§

CuHandleInner
A Handle to a Buffer. +cu29::prelude::pool - Rust

Module pool

Source

Structs§

AlignedBuffer
A buffer that is aligned to a specific size with the Element of type E.
CuHandle
A shareable handle to an Array coming from a pool (either host or device).
CuHostMemoryPool
A pool of host memory buffers.

Enums§

CuHandleInner
A Handle to a Buffer. For onboard usages, the buffer should be Pooled (ie, coming from a preallocated pool). The Detached version is for offline usages where we don’t really need a pool to deserialize them.

Traits§

ArrayLike
CuPool
A CuPool is a pool of buffers that can be shared between different parts of the code. Handles can be stored locally in the tasks and shared between them.
DeviceCuPool
A device memory pool can copy data from a device to a host memory pool on top.
ElementType
Basic Type that can be used in a buffer in a CuPool.
PoolMonitor
Trait for a Pool to exposed to be monitored by the monitoring API.

Functions§

pools_statistics
Get the list of pools and their statistics. diff --git a/cu29/prelude/pool/struct.AlignedBuffer.html b/cu29/prelude/pool/struct.AlignedBuffer.html index 0c7efef37..4f6d5312a 100644 --- a/cu29/prelude/pool/struct.AlignedBuffer.html +++ b/cu29/prelude/pool/struct.AlignedBuffer.html @@ -1,4 +1,4 @@ -AlignedBuffer in cu29::prelude::pool - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E>
where +AlignedBuffer in cu29::prelude::pool - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E>
where E: ElementType,
{ /* private fields */ }
Expand description

A buffer that is aligned to a specific size with the Element of type E.

Implementations§

Source§

impl<E> AlignedBuffer<E>
where E: ElementType,

Source

pub fn new(num_elements: usize, alignment: usize) -> AlignedBuffer<E>

Methods from Deref<Target = [E]>§

Source

pub fn write_copy_of_slice(&mut self, src: &[T]) -> &mut [T]
where diff --git a/cu29/prelude/pool/struct.CuHandle.html b/cu29/prelude/pool/struct.CuHandle.html index 9a25071ea..593b6711c 100644 --- a/cu29/prelude/pool/struct.CuHandle.html +++ b/cu29/prelude/pool/struct.CuHandle.html @@ -1,4 +1,4 @@ -CuHandle in cu29::prelude::pool - Rust

Struct CuHandle

Source
pub struct CuHandle<T>(/* private fields */)
+CuHandle in cu29::prelude::pool - Rust

Struct CuHandle

Source
pub struct CuHandle<T>(/* private fields */)
 where
     T: ArrayLike;
Expand description

A shareable handle to an Array coming from a pool (either host or device).

Implementations§

Source§

impl<T> CuHandle<T>
where diff --git a/cu29/prelude/pool/struct.CuHostMemoryPool.html b/cu29/prelude/pool/struct.CuHostMemoryPool.html index d182f4e9b..4cfd302fb 100644 --- a/cu29/prelude/pool/struct.CuHostMemoryPool.html +++ b/cu29/prelude/pool/struct.CuHostMemoryPool.html @@ -1,4 +1,4 @@ -CuHostMemoryPool in cu29::prelude::pool - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

+CuHostMemoryPool in cu29::prelude::pool - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

Implementations§

Source§

impl<T> CuHostMemoryPool<T>
where T: ArrayLike + 'static,

Source

pub fn new<F>( id: &str, diff --git a/cu29/prelude/pool/trait.ArrayLike.html b/cu29/prelude/pool/trait.ArrayLike.html index 1b7b85480..09dfbb53e 100644 --- a/cu29/prelude/pool/trait.ArrayLike.html +++ b/cu29/prelude/pool/trait.ArrayLike.html @@ -1,4 +1,4 @@ -ArrayLike in cu29::prelude::pool - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
+ArrayLike in cu29::prelude::pool - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
     Deref<Target = [Self::Element]>
     + DerefMut
     + Debug
diff --git a/cu29/prelude/pool/trait.CuPool.html b/cu29/prelude/pool/trait.CuPool.html
index 55d3d1a2d..b257a484a 100644
--- a/cu29/prelude/pool/trait.CuPool.html
+++ b/cu29/prelude/pool/trait.CuPool.html
@@ -1,4 +1,4 @@
-CuPool in cu29::prelude::pool - Rust

Trait CuPool

Source
pub trait CuPool<T>: PoolMonitor
where +CuPool in cu29::prelude::pool - Rust

Trait CuPool

Source
pub trait CuPool<T>: PoolMonitor
where T: ArrayLike,
{ // Required methods fn acquire(&self) -> Option<CuHandle<T>>; diff --git a/cu29/prelude/pool/trait.DeviceCuPool.html b/cu29/prelude/pool/trait.DeviceCuPool.html index 52c47f196..65ad5d0ff 100644 --- a/cu29/prelude/pool/trait.DeviceCuPool.html +++ b/cu29/prelude/pool/trait.DeviceCuPool.html @@ -1,4 +1,4 @@ -DeviceCuPool in cu29::prelude::pool - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T>: CuPool<T>
where +DeviceCuPool in cu29::prelude::pool - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T>: CuPool<T>
where T: ArrayLike,
{ // Required method fn copy_to_host_pool<O>( diff --git a/cu29/prelude/pool/trait.ElementType.html b/cu29/prelude/pool/trait.ElementType.html index ea8acbdcf..7e6334ae8 100644 --- a/cu29/prelude/pool/trait.ElementType.html +++ b/cu29/prelude/pool/trait.ElementType.html @@ -1,4 +1,4 @@ -ElementType in cu29::prelude::pool - Rust

Trait ElementType

Source
pub trait ElementType:
+ElementType in cu29::prelude::pool - Rust

Trait ElementType

Source
pub trait ElementType:
     Sized
     + Default
     + Copy
diff --git a/cu29/prelude/pool/trait.PoolMonitor.html b/cu29/prelude/pool/trait.PoolMonitor.html
index 1f70cfec8..6ca8ed428 100644
--- a/cu29/prelude/pool/trait.PoolMonitor.html
+++ b/cu29/prelude/pool/trait.PoolMonitor.html
@@ -1,4 +1,4 @@
-PoolMonitor in cu29::prelude::pool - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
+PoolMonitor in cu29::prelude::pool - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
     // Required methods
     fn id(&self) -> ArrayString<64>;
     fn space_left(&self) -> usize;
diff --git a/cu29/prelude/simulation/enum.CuTaskCallbackState.html b/cu29/prelude/simulation/enum.CuTaskCallbackState.html
index feed09aa2..9f1f5b111 100644
--- a/cu29/prelude/simulation/enum.CuTaskCallbackState.html
+++ b/cu29/prelude/simulation/enum.CuTaskCallbackState.html
@@ -1,4 +1,4 @@
-CuTaskCallbackState in cu29::prelude::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where +CuTaskCallbackState in cu29::prelude::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where I: CuMsgPack<'cl>, O: CuMsgPack<'cl>,
{ New(Option<ComponentConfig>), diff --git a/cu29/prelude/simulation/enum.SimOverride.html b/cu29/prelude/simulation/enum.SimOverride.html index 48249dd44..77e31114c 100644 --- a/cu29/prelude/simulation/enum.SimOverride.html +++ b/cu29/prelude/simulation/enum.SimOverride.html @@ -1,4 +1,4 @@ -SimOverride in cu29::prelude::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
+SimOverride in cu29::prelude::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
     ExecutedBySim,
     ExecuteByRuntime,
     Errored(String),
diff --git a/cu29/prelude/simulation/index.html b/cu29/prelude/simulation/index.html
index 8c57959fa..a14be19ba 100644
--- a/cu29/prelude/simulation/index.html
+++ b/cu29/prelude/simulation/index.html
@@ -1,4 +1,4 @@
-cu29::prelude::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

+cu29::prelude::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

The cu29::simulation module provides an interface to simulate tasks in Copper-based systems. It offers structures, traits, and enums that enable hooking into the lifecycle of tasks, adapting their behavior, and integrating them with simulated hardware environments.

diff --git a/cu29/prelude/simulation/struct.CuSimSinkTask.html b/cu29/prelude/simulation/struct.CuSimSinkTask.html index b3533307d..d1485a32a 100644 --- a/cu29/prelude/simulation/struct.CuSimSinkTask.html +++ b/cu29/prelude/simulation/struct.CuSimSinkTask.html @@ -1,4 +1,4 @@ -CuSimSinkTask in cu29::prelude::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. +CuSimSinkTask in cu29::prelude::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSinkTask<'cl> for CuSimSinkTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Input = &'cl CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSinkTask<T>, CuError>
where diff --git a/cu29/prelude/simulation/struct.CuSimSrcTask.html b/cu29/prelude/simulation/struct.CuSimSrcTask.html index 035726645..c9cd63e83 100644 --- a/cu29/prelude/simulation/struct.CuSimSrcTask.html +++ b/cu29/prelude/simulation/struct.CuSimSrcTask.html @@ -1,4 +1,4 @@ -CuSimSrcTask in cu29::prelude::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. +CuSimSrcTask in cu29::prelude::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSrcTask<'cl> for CuSimSrcTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Output = &'cl mut CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSrcTask<T>, CuError>
where diff --git a/cu29/prelude/static.EXTRA_TEXT_LOGGER.html b/cu29/prelude/static.EXTRA_TEXT_LOGGER.html index 97ca35000..e9de14284 100644 --- a/cu29/prelude/static.EXTRA_TEXT_LOGGER.html +++ b/cu29/prelude/static.EXTRA_TEXT_LOGGER.html @@ -1 +1 @@ -EXTRA_TEXT_LOGGER in cu29::prelude - Rust

Static EXTRA_TEXT_LOGGER

pub static EXTRA_TEXT_LOGGER: RwLock<Option<Box<dyn Log>>>
\ No newline at end of file +EXTRA_TEXT_LOGGER in cu29::prelude - Rust

Static EXTRA_TEXT_LOGGER

pub static EXTRA_TEXT_LOGGER: RwLock<Option<Box<dyn Log>>>
\ No newline at end of file diff --git a/cu29/prelude/static.GLOBAL.html b/cu29/prelude/static.GLOBAL.html index ce0814522..7e4645de6 100644 --- a/cu29/prelude/static.GLOBAL.html +++ b/cu29/prelude/static.GLOBAL.html @@ -1 +1 @@ -GLOBAL in cu29::prelude - Rust

Static GLOBAL

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

Static GLOBAL

Source
pub static GLOBAL: CountingAllocator
\ No newline at end of file diff --git a/cu29/prelude/struct.AlignedBuffer.html b/cu29/prelude/struct.AlignedBuffer.html index 339aeea47..6600a3fe1 100644 --- a/cu29/prelude/struct.AlignedBuffer.html +++ b/cu29/prelude/struct.AlignedBuffer.html @@ -1,4 +1,4 @@ -AlignedBuffer in cu29::prelude - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E>
where +AlignedBuffer in cu29::prelude - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E>
where E: ElementType,
{ /* private fields */ }
Expand description

A buffer that is aligned to a specific size with the Element of type E.

Implementations§

Source§

impl<E> AlignedBuffer<E>
where E: ElementType,

Source

pub fn new(num_elements: usize, alignment: usize) -> AlignedBuffer<E>

Methods from Deref<Target = [E]>§

Source

pub fn write_copy_of_slice(&mut self, src: &[T]) -> &mut [T]
where diff --git a/cu29/prelude/struct.Cnx.html b/cu29/prelude/struct.Cnx.html index bc0674f60..2fba64dbf 100644 --- a/cu29/prelude/struct.Cnx.html +++ b/cu29/prelude/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29::prelude - Rust

Struct Cnx

Source
pub struct Cnx {
+Cnx in cu29::prelude - Rust

Struct Cnx

Source
pub struct Cnx {
     pub msg: String,
     pub batch: Option<u32>,
     pub store: Option<bool>,
diff --git a/cu29/prelude/struct.ComponentConfig.html b/cu29/prelude/struct.ComponentConfig.html
index e8c3710d6..965c3ccb8 100644
--- a/cu29/prelude/struct.ComponentConfig.html
+++ b/cu29/prelude/struct.ComponentConfig.html
@@ -1,4 +1,4 @@
-ComponentConfig in cu29::prelude - Rust

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::prelude - Rust

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() -> ComponentConfig

Source

pub fn get<T>(&self, key: &str) -> Option<T>
where diff --git a/cu29/prelude/struct.CopperContext.html b/cu29/prelude/struct.CopperContext.html index c07a71256..7e146546c 100644 --- a/cu29/prelude/struct.CopperContext.html +++ b/cu29/prelude/struct.CopperContext.html @@ -1,4 +1,4 @@ -CopperContext in cu29::prelude - Rust

Struct CopperContext

Source
pub struct CopperContext {
+CopperContext in cu29::prelude - Rust

Struct CopperContext

Source
pub struct CopperContext {
     pub unified_logger: Arc<Mutex<UnifiedLoggerWrite>>,
     pub logger_runtime: LoggerRuntime,
     pub clock: RobotClock,
diff --git a/cu29/prelude/struct.CopperLiskMask.html b/cu29/prelude/struct.CopperLiskMask.html
index 6d704ca91..0b84ecebb 100644
--- a/cu29/prelude/struct.CopperLiskMask.html
+++ b/cu29/prelude/struct.CopperLiskMask.html
@@ -1,4 +1,4 @@
-CopperLiskMask in cu29::prelude - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. +CopperLiskMask in cu29::prelude - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.

Trait Implementations§

Source§

impl<'__de> BorrowDecode<'__de> for CopperLiskMask

Source§

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

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

impl Clone for CopperLiskMask

Source§

fn clone(&self) -> CopperLiskMask

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 CopperLiskMask

Source§

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

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

impl Decode for CopperLiskMask

Source§

fn decode<__D>(decoder: &mut __D) -> Result<CopperLiskMask, DecodeError>
where diff --git a/cu29/prelude/struct.CopperList.html b/cu29/prelude/struct.CopperList.html index 63955d577..c93175cd1 100644 --- a/cu29/prelude/struct.CopperList.html +++ b/cu29/prelude/struct.CopperList.html @@ -1,4 +1,4 @@ -CopperList in cu29::prelude - Rust

Struct CopperList

Source
pub struct CopperList<P>
where +CopperList in cu29::prelude - Rust

Struct CopperList

Source
pub struct CopperList<P>
where P: CopperListTuple,
{ pub id: u32, pub msgs: P, diff --git a/cu29/prelude/struct.CountingAllocator.html b/cu29/prelude/struct.CountingAllocator.html index 6eda28e2f..9f9a47f53 100644 --- a/cu29/prelude/struct.CountingAllocator.html +++ b/cu29/prelude/struct.CountingAllocator.html @@ -1,4 +1,4 @@ -CountingAllocator in cu29::prelude - Rust

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::prelude - Rust

Struct CountingAllocator

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

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

Implementations§

Trait Implementations§

Source§

impl Default for CountingAllocator

Source§

fn default() -> CountingAllocator

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/prelude/struct.CuArray.html b/cu29/prelude/struct.CuArray.html index bb8db2282..d5c2d9f7c 100644 --- a/cu29/prelude/struct.CuArray.html +++ b/cu29/prelude/struct.CuArray.html @@ -1,4 +1,4 @@ -CuArray in cu29::prelude - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

+CuArray in cu29::prelude - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

Implementations§

Source§

impl<T, const N: usize> CuArray<T, N>

Source

pub fn new() -> CuArray<T, N>

Source

pub fn fill_from_iter<I>(&mut self, iter: I)
where I: IntoIterator<Item = T>,

Source

pub fn len(&self) -> usize

Source

pub fn is_empty(&self) -> bool

Source

pub fn as_slice(&self) -> &[T]

Source

pub fn capacity(&self) -> usize

Trait Implementations§

Source§

impl<T, const N: usize> Clone for CuArray<T, N>
where T: Clone,

Source§

fn clone(&self) -> CuArray<T, N>

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<T, const N: usize> Debug for CuArray<T, N>
where diff --git a/cu29/prelude/struct.CuCompactString.html b/cu29/prelude/struct.CuCompactString.html index 364ee8f00..2dde5f7ba 100644 --- a/cu29/prelude/struct.CuCompactString.html +++ b/cu29/prelude/struct.CuCompactString.html @@ -1,4 +1,4 @@ -CuCompactString in cu29::prelude - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where +CuCompactString in cu29::prelude - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: BorrowDecoder<'de>,

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

impl Clone for CuCompactString

Source§

fn clone(&self) -> CuCompactString

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 CuCompactString

Source§

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

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

impl Decode for CuCompactString

Source§

fn decode<D>(decoder: &mut D) -> Result<CuCompactString, DecodeError>
where D: Decoder,

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

impl Default for CuCompactString

Source§

fn default() -> CuCompactString

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

impl<'de> Deserialize<'de> for CuCompactString

Source§

fn deserialize<__D>( __deserializer: __D, diff --git a/cu29/prelude/struct.CuConfig.html b/cu29/prelude/struct.CuConfig.html index 9ed8c1652..d4441d513 100644 --- a/cu29/prelude/struct.CuConfig.html +++ b/cu29/prelude/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29::prelude - Rust

Struct CuConfig

Source
pub struct CuConfig {
+CuConfig in cu29::prelude - Rust

Struct CuConfig

Source
pub struct CuConfig {
     pub graph: StableGraph<Node, Cnx>,
     pub monitor: Option<MonitorConfig>,
     pub logging: Option<LoggingConfig>,
diff --git a/cu29/prelude/struct.CuDuration.html b/cu29/prelude/struct.CuDuration.html
index b57f9bd78..14ef9cbc4 100644
--- a/cu29/prelude/struct.CuDuration.html
+++ b/cu29/prelude/struct.CuDuration.html
@@ -1,4 +1,4 @@
-CuDuration in cu29::prelude - Rust

Struct CuDuration

pub struct CuDuration(pub u64);
Expand description

For Robot times, the underlying type is a u64 representing nanoseconds. +CuDuration in cu29::prelude - Rust

Struct CuDuration

pub struct CuDuration(pub u64);
Expand description

For Robot times, the underlying type is a u64 representing nanoseconds. It is always positive to simplify the reasoning on the user side.

Tuple Fields§

§0: u64

Implementations§

§

impl CuDuration

pub const MIN: CuDuration

pub const MAX: CuDuration

pub fn max(&self, p0: CuDuration) -> CuDuration

pub fn min(&self, p0: CuDuration) -> CuDuration

pub fn as_nanos(&self) -> u64

Trait Implementations§

§

impl Add for CuDuration

§

type Output = CuDuration

The resulting type after applying the + operator.
§

fn add(self, rhs: CuDuration) -> <CuDuration as Add>::Output

Performs the + operation. Read more
§

impl AddAssign for CuDuration

§

fn add_assign(&mut self, rhs: CuDuration)

Performs the += operation. Read more
§

impl<'de> BorrowDecode<'de> for CuDuration

§

fn borrow_decode<D>(decoder: &mut D) -> Result<CuDuration, DecodeError>
where D: BorrowDecoder<'de>,

Attempt to decode this type with the given BorrowDecode.
§

impl Clone for CuDuration

§

fn clone(&self) -> CuDuration

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
§

impl Debug for CuDuration

§

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

Formats the value using the given formatter. Read more
§

impl Decode for CuDuration

§

fn decode<D>(decoder: &mut D) -> Result<CuDuration, DecodeError>
where diff --git a/cu29/prelude/struct.CuDurationStatistics.html b/cu29/prelude/struct.CuDurationStatistics.html index 07daa5c2a..76d3c4f5e 100644 --- a/cu29/prelude/struct.CuDurationStatistics.html +++ b/cu29/prelude/struct.CuDurationStatistics.html @@ -1,4 +1,4 @@ -CuDurationStatistics in cu29::prelude - Rust

Struct CuDurationStatistics

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

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

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) -> CuDurationStatistics

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 is_empty(&self) -> bool

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<(), Error>

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/prelude/struct.CuError.html b/cu29/prelude/struct.CuError.html index 2b4d14973..4b4f5815f 100644 --- a/cu29/prelude/struct.CuError.html +++ b/cu29/prelude/struct.CuError.html @@ -1,4 +1,4 @@ -CuError in cu29::prelude - Rust

Struct CuError

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

Common copper Error type.

+CuError in cu29::prelude - Rust

Struct CuError

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

Common copper Error type.

Implementations§

§

impl CuError

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

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

Trait Implementations§

§

impl Clone for CuError

§

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
§

impl Debug for CuError

§

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

Formats the value using the given formatter. Read more
§

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

§

fn deserialize<__D>( __deserializer: __D, ) -> Result<CuError, <__D as Deserializer<'de>>::Error>
where diff --git a/cu29/prelude/struct.CuExecutionLoop.html b/cu29/prelude/struct.CuExecutionLoop.html index 4d9f7efba..23955c0e1 100644 --- a/cu29/prelude/struct.CuExecutionLoop.html +++ b/cu29/prelude/struct.CuExecutionLoop.html @@ -1,4 +1,4 @@ -CuExecutionLoop in cu29::prelude - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
+CuExecutionLoop in cu29::prelude - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
     pub steps: Vec<CuExecutionUnit>,
     pub loop_count: Option<u32>,
 }
Expand description

This structure represents a loop in the execution plan. diff --git a/cu29/prelude/struct.CuExecutionStep.html b/cu29/prelude/struct.CuExecutionStep.html index 1504aefa7..8dced0750 100644 --- a/cu29/prelude/struct.CuExecutionStep.html +++ b/cu29/prelude/struct.CuExecutionStep.html @@ -1,4 +1,4 @@ -CuExecutionStep in cu29::prelude - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
+CuExecutionStep in cu29::prelude - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
     pub node_id: u32,
     pub node: Node,
     pub task_type: CuTaskType,
diff --git a/cu29/prelude/struct.CuHandle.html b/cu29/prelude/struct.CuHandle.html
index 666e95cac..a320d140c 100644
--- a/cu29/prelude/struct.CuHandle.html
+++ b/cu29/prelude/struct.CuHandle.html
@@ -1,4 +1,4 @@
-CuHandle in cu29::prelude - Rust

Struct CuHandle

Source
pub struct CuHandle<T>(/* private fields */)
+CuHandle in cu29::prelude - Rust

Struct CuHandle

Source
pub struct CuHandle<T>(/* private fields */)
 where
     T: ArrayLike;
Expand description

A shareable handle to an Array coming from a pool (either host or device).

Implementations§

Source§

impl<T> CuHandle<T>
where diff --git a/cu29/prelude/struct.CuHostMemoryPool.html b/cu29/prelude/struct.CuHostMemoryPool.html index 4c6614e6b..bb7357959 100644 --- a/cu29/prelude/struct.CuHostMemoryPool.html +++ b/cu29/prelude/struct.CuHostMemoryPool.html @@ -1,4 +1,4 @@ -CuHostMemoryPool in cu29::prelude - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

+CuHostMemoryPool in cu29::prelude - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

Implementations§

Source§

impl<T> CuHostMemoryPool<T>
where T: ArrayLike + 'static,

Source

pub fn new<F>( id: &str, diff --git a/cu29/prelude/struct.CuListsManager.html b/cu29/prelude/struct.CuListsManager.html index b36a37c33..2f8924806 100644 --- a/cu29/prelude/struct.CuListsManager.html +++ b/cu29/prelude/struct.CuListsManager.html @@ -1,4 +1,4 @@ -CuListsManager in cu29::prelude - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where +CuListsManager in cu29::prelude - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P, const N: usize>
where P: CopperListTuple,
{ /* private fields */ }
Expand description

This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. P or Payload is typically a Tuple of various types of messages that are exchanged between tasks. N is the maximum number of in flight Copper List the runtime can support.

diff --git a/cu29/prelude/struct.CuLogEntry.html b/cu29/prelude/struct.CuLogEntry.html index 0cfc78305..1eee76622 100644 --- a/cu29/prelude/struct.CuLogEntry.html +++ b/cu29/prelude/struct.CuLogEntry.html @@ -1,4 +1,4 @@ -CuLogEntry in cu29::prelude - Rust

Struct CuLogEntry

pub struct CuLogEntry {
+CuLogEntry in cu29::prelude - Rust

Struct CuLogEntry

pub struct CuLogEntry {
     pub time: CuDuration,
     pub msg_index: u32,
     pub paramname_indexes: SmallVec<[u32; 10]>,
diff --git a/cu29/prelude/struct.CuMsg.html b/cu29/prelude/struct.CuMsg.html
index fc620577d..15da766ae 100644
--- a/cu29/prelude/struct.CuMsg.html
+++ b/cu29/prelude/struct.CuMsg.html
@@ -1,4 +1,4 @@
-CuMsg in cu29::prelude - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where +CuMsg in cu29::prelude - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where T: CuMsgPayload,
{ pub metadata: CuMsgMetadata, /* private fields */ diff --git a/cu29/prelude/struct.CuMsgMetadata.html b/cu29/prelude/struct.CuMsgMetadata.html index 748514a0e..7c3f51da9 100644 --- a/cu29/prelude/struct.CuMsgMetadata.html +++ b/cu29/prelude/struct.CuMsgMetadata.html @@ -1,4 +1,4 @@ -CuMsgMetadata in cu29::prelude - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
+CuMsgMetadata in cu29::prelude - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
     pub process_time: PartialCuTimeRange,
     pub tov: Tov,
     pub status_txt: CuCompactString,
diff --git a/cu29/prelude/struct.CuRuntime.html b/cu29/prelude/struct.CuRuntime.html
index a395758ff..f0d550b28 100644
--- a/cu29/prelude/struct.CuRuntime.html
+++ b/cu29/prelude/struct.CuRuntime.html
@@ -1,4 +1,4 @@
-CuRuntime in cu29::prelude - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>
where +CuRuntime in cu29::prelude - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P, M, const NBCL: usize>{
     pub tasks: CT,
diff --git a/cu29/prelude/struct.CuSimSinkTask.html b/cu29/prelude/struct.CuSimSinkTask.html
index 2c36c1874..27d53213b 100644
--- a/cu29/prelude/struct.CuSimSinkTask.html
+++ b/cu29/prelude/struct.CuSimSinkTask.html
@@ -1,4 +1,4 @@
-CuSimSinkTask in cu29::prelude - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. +CuSimSinkTask in cu29::prelude - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSinkTask<'cl> for CuSimSinkTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Input = &'cl CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSinkTask<T>, CuError>
where diff --git a/cu29/prelude/struct.CuSimSrcTask.html b/cu29/prelude/struct.CuSimSrcTask.html index e85473580..cdd0cae89 100644 --- a/cu29/prelude/struct.CuSimSrcTask.html +++ b/cu29/prelude/struct.CuSimSrcTask.html @@ -1,4 +1,4 @@ -CuSimSrcTask in cu29::prelude - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. +CuSimSrcTask in cu29::prelude - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSrcTask<'cl> for CuSimSrcTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Output = &'cl mut CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSrcTask<T>, CuError>
where diff --git a/cu29/prelude/struct.CuTimeRange.html b/cu29/prelude/struct.CuTimeRange.html index 4bcf7a24d..b85901a4e 100644 --- a/cu29/prelude/struct.CuTimeRange.html +++ b/cu29/prelude/struct.CuTimeRange.html @@ -1,4 +1,4 @@ -CuTimeRange in cu29::prelude - Rust

Struct CuTimeRange

pub struct CuTimeRange {
+CuTimeRange in cu29::prelude - Rust

Struct CuTimeRange

pub struct CuTimeRange {
     pub start: CuDuration,
     pub end: CuDuration,
 }
Expand description

Represents a time range.

diff --git a/cu29/prelude/struct.Instant.html b/cu29/prelude/struct.Instant.html index fb2d81189..498a80646 100644 --- a/cu29/prelude/struct.Instant.html +++ b/cu29/prelude/struct.Instant.html @@ -1,4 +1,4 @@ -Instant in cu29::prelude - Rust

Struct Instant

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

A point-in-time wall-clock measurement.

+Instant in cu29::prelude - Rust

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/prelude/struct.LiveStatistics.html b/cu29/prelude/struct.LiveStatistics.html index 490b30b45..861b5e33d 100644 --- a/cu29/prelude/struct.LiveStatistics.html +++ b/cu29/prelude/struct.LiveStatistics.html @@ -1,4 +1,4 @@ -LiveStatistics in cu29::prelude - Rust

Struct LiveStatistics

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

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

+LiveStatistics in cu29::prelude - Rust

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() -> LiveStatistics

Source

pub fn new_with_max(max: u64) -> LiveStatistics

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 is_empty(&self) -> bool

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<(), Error>

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/prelude/struct.LoggerRuntime.html b/cu29/prelude/struct.LoggerRuntime.html index 5eb96972c..0d50d7b71 100644 --- a/cu29/prelude/struct.LoggerRuntime.html +++ b/cu29/prelude/struct.LoggerRuntime.html @@ -1,4 +1,4 @@ -LoggerRuntime in cu29::prelude - Rust

Struct LoggerRuntime

pub struct LoggerRuntime {}
Expand description

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

+LoggerRuntime in cu29::prelude - Rust

Struct LoggerRuntime

pub struct LoggerRuntime {}
Expand description

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

Implementations§

§

impl LoggerRuntime

pub fn init( clock: RobotClock, destination: impl WriteStream<CuLogEntry> + 'static, diff --git a/cu29/prelude/struct.LoggingConfig.html b/cu29/prelude/struct.LoggingConfig.html index 870b87706..3d83f12b1 100644 --- a/cu29/prelude/struct.LoggingConfig.html +++ b/cu29/prelude/struct.LoggingConfig.html @@ -1,4 +1,4 @@ -LoggingConfig in cu29::prelude - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
+LoggingConfig in cu29::prelude - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
     pub slab_size_mib: Option<u64>,
     pub section_size_mib: Option<u64>,
     pub enable_task_logging: bool,
diff --git a/cu29/prelude/struct.MonitorConfig.html b/cu29/prelude/struct.MonitorConfig.html
index f8be2110a..b6897cfc3 100644
--- a/cu29/prelude/struct.MonitorConfig.html
+++ b/cu29/prelude/struct.MonitorConfig.html
@@ -1,4 +1,4 @@
-MonitorConfig in cu29::prelude - Rust

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<(), Error>

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>( +MonitorConfig in cu29::prelude - Rust

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<(), Error>

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<MonitorConfig, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

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

impl Serialize for MonitorConfig

Source§

fn serialize<__S>( diff --git a/cu29/prelude/struct.NoMonitor.html b/cu29/prelude/struct.NoMonitor.html index e0ae1479e..5c8dae744 100644 --- a/cu29/prelude/struct.NoMonitor.html +++ b/cu29/prelude/struct.NoMonitor.html @@ -1,4 +1,4 @@ -NoMonitor in cu29::prelude - Rust

Struct NoMonitor

Source
pub struct NoMonitor {}
Expand description

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

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: &CuConfig, diff --git a/cu29/prelude/struct.Node.html b/cu29/prelude/struct.Node.html index e4e5d3271..f7daa9e3c 100644 --- a/cu29/prelude/struct.Node.html +++ b/cu29/prelude/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29::prelude - Rust

Struct Node

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

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

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) -> Node

Source

pub fn get_id(&self) -> String

Source

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

Source

pub fn get_type(&self) -> &str

Source

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

Source

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

Source

pub fn set_param<T>(&mut self, key: &str, value: T)
where diff --git a/cu29/prelude/struct.NullLog.html b/cu29/prelude/struct.NullLog.html index 9ccddaf35..9c566d9b4 100644 --- a/cu29/prelude/struct.NullLog.html +++ b/cu29/prelude/struct.NullLog.html @@ -1,4 +1,4 @@ -NullLog in cu29::prelude - Rust

Struct NullLog

pub struct NullLog;

Trait Implementations§

§

impl Log for NullLog

§

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

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

Struct NullLog

pub struct NullLog;

Trait Implementations§

§

impl Log for NullLog

§

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

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

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

Logs the Record. Read more
§

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/prelude/struct.OptionCuTime.html b/cu29/prelude/struct.OptionCuTime.html index c4b84fb21..75158a55c 100644 --- a/cu29/prelude/struct.OptionCuTime.html +++ b/cu29/prelude/struct.OptionCuTime.html @@ -1,4 +1,4 @@ -OptionCuTime in cu29::prelude - Rust

Struct OptionCuTime

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

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

+OptionCuTime in cu29::prelude - Rust

Struct OptionCuTime

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

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

Implementations§

§

impl OptionCuTime

pub fn is_none(&self) -> bool

pub fn none() -> OptionCuTime

pub fn unwrap(self) -> CuDuration

Trait Implementations§

§

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

§

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

Attempt to decode this type with the given BorrowDecode.
§

impl Clone for OptionCuTime

§

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
§

impl Debug for OptionCuTime

§

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

Formats the value using the given formatter. Read more
§

impl Decode for OptionCuTime

§

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

Attempt to decode this type with the given Decode.
§

impl Default for OptionCuTime

§

fn default() -> OptionCuTime

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

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

§

fn deserialize<__D>( diff --git a/cu29/prelude/struct.OwningIoWriter.html b/cu29/prelude/struct.OwningIoWriter.html index e30df4309..040fec87c 100644 --- a/cu29/prelude/struct.OwningIoWriter.html +++ b/cu29/prelude/struct.OwningIoWriter.html @@ -1,4 +1,4 @@ -OwningIoWriter in cu29::prelude - Rust

Struct OwningIoWriter

pub struct OwningIoWriter<W>
where +OwningIoWriter in cu29::prelude - Rust

Struct OwningIoWriter

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

Implementations§

§

impl<W> OwningIoWriter<W>
where W: Write,

pub fn new(writer: W) -> OwningIoWriter<W>

pub fn bytes_written(&self) -> usize

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

Trait Implementations§

§

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

§

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 diff --git a/cu29/prelude/struct.PartialCuTimeRange.html b/cu29/prelude/struct.PartialCuTimeRange.html index 4b3e124ed..26bfa9534 100644 --- a/cu29/prelude/struct.PartialCuTimeRange.html +++ b/cu29/prelude/struct.PartialCuTimeRange.html @@ -1,4 +1,4 @@ -PartialCuTimeRange in cu29::prelude - Rust

Struct PartialCuTimeRange

pub struct PartialCuTimeRange {
+PartialCuTimeRange in cu29::prelude - Rust

Struct PartialCuTimeRange

pub struct PartialCuTimeRange {
     pub start: OptionCuTime,
     pub end: OptionCuTime,
 }
Expand description

Represents a time range with possible undefined start or end or both.

diff --git a/cu29/prelude/struct.RobotClock.html b/cu29/prelude/struct.RobotClock.html index 8abe85698..b939ad55f 100644 --- a/cu29/prelude/struct.RobotClock.html +++ b/cu29/prelude/struct.RobotClock.html @@ -1,4 +1,4 @@ -RobotClock in cu29::prelude - Rust

Struct RobotClock

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

A running Robot clock. +RobotClock in cu29::prelude - Rust

Struct RobotClock

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§

§

impl RobotClock

pub fn new() -> RobotClock

Creates a RobotClock using now as its reference time. diff --git a/cu29/prelude/struct.RobotClockMock.html b/cu29/prelude/struct.RobotClockMock.html index 741023699..3145cc92a 100644 --- a/cu29/prelude/struct.RobotClockMock.html +++ b/cu29/prelude/struct.RobotClockMock.html @@ -1,4 +1,4 @@ -RobotClockMock in cu29::prelude - Rust

Struct RobotClockMock

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

A mock clock that can be controlled by the user.

+RobotClockMock in cu29::prelude - Rust

Struct RobotClockMock

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

A mock clock that can be controlled by the user.

Implementations§

§

impl RobotClockMock

pub fn increment(&self, amount: Duration)

pub fn decrement(&self, amount: Duration)

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

pub fn value(&self) -> u64

Gets the current value of time.

diff --git a/cu29/prelude/struct.ScopedAllocCounter.html b/cu29/prelude/struct.ScopedAllocCounter.html index 87363cfce..c69d1a574 100644 --- a/cu29/prelude/struct.ScopedAllocCounter.html +++ b/cu29/prelude/struct.ScopedAllocCounter.html @@ -1,4 +1,4 @@ -ScopedAllocCounter in cu29::prelude - Rust

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::prelude - Rust

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§

Source§

impl ScopedAllocCounter

Source

pub fn new() -> ScopedAllocCounter

Source

pub fn get_allocated(&self) -> usize

Returns the total number of bytes allocated in the current scope since the creation of this ScopedAllocCounter.

§Example
diff --git a/cu29/prelude/struct.SectionHandle.html b/cu29/prelude/struct.SectionHandle.html index b9932e7ad..5137deaf1 100644 --- a/cu29/prelude/struct.SectionHandle.html +++ b/cu29/prelude/struct.SectionHandle.html @@ -1,4 +1,4 @@ -SectionHandle in cu29::prelude - Rust

Struct SectionHandle

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

A SectionHandle is a handle to a section in the datalogger. +SectionHandle in cu29::prelude - Rust

Struct SectionHandle

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§

§

impl SectionHandle

pub fn create( section_header: SectionHeader, diff --git a/cu29/prelude/struct.SectionHeader.html b/cu29/prelude/struct.SectionHeader.html index 2d05c014b..3b1cebb78 100644 --- a/cu29/prelude/struct.SectionHeader.html +++ b/cu29/prelude/struct.SectionHeader.html @@ -1,4 +1,4 @@ -SectionHeader in cu29::prelude - Rust

Struct SectionHeader

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

Each concurrent sublogger is tracked through a section header. +SectionHeader in cu29::prelude - Rust

Struct SectionHeader

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§

§

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

§

fn borrow_decode<__D>(decoder: &mut __D) -> Result<SectionHeader, DecodeError>
where diff --git a/cu29/prelude/struct.SimpleFileWriter.html b/cu29/prelude/struct.SimpleFileWriter.html index 50e82f6cc..b8dd92954 100644 --- a/cu29/prelude/struct.SimpleFileWriter.html +++ b/cu29/prelude/struct.SimpleFileWriter.html @@ -1,4 +1,4 @@ -SimpleFileWriter in cu29::prelude - Rust

Struct SimpleFileWriter

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::prelude - Rust

Struct SimpleFileWriter

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

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

Implementations§

Trait Implementations§

§

impl Debug for SimpleFileWriter

§

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

Formats the value using the given formatter. Read more
§

impl WriteStream<CuLogEntry> for SimpleFileWriter

§

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

§

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

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/prelude/struct.UnifiedLoggerBuilder.html b/cu29/prelude/struct.UnifiedLoggerBuilder.html index e8555432a..3b87b7621 100644 --- a/cu29/prelude/struct.UnifiedLoggerBuilder.html +++ b/cu29/prelude/struct.UnifiedLoggerBuilder.html @@ -1,4 +1,4 @@ -UnifiedLoggerBuilder in cu29::prelude - Rust

Struct UnifiedLoggerBuilder

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

Use this builder to create a new DataLogger.

+UnifiedLoggerBuilder in cu29::prelude - Rust

Struct UnifiedLoggerBuilder

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

Use this builder to create a new DataLogger.

Implementations§

§

impl UnifiedLoggerBuilder

pub fn new() -> UnifiedLoggerBuilder

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

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

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

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

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

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

Trait Implementations§

§

impl Default for UnifiedLoggerBuilder

§

fn default() -> UnifiedLoggerBuilder

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/prelude/struct.UnifiedLoggerIOReader.html b/cu29/prelude/struct.UnifiedLoggerIOReader.html index 58673e642..019e00a6d 100644 --- a/cu29/prelude/struct.UnifiedLoggerIOReader.html +++ b/cu29/prelude/struct.UnifiedLoggerIOReader.html @@ -1,4 +1,4 @@ -UnifiedLoggerIOReader in cu29::prelude - Rust

Struct UnifiedLoggerIOReader

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

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

+UnifiedLoggerIOReader in cu29::prelude - Rust

Struct UnifiedLoggerIOReader

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

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

Implementations§

§

impl UnifiedLoggerIOReader

pub fn new( logger: UnifiedLoggerRead, log_type: UnifiedLogType, diff --git a/cu29/prelude/struct.UnifiedLoggerRead.html b/cu29/prelude/struct.UnifiedLoggerRead.html index 9345005f8..a216abf83 100644 --- a/cu29/prelude/struct.UnifiedLoggerRead.html +++ b/cu29/prelude/struct.UnifiedLoggerRead.html @@ -1,4 +1,4 @@ -UnifiedLoggerRead in cu29::prelude - Rust

Struct UnifiedLoggerRead

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

A read side of the datalogger.

+UnifiedLoggerRead in cu29::prelude - Rust

Struct UnifiedLoggerRead

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

A read side of the datalogger.

Implementations§

§

impl UnifiedLoggerRead

pub fn new(base_file_path: &Path) -> Result<UnifiedLoggerRead, Error>

pub fn read_next_section_type( &mut self, datalogtype: UnifiedLogType, diff --git a/cu29/prelude/struct.UnifiedLoggerWrite.html b/cu29/prelude/struct.UnifiedLoggerWrite.html index 99289758f..c2bd44d29 100644 --- a/cu29/prelude/struct.UnifiedLoggerWrite.html +++ b/cu29/prelude/struct.UnifiedLoggerWrite.html @@ -1,4 +1,4 @@ -UnifiedLoggerWrite in cu29::prelude - Rust

Struct UnifiedLoggerWrite

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

A write side of the datalogger.

+UnifiedLoggerWrite in cu29::prelude - Rust

Struct UnifiedLoggerWrite

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

A write side of the datalogger.

Implementations§

§

impl UnifiedLoggerWrite

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

pub fn stats(&self) -> (usize, Vec<usize>, usize)

Trait Implementations§

§

impl Drop for UnifiedLoggerWrite

§

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/cu29/prelude/trait.ArrayLike.html b/cu29/prelude/trait.ArrayLike.html index d915201cc..e726f7112 100644 --- a/cu29/prelude/trait.ArrayLike.html +++ b/cu29/prelude/trait.ArrayLike.html @@ -1,4 +1,4 @@ -ArrayLike in cu29::prelude - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
+ArrayLike in cu29::prelude - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
     Deref<Target = [Self::Element]>
     + DerefMut
     + Debug
diff --git a/cu29/prelude/trait.ClockProvider.html b/cu29/prelude/trait.ClockProvider.html
index 159c28280..288699aa6 100644
--- a/cu29/prelude/trait.ClockProvider.html
+++ b/cu29/prelude/trait.ClockProvider.html
@@ -1,4 +1,4 @@
-ClockProvider in cu29::prelude - Rust

Trait ClockProvider

pub trait ClockProvider {
+ClockProvider in cu29::prelude - Rust

Trait ClockProvider

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/prelude/trait.CopperListTuple.html b/cu29/prelude/trait.CopperListTuple.html index 27021cb08..eacec2102 100644 --- a/cu29/prelude/trait.CopperListTuple.html +++ b/cu29/prelude/trait.CopperListTuple.html @@ -1,4 +1,4 @@ -CopperListTuple in cu29::prelude - Rust

Trait CopperListTuple

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

Trait CopperListTuple

pub trait CopperListTuple:
     Sized
     + Encode
     + Decode
diff --git a/cu29/prelude/trait.CuMonitor.html b/cu29/prelude/trait.CuMonitor.html
index f9dbf7454..f41c71792 100644
--- a/cu29/prelude/trait.CuMonitor.html
+++ b/cu29/prelude/trait.CuMonitor.html
@@ -1,4 +1,4 @@
-CuMonitor in cu29::prelude - Rust

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
+CuMonitor in cu29::prelude - Rust

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
     // Required methods
     fn new(
         config: &CuConfig,
diff --git a/cu29/prelude/trait.CuMsgPack.html b/cu29/prelude/trait.CuMsgPack.html
index 304ca7799..a5f372c3e 100644
--- a/cu29/prelude/trait.CuMsgPack.html
+++ b/cu29/prelude/trait.CuMsgPack.html
@@ -1,4 +1,4 @@
-CuMsgPack in cu29::prelude - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where +CuMsgPack in cu29::prelude - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1, T2> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)
where T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl,

Source§

impl<'cl, T1, T2, T3> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>)
where T1: CuMsgPayload + 'cl, diff --git a/cu29/prelude/trait.CuMsgPayload.html b/cu29/prelude/trait.CuMsgPayload.html index f2b038415..196c267bd 100644 --- a/cu29/prelude/trait.CuMsgPayload.html +++ b/cu29/prelude/trait.CuMsgPayload.html @@ -1,4 +1,4 @@ -CuMsgPayload in cu29::prelude - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
+CuMsgPayload in cu29::prelude - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
     Sized
     + Default
     + Debug
diff --git a/cu29/prelude/trait.CuPool.html b/cu29/prelude/trait.CuPool.html
index 85f3390f2..a6e17b378 100644
--- a/cu29/prelude/trait.CuPool.html
+++ b/cu29/prelude/trait.CuPool.html
@@ -1,4 +1,4 @@
-CuPool in cu29::prelude - Rust

Trait CuPool

Source
pub trait CuPool<T>: PoolMonitor
where +CuPool in cu29::prelude - Rust

Trait CuPool

Source
pub trait CuPool<T>: PoolMonitor
where T: ArrayLike,
{ // Required methods fn acquire(&self) -> Option<CuHandle<T>>; diff --git a/cu29/prelude/trait.CuSinkTask.html b/cu29/prelude/trait.CuSinkTask.html index 1b5679638..5fd769068 100644 --- a/cu29/prelude/trait.CuSinkTask.html +++ b/cu29/prelude/trait.CuSinkTask.html @@ -1,4 +1,4 @@ -CuSinkTask in cu29::prelude - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
+CuSinkTask in cu29::prelude - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/prelude/trait.CuSrcTask.html b/cu29/prelude/trait.CuSrcTask.html
index 56f39d436..7d7469ff2 100644
--- a/cu29/prelude/trait.CuSrcTask.html
+++ b/cu29/prelude/trait.CuSrcTask.html
@@ -1,4 +1,4 @@
-CuSrcTask in cu29::prelude - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
+CuSrcTask in cu29::prelude - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
     type Output: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29/prelude/trait.CuTask.html b/cu29/prelude/trait.CuTask.html
index 46f50af60..303135f17 100644
--- a/cu29/prelude/trait.CuTask.html
+++ b/cu29/prelude/trait.CuTask.html
@@ -1,4 +1,4 @@
-CuTask in cu29::prelude - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
+CuTask in cu29::prelude - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
     type Output: CuMsgPack<'cl>;
 
diff --git a/cu29/prelude/trait.DeviceCuPool.html b/cu29/prelude/trait.DeviceCuPool.html
index b0e32184c..35ded958e 100644
--- a/cu29/prelude/trait.DeviceCuPool.html
+++ b/cu29/prelude/trait.DeviceCuPool.html
@@ -1,4 +1,4 @@
-DeviceCuPool in cu29::prelude - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T>: CuPool<T>
where +DeviceCuPool in cu29::prelude - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T>: CuPool<T>
where T: ArrayLike,
{ // Required method fn copy_to_host_pool<O>( diff --git a/cu29/prelude/trait.ElementType.html b/cu29/prelude/trait.ElementType.html index f89b3bdb8..afdf40f00 100644 --- a/cu29/prelude/trait.ElementType.html +++ b/cu29/prelude/trait.ElementType.html @@ -1,4 +1,4 @@ -ElementType in cu29::prelude - Rust

Trait ElementType

Source
pub trait ElementType:
+ElementType in cu29::prelude - Rust

Trait ElementType

Source
pub trait ElementType:
     Sized
     + Default
     + Copy
diff --git a/cu29/prelude/trait.Freezable.html b/cu29/prelude/trait.Freezable.html
index ef4ab3e75..3274d4fba 100644
--- a/cu29/prelude/trait.Freezable.html
+++ b/cu29/prelude/trait.Freezable.html
@@ -1,4 +1,4 @@
-Freezable in cu29::prelude - Rust

Trait Freezable

Source
pub trait Freezable {
+Freezable in cu29::prelude - Rust

Trait Freezable

Source
pub trait Freezable {
     // Provided methods
     fn freeze<E>(&self, encoder: &mut E) -> Result<(), EncodeError>
        where E: Encoder { ... }
diff --git a/cu29/prelude/trait.PoolMonitor.html b/cu29/prelude/trait.PoolMonitor.html
index 18798b818..ffcf144f0 100644
--- a/cu29/prelude/trait.PoolMonitor.html
+++ b/cu29/prelude/trait.PoolMonitor.html
@@ -1,4 +1,4 @@
-PoolMonitor in cu29::prelude - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
+PoolMonitor in cu29::prelude - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
     // Required methods
     fn id(&self) -> ArrayString<64>;
     fn space_left(&self) -> usize;
diff --git a/cu29/prelude/trait.WriteStream.html b/cu29/prelude/trait.WriteStream.html
index 6a8e7b2e5..e45db80a6 100644
--- a/cu29/prelude/trait.WriteStream.html
+++ b/cu29/prelude/trait.WriteStream.html
@@ -1,4 +1,4 @@
-WriteStream in cu29::prelude - Rust

Trait WriteStream

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

Trait WriteStream

pub trait WriteStream<E>:
     Sync
     + Send
     + Debug
where diff --git a/cu29/prelude/type.AscIter.html b/cu29/prelude/type.AscIter.html index 6a5db4dd1..9fb93d72e 100644 --- a/cu29/prelude/type.AscIter.html +++ b/cu29/prelude/type.AscIter.html @@ -1 +1 @@ -AscIter in cu29::prelude - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file +AscIter in cu29::prelude - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/type.AscIterMut.html b/cu29/prelude/type.AscIterMut.html index 65ef8d138..258dfd7a8 100644 --- a/cu29/prelude/type.AscIterMut.html +++ b/cu29/prelude/type.AscIterMut.html @@ -1 +1 @@ -AscIterMut in cu29::prelude - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file +AscIterMut in cu29::prelude - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/type.CuResult.html b/cu29/prelude/type.CuResult.html index 22f359b0f..5fc9efd49 100644 --- a/cu29/prelude/type.CuResult.html +++ b/cu29/prelude/type.CuResult.html @@ -1,4 +1,4 @@ -CuResult in cu29::prelude - Rust

Type Alias CuResult

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

Aliased Type§

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

Type Alias CuResult

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/prelude/type.CuTime.html b/cu29/prelude/type.CuTime.html index fd1d3e1ca..936b4265d 100644 --- a/cu29/prelude/type.CuTime.html +++ b/cu29/prelude/type.CuTime.html @@ -1,2 +1,2 @@ -CuTime in cu29::prelude - Rust

Type Alias CuTime

pub type CuTime = CuDuration;
Expand description

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

+CuTime in cu29::prelude - Rust

Type Alias CuTime

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
\ No newline at end of file diff --git a/cu29/prelude/type.Iter.html b/cu29/prelude/type.Iter.html index 968e815f0..09c34d7ff 100644 --- a/cu29/prelude/type.Iter.html +++ b/cu29/prelude/type.Iter.html @@ -1 +1 @@ -Iter in cu29::prelude - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file +Iter in cu29::prelude - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/type.IterMut.html b/cu29/prelude/type.IterMut.html index 2f84d5a13..d199b71dd 100644 --- a/cu29/prelude/type.IterMut.html +++ b/cu29/prelude/type.IterMut.html @@ -1 +1 @@ -IterMut in cu29::prelude - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file +IterMut in cu29::prelude - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29/prelude/type.NodeId.html b/cu29/prelude/type.NodeId.html index 3f8b97a3f..64d295d58 100644 --- a/cu29/prelude/type.NodeId.html +++ b/cu29/prelude/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29::prelude - Rust

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::prelude - Rust

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/simulation/enum.CuTaskCallbackState.html b/cu29/simulation/enum.CuTaskCallbackState.html index eac0227dc..d23c21ee4 100644 --- a/cu29/simulation/enum.CuTaskCallbackState.html +++ b/cu29/simulation/enum.CuTaskCallbackState.html @@ -1,4 +1,4 @@ -CuTaskCallbackState in cu29::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where +CuTaskCallbackState in cu29::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where I: CuMsgPack<'cl>, O: CuMsgPack<'cl>,
{ New(Option<ComponentConfig>), diff --git a/cu29/simulation/enum.SimOverride.html b/cu29/simulation/enum.SimOverride.html index 8c9cde0d4..47222c8f2 100644 --- a/cu29/simulation/enum.SimOverride.html +++ b/cu29/simulation/enum.SimOverride.html @@ -1,4 +1,4 @@ -SimOverride in cu29::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
+SimOverride in cu29::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
     ExecutedBySim,
     ExecuteByRuntime,
     Errored(String),
diff --git a/cu29/simulation/index.html b/cu29/simulation/index.html
index e89170617..ffc8a75d4 100644
--- a/cu29/simulation/index.html
+++ b/cu29/simulation/index.html
@@ -1,4 +1,4 @@
-cu29::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

+cu29::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

The cu29::simulation module provides an interface to simulate tasks in Copper-based systems. It offers structures, traits, and enums that enable hooking into the lifecycle of tasks, adapting their behavior, and integrating them with simulated hardware environments.

diff --git a/cu29/simulation/struct.CuSimSinkTask.html b/cu29/simulation/struct.CuSimSinkTask.html index dce7b5daf..3871da3ac 100644 --- a/cu29/simulation/struct.CuSimSinkTask.html +++ b/cu29/simulation/struct.CuSimSinkTask.html @@ -1,4 +1,4 @@ -CuSimSinkTask in cu29::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. +CuSimSinkTask in cu29::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSinkTask<'cl> for CuSimSinkTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Input = &'cl CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSinkTask<T>, CuError>
where diff --git a/cu29/simulation/struct.CuSimSrcTask.html b/cu29/simulation/struct.CuSimSrcTask.html index ee903d515..d3460e8d9 100644 --- a/cu29/simulation/struct.CuSimSrcTask.html +++ b/cu29/simulation/struct.CuSimSrcTask.html @@ -1,4 +1,4 @@ -CuSimSrcTask in cu29::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. +CuSimSrcTask in cu29::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T> CuSrcTask<'cl> for CuSimSrcTask<T>
where T: CuMsgPayload + 'cl,

Source§

type Output = &'cl mut CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> Result<CuSimSrcTask<T>, CuError>
where diff --git a/cu29/struct.CuError.html b/cu29/struct.CuError.html index c45d92b2d..be2531fc0 100644 --- a/cu29/struct.CuError.html +++ b/cu29/struct.CuError.html @@ -1,4 +1,4 @@ -CuError in cu29 - Rust

Struct CuError

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

Common copper Error type.

+CuError in cu29 - Rust

Struct CuError

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

Common copper Error type.

Implementations§

§

impl CuError

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

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

Trait Implementations§

§

impl Clone for CuError

§

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
§

impl Debug for CuError

§

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

Formats the value using the given formatter. Read more
§

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

§

fn deserialize<__D>( __deserializer: __D, ) -> Result<CuError, <__D as Deserializer<'de>>::Error>
where diff --git a/cu29/trait.CopperListTuple.html b/cu29/trait.CopperListTuple.html index 087e812e6..e2a46a46d 100644 --- a/cu29/trait.CopperListTuple.html +++ b/cu29/trait.CopperListTuple.html @@ -1,4 +1,4 @@ -CopperListTuple in cu29 - Rust

Trait CopperListTuple

pub trait CopperListTuple:
+CopperListTuple in cu29 - Rust

Trait CopperListTuple

pub trait CopperListTuple:
     Sized
     + Encode
     + Decode
diff --git a/cu29/trait.WriteStream.html b/cu29/trait.WriteStream.html
index 87f434fd5..c66e9826f 100644
--- a/cu29/trait.WriteStream.html
+++ b/cu29/trait.WriteStream.html
@@ -1,4 +1,4 @@
-WriteStream in cu29 - Rust

Trait WriteStream

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

Trait WriteStream

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

Type Alias CuResult

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

Aliased Type§

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

Type Alias CuResult

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 5d7b656ff..78eed579d 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/enum.Tov.html b/cu29_clock/enum.Tov.html index 0ca32a272..257fc2bfc 100644 --- a/cu29_clock/enum.Tov.html +++ b/cu29_clock/enum.Tov.html @@ -1,4 +1,4 @@ -Tov in cu29_clock - Rust

Enum Tov

Source
pub enum Tov {
+Tov in cu29_clock - Rust

Enum Tov

Source
pub enum Tov {
     None,
     Time(CuTime),
     Range(CuTimeRange),
diff --git a/cu29_clock/index.html b/cu29_clock/index.html
index f0b3e32da..6cb3fc5b9 100644
--- a/cu29_clock/index.html
+++ b/cu29_clock/index.html
@@ -1,4 +1,4 @@
-cu29_clock - Rust

Crate cu29_clock

Source

Structs§

CuDuration
For Robot times, the underlying type is a u64 representing nanoseconds. +cu29_clock - Rust

Crate cu29_clock

Source

Structs§

CuDuration
For Robot times, the underlying type is a u64 representing nanoseconds. It is always positive to simplify the reasoning on the user side.
CuTimeRange
Represents a time range.
Instant
A point-in-time wall-clock measurement.
OptionCuTime
Homebrewed Option<CuDuration> to avoid using 128bits just to represent an Option.
PartialCuTimeRange
Represents a time range with possible undefined start or end or both.
RobotClock
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.
RobotClockMock
A mock clock that can be controlled by the user.

Enums§

Tov
The time of validity of a message can be more than one time but can be a time range of Tovs. diff --git a/cu29_clock/struct.CuDuration.html b/cu29_clock/struct.CuDuration.html index daafc727d..bec2e29d4 100644 --- a/cu29_clock/struct.CuDuration.html +++ b/cu29_clock/struct.CuDuration.html @@ -1,4 +1,4 @@ -CuDuration in cu29_clock - Rust

Struct CuDuration

Source
pub struct CuDuration(pub u64);
Expand description

For Robot times, the underlying type is a u64 representing nanoseconds. +CuDuration in cu29_clock - Rust

Struct CuDuration

Source
pub struct CuDuration(pub u64);
Expand description

For Robot times, the underlying type is a u64 representing nanoseconds. It is always positive to simplify the reasoning on the user side.

Tuple Fields§

§0: u64

Implementations§

Source§

impl CuDuration

Source

pub const MIN: CuDuration

Source

pub const MAX: CuDuration

Source

pub fn max(&self, p0: CuDuration) -> CuDuration

Source

pub fn min(&self, p0: CuDuration) -> CuDuration

Source

pub fn as_nanos(&self) -> u64

Trait Implementations§

Source§

impl Add for CuDuration

Source§

type Output = CuDuration

The resulting type after applying the + operator.
Source§

fn add(self, rhs: Self) -> Self::Output

Performs the + operation. Read more
Source§

impl AddAssign for CuDuration

Source§

fn add_assign(&mut self, rhs: Self)

Performs the += operation. Read more
Source§

impl<'de> BorrowDecode<'de> for CuDuration

Source§

fn borrow_decode<D: BorrowDecoder<'de>>( decoder: &mut D, diff --git a/cu29_clock/struct.CuTimeRange.html b/cu29_clock/struct.CuTimeRange.html index 865c104d5..413b6e5d8 100644 --- a/cu29_clock/struct.CuTimeRange.html +++ b/cu29_clock/struct.CuTimeRange.html @@ -1,4 +1,4 @@ -CuTimeRange in cu29_clock - Rust

Struct CuTimeRange

Source
pub struct CuTimeRange {
+CuTimeRange in cu29_clock - Rust

Struct CuTimeRange

Source
pub struct CuTimeRange {
     pub start: CuTime,
     pub end: CuTime,
 }
Expand description

Represents a time range.

diff --git a/cu29_clock/struct.Instant.html b/cu29_clock/struct.Instant.html index 8604c6378..49cab9a04 100644 --- a/cu29_clock/struct.Instant.html +++ b/cu29_clock/struct.Instant.html @@ -1,4 +1,4 @@ -Instant in cu29_clock - Rust

Struct Instant

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

A point-in-time wall-clock measurement.

+Instant in cu29_clock - Rust

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 799ab7b02..fc5fbf880 100644 --- a/cu29_clock/struct.OptionCuTime.html +++ b/cu29_clock/struct.OptionCuTime.html @@ -1,4 +1,4 @@ -OptionCuTime in cu29_clock - Rust

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

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 diff --git a/cu29_clock/struct.PartialCuTimeRange.html b/cu29_clock/struct.PartialCuTimeRange.html index 9e3035680..82fe48e75 100644 --- a/cu29_clock/struct.PartialCuTimeRange.html +++ b/cu29_clock/struct.PartialCuTimeRange.html @@ -1,4 +1,4 @@ -PartialCuTimeRange in cu29_clock - Rust

Struct PartialCuTimeRange

Source
pub struct PartialCuTimeRange {
+PartialCuTimeRange in cu29_clock - Rust

Struct PartialCuTimeRange

Source
pub struct PartialCuTimeRange {
     pub start: OptionCuTime,
     pub end: OptionCuTime,
 }
Expand description

Represents a time range with possible undefined start or end or both.

diff --git a/cu29_clock/struct.RobotClock.html b/cu29_clock/struct.RobotClock.html index 5bf3f6c91..e66d3b4de 100644 --- a/cu29_clock/struct.RobotClock.html +++ b/cu29_clock/struct.RobotClock.html @@ -1,4 +1,4 @@ -RobotClock in cu29_clock - Rust

Struct RobotClock

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

A running Robot clock. +RobotClock in cu29_clock - Rust

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 f7cbc5205..499e0f871 100644 --- a/cu29_clock/struct.RobotClockMock.html +++ b/cu29_clock/struct.RobotClockMock.html @@ -1,4 +1,4 @@ -RobotClockMock in cu29_clock - Rust

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

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 3938b1845..8d5baeda3 100644 --- a/cu29_clock/trait.ClockProvider.html +++ b/cu29_clock/trait.ClockProvider.html @@ -1,4 +1,4 @@ -ClockProvider in cu29_clock - Rust

Trait ClockProvider

Source
pub trait ClockProvider {
+ClockProvider in cu29_clock - Rust

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 0803d2316..147ec3d31 100644 --- a/cu29_clock/type.CuTime.html +++ b/cu29_clock/type.CuTime.html @@ -1,2 +1,2 @@ -CuTime in cu29_clock - Rust

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

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
\ No newline at end of file diff --git a/cu29_derive/all.html b/cu29_derive/all.html index 847d3f1f1..1fb57ddfa 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 70452b93c..26f5bc57c 100644 --- a/cu29_derive/attr.copper_runtime.html +++ b/cu29_derive/attr.copper_runtime.html @@ -1,4 +1,4 @@ -copper_runtime in cu29_derive - Rust

Attribute Macro copper_runtime

Source
#[copper_runtime]
Expand description

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

Attribute Macro copper_runtime

Source
#[copper_runtime]
Expand description

Adds #[copper_runtime(config = “path”, sim_mode = false/true)] to your application struct to generate the runtime. if sim_mode is omitted, it is set to false. 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 6a0a18d88..91c28812a 100644 --- a/cu29_derive/index.html +++ b/cu29_derive/index.html @@ -1,4 +1,4 @@ -cu29_derive - Rust

Crate cu29_derive

Source

Macros§

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

Crate cu29_derive

Source

Macros§

gen_cumsgs
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§

copper_runtime
Adds #[copper_runtime(config = “path”, sim_mode = false/true)] to your application struct to generate the runtime. if sim_mode is omitted, it is set to false. diff --git a/cu29_derive/macro.gen_cumsgs.html b/cu29_derive/macro.gen_cumsgs.html index 62cb5c534..edb896ad3 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

Macro gen_cumsgs

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

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

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 9746241a4..7cd3a5fd0 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 a1a883039..fe80ac039 100644 --- a/cu29_export/enum.Command.html +++ b/cu29_export/enum.Command.html @@ -1,4 +1,4 @@ -Command in cu29_export - Rust

Enum Command

Source
pub enum Command {
+Command in cu29_export - Rust

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 7e48fb151..9910611ee 100644
--- a/cu29_export/enum.ExportFormat.html
+++ b/cu29_export/enum.ExportFormat.html
@@ -1,4 +1,4 @@
-ExportFormat in cu29_export - Rust

Enum ExportFormat

Source
pub enum ExportFormat {
+ExportFormat in cu29_export - Rust

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 diff --git a/cu29_export/fn.copperlists_dump.html b/cu29_export/fn.copperlists_dump.html index bed56c49d..19327850e 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

Function copperlists_dump

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

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 f2bee4df7..e6c57b66a 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

Function run_cli

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

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 d6ac6b19d..0765ea5ea 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

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

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 5f36aeae2..8b45d6776 100644 --- a/cu29_export/index.html +++ b/cu29_export/index.html @@ -1,4 +1,4 @@ -cu29_export - Rust

Crate cu29_export

Source

Structs§

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

Enums§

Command
ExportFormat

Functions§

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

Crate cu29_export

Source

Structs§

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

Enums§

Command
ExportFormat

Functions§

copperlists_dump
Extracts the copper lists from a binary representation. P is the Payload determined by the configuration of the application.
run_cli
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.
textlog_dump
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 82e002fb7..5ef38fd78 100644 --- a/cu29_export/struct.LogReaderCli.html +++ b/cu29_export/struct.LogReaderCli.html @@ -1,4 +1,4 @@ -LogReaderCli in cu29_export - Rust

Struct LogReaderCli

Source
pub struct LogReaderCli {
+LogReaderCli in cu29_export - Rust

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 e3a4ef9e4..f84d92c41 100644 --- a/cu29_helpers/all.html +++ b/cu29_helpers/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_helpers/fn.basic_copper_setup.html b/cu29_helpers/fn.basic_copper_setup.html index 226afcae1..dd1002cce 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

Function basic_copper_setup

Source
pub fn basic_copper_setup(
+basic_copper_setup in cu29_helpers - Rust

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 8547a60e4..6e028f926 100644
--- a/cu29_helpers/index.html
+++ b/cu29_helpers/index.html
@@ -1,2 +1,2 @@
-cu29_helpers - Rust

Crate cu29_helpers

Source

Functions§

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

Crate cu29_helpers

Source

Functions§

basic_copper_setup
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_intern_strs/all.html b/cu29_intern_strs/all.html index e6792faa3..a38157c46 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 4280c2849..f192d13cd 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

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

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 a35419355..372aad36c 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§

read_interned_strings
Rebuild the interned string index in memory.
\ No newline at end of file +cu29_intern_strs - Rust

Crate cu29_intern_strs

Source

Functions§

read_interned_strings
Rebuild the interned string index in memory.
\ No newline at end of file diff --git a/cu29_log/all.html b/cu29_log/all.html index 55591ee63..037979343 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 c92262cd0..289757b20 100644 --- a/cu29_log/constant.ANONYMOUS.html +++ b/cu29_log/constant.ANONYMOUS.html @@ -1 +1 @@ -ANONYMOUS in cu29_log - Rust

Constant ANONYMOUS

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

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 02cb640da..16e96c60c 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

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

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 4cb152ae6..43817fc62 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

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

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 7c2a867f6..6d4b05d1d 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

Function format_logline

Source
pub fn format_logline(
+format_logline in cu29_log - Rust

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 34b110861..ec64ae359 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

Function rebuild_logline

Source
pub fn rebuild_logline(
+rebuild_logline in cu29_log - Rust

Function rebuild_logline

Source
pub fn rebuild_logline(
     all_interned_strings: &[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 3f9e41af9..3a6c031af 100644 --- a/cu29_log/index.html +++ b/cu29_log/index.html @@ -1,2 +1,2 @@ -cu29_log - Rust

Crate cu29_log

Source

Structs§

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

Constants§

ANONYMOUS
MAX_LOG_PARAMS_ON_STACK

Functions§

default_log_index_dir
Convenience function to returns the default path for the log index directory.
format_logline
Text log line formatter.
rebuild_logline
Rebuild a log line from the interned strings and the CuLogEntry. +cu29_log - Rust

Crate cu29_log

Source

Structs§

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

Constants§

ANONYMOUS
MAX_LOG_PARAMS_ON_STACK

Functions§

default_log_index_dir
Convenience function to returns the default path for the log index directory.
format_logline
Text log line formatter.
rebuild_logline
Rebuild a log line from the interned strings and the CuLogEntry. This basically translates the world of copper logs to text logs.
\ No newline at end of file diff --git a/cu29_log/struct.CuLogEntry.html b/cu29_log/struct.CuLogEntry.html index fec45b8f8..db57a78f7 100644 --- a/cu29_log/struct.CuLogEntry.html +++ b/cu29_log/struct.CuLogEntry.html @@ -1,4 +1,4 @@ -CuLogEntry in cu29_log - Rust

Struct CuLogEntry

Source
pub struct CuLogEntry {
+CuLogEntry in cu29_log - Rust

Struct CuLogEntry

Source
pub struct CuLogEntry {
     pub time: CuTime,
     pub msg_index: u32,
     pub paramname_indexes: SmallVec<[u32; 10]>,
diff --git a/cu29_log_derive/all.html b/cu29_log_derive/all.html
index 903e354a0..da3420aa1 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 77c1ae011..45ff8386c 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§

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

Crate cu29_log_derive

Source

Macros§

debug
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 dee7e157e..ba0533065 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

Macro debug

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

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

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 ac34f347d..80acff357 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 7784468ba..1d74cc976 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

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

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 1a8c3c3c3..6a3e60dcd 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

Function log_debug_mode

Source
pub fn log_debug_mode(
+log_debug_mode in cu29_log_runtime - Rust

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 5f9fcbab2..63654799c 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§

LoggerRuntime
The lifetime of this struct is the lifetime of the logger.
NullLog
OwningIoWriter
SimpleFileWriter
This allows this crate to be used outside of Copper (ie. decoupling it from the unifiedlog.

Statics§

EXTRA_TEXT_LOGGER

Functions§

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

Crate cu29_log_runtime

Source

Structs§

LoggerRuntime
The lifetime of this struct is the lifetime of the logger.
NullLog
OwningIoWriter
SimpleFileWriter
This allows this crate to be used outside of Copper (ie. decoupling it from the unifiedlog.

Statics§

EXTRA_TEXT_LOGGER

Functions§

log
Function called from generated code to log data. It moves entry by design, it will be absorbed in the queue.
log_debug_mode
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/static.EXTRA_TEXT_LOGGER.html b/cu29_log_runtime/static.EXTRA_TEXT_LOGGER.html index 5fcdf907c..d01d7c6a2 100644 --- a/cu29_log_runtime/static.EXTRA_TEXT_LOGGER.html +++ b/cu29_log_runtime/static.EXTRA_TEXT_LOGGER.html @@ -1 +1 @@ -EXTRA_TEXT_LOGGER in cu29_log_runtime - Rust

Static EXTRA_TEXT_LOGGER

Source
pub static EXTRA_TEXT_LOGGER: RwLock<Option<Box<dyn Log + 'static>>>
\ No newline at end of file +EXTRA_TEXT_LOGGER in cu29_log_runtime - Rust

Static EXTRA_TEXT_LOGGER

Source
pub static EXTRA_TEXT_LOGGER: RwLock<Option<Box<dyn Log + 'static>>>
\ No newline at end of file diff --git a/cu29_log_runtime/struct.LoggerRuntime.html b/cu29_log_runtime/struct.LoggerRuntime.html index 9ce1512d8..9a28bae79 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

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

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 cb0722e04..5421a89ed 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

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

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 b804fe2e6..e20a013c9 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

Struct OwningIoWriter

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

Implementations§

Source§

impl<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

Struct OwningIoWriter

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

Implementations§

Source§

impl<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 77c2b2832..ab244f04f 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

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

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 c66e4812e..719c0dfc5 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.default_as_true.html b/cu29_rendercfg/config/fn.default_as_true.html index 95c4a27ee..f142922c7 100644 --- a/cu29_rendercfg/config/fn.default_as_true.html +++ b/cu29_rendercfg/config/fn.default_as_true.html @@ -1 +1 @@ -default_as_true in cu29_rendercfg::config - Rust

Function default_as_true

Source
fn default_as_true() -> bool
\ No newline at end of file +default_as_true in cu29_rendercfg::config - Rust

Function default_as_true

Source
fn default_as_true() -> bool
\ 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 dc25e1363..781adfd3e 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

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

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/fn.read_configuration_str.html b/cu29_rendercfg/config/fn.read_configuration_str.html index f73da39a2..44cb917e4 100644 --- a/cu29_rendercfg/config/fn.read_configuration_str.html +++ b/cu29_rendercfg/config/fn.read_configuration_str.html @@ -1,2 +1,2 @@ -read_configuration_str in cu29_rendercfg::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(config_content: String) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a String.

+read_configuration_str in cu29_rendercfg::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(config_content: String) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a String.

\ No newline at end of file diff --git a/cu29_rendercfg/config/index.html b/cu29_rendercfg/config/index.html index ebce11d8e..8ef4a3172 100644 --- a/cu29_rendercfg/config/index.html +++ b/cu29_rendercfg/config/index.html @@ -1,4 +1,4 @@ -cu29_rendercfg::config - Rust

Module config

Source
Expand description

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

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 71aefdd69..e7af474e8 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

Struct Cnx

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

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 163321592..111897184 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

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

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 diff --git a/cu29_rendercfg/config/struct.CuConfig.html b/cu29_rendercfg/config/struct.CuConfig.html index 9d26710e4..ff26848ed 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

Struct CuConfig

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

Struct CuConfig

Source
pub struct CuConfig {
     pub graph: StableDiGraph<Node, Cnx, u32>,
     pub monitor: Option<MonitorConfig>,
     pub logging: Option<LoggingConfig>,
diff --git a/cu29_rendercfg/config/struct.CuConfigRepresentation.html b/cu29_rendercfg/config/struct.CuConfigRepresentation.html
index 4f657a047..af2bc095c 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

Struct CuConfigRepresentation

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

Struct CuConfigRepresentation

Source
struct CuConfigRepresentation {
     tasks: Vec<Node>,
     cnx: Vec<Cnx>,
     monitor: Option<MonitorConfig>,
diff --git a/cu29_rendercfg/config/struct.LoggingConfig.html b/cu29_rendercfg/config/struct.LoggingConfig.html
index 153828fcd..88b502bdc 100644
--- a/cu29_rendercfg/config/struct.LoggingConfig.html
+++ b/cu29_rendercfg/config/struct.LoggingConfig.html
@@ -1,4 +1,4 @@
-LoggingConfig in cu29_rendercfg::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
+LoggingConfig in cu29_rendercfg::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
     pub slab_size_mib: Option<u64>,
     pub section_size_mib: Option<u64>,
     pub enable_task_logging: bool,
diff --git a/cu29_rendercfg/config/struct.MonitorConfig.html b/cu29_rendercfg/config/struct.MonitorConfig.html
index 34791b476..e0f52155d 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

Struct MonitorConfig

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

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 191edfe2b..d6781055c 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

Struct Node

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

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 dd9365a72..24b98494d 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

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

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 diff --git a/cu29_rendercfg/config/type.NodeId.html b/cu29_rendercfg/config/type.NodeId.html index 1cb725242..6ef1967c7 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

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

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 1b29d6edb..fda367f69 100644 --- a/cu29_rendercfg/enum.UnifiedLogType.html +++ b/cu29_rendercfg/enum.UnifiedLogType.html @@ -1,4 +1,4 @@ -UnifiedLogType in cu29_rendercfg - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
+UnifiedLogType in cu29_rendercfg - Rust

Enum UnifiedLogType

pub enum UnifiedLogType {
     Empty,
     StructuredLogLine,
     CopperList,
diff --git a/cu29_rendercfg/fn.main.html b/cu29_rendercfg/fn.main.html
index 077c01353..d166f35f6 100644
--- a/cu29_rendercfg/fn.main.html
+++ b/cu29_rendercfg/fn.main.html
@@ -1,2 +1,2 @@
-main in cu29_rendercfg - Rust

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

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 781bf3968..72cd85757 100644 --- a/cu29_rendercfg/index.html +++ b/cu29_rendercfg/index.html @@ -1,4 +1,4 @@ -cu29_rendercfg - Rust

Crate cu29_rendercfg

Source

Modules§

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

Crate cu29_rendercfg

Source

Modules§

config 🔒
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.

Structs§

Args 🔒
CuError
Common copper Error type.

Enums§

UnifiedLogType
Defines the types of what can be logged in the unified logger.

Traits§

CopperListTuple
A CopperListTuple needs to be encodable, decodable and fixed size in memory.
WriteStream
Defines a basic write, append only stream trait to be able to log or send serializable objects.

Functions§

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

Type Aliases§

CuResult
\ No newline at end of file diff --git a/cu29_rendercfg/struct.Args.html b/cu29_rendercfg/struct.Args.html index 3bdac4181..35c85407c 100644 --- a/cu29_rendercfg/struct.Args.html +++ b/cu29_rendercfg/struct.Args.html @@ -1,4 +1,4 @@ -Args in cu29_rendercfg - Rust

Struct Args

Source
pub(crate) struct Args {
+Args in cu29_rendercfg - Rust

Struct Args

Source
pub(crate) struct Args {
     pub(crate) config: PathBuf,
     pub(crate) open: bool,
 }

Fields§

§config: PathBuf

Config file name

diff --git a/cu29_rendercfg/struct.CuError.html b/cu29_rendercfg/struct.CuError.html index c497b62df..60b84511c 100644 --- a/cu29_rendercfg/struct.CuError.html +++ b/cu29_rendercfg/struct.CuError.html @@ -1,4 +1,4 @@ -CuError in cu29_rendercfg - Rust

Struct CuError

pub struct CuError {
+CuError in cu29_rendercfg - Rust

Struct CuError

pub struct CuError {
     pub(crate) message: String,
     pub(crate) cause: Option<String>,
 }
Expand description

Common copper Error type.

diff --git a/cu29_rendercfg/trait.CopperListTuple.html b/cu29_rendercfg/trait.CopperListTuple.html index df1bf6dc0..5ef9fefea 100644 --- a/cu29_rendercfg/trait.CopperListTuple.html +++ b/cu29_rendercfg/trait.CopperListTuple.html @@ -1,4 +1,4 @@ -CopperListTuple in cu29_rendercfg - Rust

Trait CopperListTuple

pub trait CopperListTuple:
+CopperListTuple in cu29_rendercfg - Rust

Trait CopperListTuple

pub trait CopperListTuple:
     Sized
     + Encode
     + Decode
diff --git a/cu29_rendercfg/trait.WriteStream.html b/cu29_rendercfg/trait.WriteStream.html
index c1a115aec..2599c0375 100644
--- a/cu29_rendercfg/trait.WriteStream.html
+++ b/cu29_rendercfg/trait.WriteStream.html
@@ -1,4 +1,4 @@
-WriteStream in cu29_rendercfg - Rust

Trait WriteStream

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

Trait WriteStream

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

Type Alias CuResult

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

Aliased Type§

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

Type Alias CuResult

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_runtime/all.html b/cu29_runtime/all.html index cdd6f1a1c..031245820 100644 --- a/cu29_runtime/all.html +++ b/cu29_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_runtime/config/fn.read_configuration.html b/cu29_runtime/config/fn.read_configuration.html index 8c5108029..16762c7ff 100644 --- a/cu29_runtime/config/fn.read_configuration.html +++ b/cu29_runtime/config/fn.read_configuration.html @@ -1,2 +1,2 @@ -read_configuration in cu29_runtime::config - Rust

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_runtime::config - Rust

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_runtime/config/fn.read_configuration_str.html b/cu29_runtime/config/fn.read_configuration_str.html index 4fcc90531..58f079142 100644 --- a/cu29_runtime/config/fn.read_configuration_str.html +++ b/cu29_runtime/config/fn.read_configuration_str.html @@ -1,2 +1,2 @@ -read_configuration_str in cu29_runtime::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(config_content: String) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a String.

+read_configuration_str in cu29_runtime::config - Rust

Function read_configuration_str

Source
pub fn read_configuration_str(config_content: String) -> CuResult<CuConfig>
Expand description

Read a copper configuration from a String.

\ No newline at end of file diff --git a/cu29_runtime/config/index.html b/cu29_runtime/config/index.html index 5bca57503..3e07824ad 100644 --- a/cu29_runtime/config/index.html +++ b/cu29_runtime/config/index.html @@ -1,4 +1,4 @@ -cu29_runtime::config - Rust

Module config

Source
Expand description

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

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_runtime/config/struct.Cnx.html b/cu29_runtime/config/struct.Cnx.html index ef0ca9c2f..9eac43365 100644 --- a/cu29_runtime/config/struct.Cnx.html +++ b/cu29_runtime/config/struct.Cnx.html @@ -1,4 +1,4 @@ -Cnx in cu29_runtime::config - Rust

Struct Cnx

Source
pub struct Cnx {
+Cnx in cu29_runtime::config - Rust

Struct Cnx

Source
pub struct Cnx {
     pub msg: String,
     pub batch: Option<u32>,
     pub store: Option<bool>,
diff --git a/cu29_runtime/config/struct.ComponentConfig.html b/cu29_runtime/config/struct.ComponentConfig.html
index bd5475c3e..18221c395 100644
--- a/cu29_runtime/config/struct.ComponentConfig.html
+++ b/cu29_runtime/config/struct.ComponentConfig.html
@@ -1,4 +1,4 @@
-ComponentConfig in cu29_runtime::config - Rust

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_runtime::config - Rust

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 diff --git a/cu29_runtime/config/struct.CuConfig.html b/cu29_runtime/config/struct.CuConfig.html index 935eae689..a3fa4eb05 100644 --- a/cu29_runtime/config/struct.CuConfig.html +++ b/cu29_runtime/config/struct.CuConfig.html @@ -1,4 +1,4 @@ -CuConfig in cu29_runtime::config - Rust

Struct CuConfig

Source
pub struct CuConfig {
+CuConfig in cu29_runtime::config - Rust

Struct CuConfig

Source
pub struct CuConfig {
     pub graph: StableDiGraph<Node, Cnx, NodeId>,
     pub monitor: Option<MonitorConfig>,
     pub logging: Option<LoggingConfig>,
diff --git a/cu29_runtime/config/struct.LoggingConfig.html b/cu29_runtime/config/struct.LoggingConfig.html
index 355d9081f..e32e11805 100644
--- a/cu29_runtime/config/struct.LoggingConfig.html
+++ b/cu29_runtime/config/struct.LoggingConfig.html
@@ -1,4 +1,4 @@
-LoggingConfig in cu29_runtime::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
+LoggingConfig in cu29_runtime::config - Rust

Struct LoggingConfig

Source
pub struct LoggingConfig {
     pub slab_size_mib: Option<u64>,
     pub section_size_mib: Option<u64>,
     pub enable_task_logging: bool,
diff --git a/cu29_runtime/config/struct.MonitorConfig.html b/cu29_runtime/config/struct.MonitorConfig.html
index c1b0d77e1..149ab0abb 100644
--- a/cu29_runtime/config/struct.MonitorConfig.html
+++ b/cu29_runtime/config/struct.MonitorConfig.html
@@ -1,4 +1,4 @@
-MonitorConfig in cu29_runtime::config - Rust

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_runtime::config - Rust

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_runtime/config/struct.Node.html b/cu29_runtime/config/struct.Node.html index b6378b8fe..b7ca84a3f 100644 --- a/cu29_runtime/config/struct.Node.html +++ b/cu29_runtime/config/struct.Node.html @@ -1,4 +1,4 @@ -Node in cu29_runtime::config - Rust

Struct Node

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

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

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_runtime/config/struct.Value.html b/cu29_runtime/config/struct.Value.html index e3fc94699..7f8830436 100644 --- a/cu29_runtime/config/struct.Value.html +++ b/cu29_runtime/config/struct.Value.html @@ -1,4 +1,4 @@ -Value in cu29_runtime::config - Rust

Struct Value

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

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

+Value in cu29_runtime::config - Rust

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 diff --git a/cu29_runtime/config/type.NodeId.html b/cu29_runtime/config/type.NodeId.html index 9cd2a9b58..8d91ff34f 100644 --- a/cu29_runtime/config/type.NodeId.html +++ b/cu29_runtime/config/type.NodeId.html @@ -1,3 +1,3 @@ -NodeId in cu29_runtime::config - Rust

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_runtime::config - Rust

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_runtime/copperlist/enum.CopperListState.html b/cu29_runtime/copperlist/enum.CopperListState.html index 7c278c89f..3ced26ae2 100644 --- a/cu29_runtime/copperlist/enum.CopperListState.html +++ b/cu29_runtime/copperlist/enum.CopperListState.html @@ -1,4 +1,4 @@ -CopperListState in cu29_runtime::copperlist - Rust

Enum CopperListState

Source
pub enum CopperListState {
+CopperListState in cu29_runtime::copperlist - Rust

Enum CopperListState

Source
pub enum CopperListState {
     Free,
     Initialized,
     Processing,
diff --git a/cu29_runtime/copperlist/index.html b/cu29_runtime/copperlist/index.html
index 87f3f2470..fc352f3b9 100644
--- a/cu29_runtime/copperlist/index.html
+++ b/cu29_runtime/copperlist/index.html
@@ -1,4 +1,4 @@
-cu29_runtime::copperlist - Rust

Module copperlist

Source
Expand description

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

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§

CopperLiskMask
Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.
CopperList
CuListsManager
This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. diff --git a/cu29_runtime/copperlist/struct.CopperLiskMask.html b/cu29_runtime/copperlist/struct.CopperLiskMask.html index cc71f9b3d..8334f411d 100644 --- a/cu29_runtime/copperlist/struct.CopperLiskMask.html +++ b/cu29_runtime/copperlist/struct.CopperLiskMask.html @@ -1,4 +1,4 @@ -CopperLiskMask in cu29_runtime::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. +CopperLiskMask in cu29_runtime::copperlist - Rust

Struct CopperLiskMask

Source
pub struct CopperLiskMask { /* private fields */ }
Expand description

Not implemented yet. This mask will be used to for example filter out necessary regions of a copper list between remote systems.

Trait Implementations§

Source§

impl<'__de> BorrowDecode<'__de> for CopperLiskMask

Source§

fn borrow_decode<__D: BorrowDecoder<'__de>>( decoder: &mut __D, diff --git a/cu29_runtime/copperlist/struct.CopperList.html b/cu29_runtime/copperlist/struct.CopperList.html index 007149201..31f5d0c02 100644 --- a/cu29_runtime/copperlist/struct.CopperList.html +++ b/cu29_runtime/copperlist/struct.CopperList.html @@ -1,4 +1,4 @@ -CopperList in cu29_runtime::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P: CopperListTuple> {
+CopperList in cu29_runtime::copperlist - Rust

Struct CopperList

Source
pub struct CopperList<P: CopperListTuple> {
     pub id: u32,
     pub msgs: P,
     /* private fields */
diff --git a/cu29_runtime/copperlist/struct.CuListsManager.html b/cu29_runtime/copperlist/struct.CuListsManager.html
index ceb583771..b04874607 100644
--- a/cu29_runtime/copperlist/struct.CuListsManager.html
+++ b/cu29_runtime/copperlist/struct.CuListsManager.html
@@ -1,4 +1,4 @@
-CuListsManager in cu29_runtime::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P: CopperListTuple, const N: usize> { /* private fields */ }
Expand description

This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. +CuListsManager in cu29_runtime::copperlist - Rust

Struct CuListsManager

Source
pub struct CuListsManager<P: CopperListTuple, const N: usize> { /* private fields */ }
Expand description

This structure maintains the entire memory needed by Copper for one loop for the inter tasks communication within a process. P or Payload is typically a Tuple of various types of messages that are exchanged between tasks. N is the maximum number of in flight Copper List the runtime can support.

Implementations§

Source§

impl<P: CopperListTuple, const N: usize> CuListsManager<P, N>

Source

pub fn new() -> Self

Source

pub fn len(&self) -> usize

Returns the current number of elements in the queue.

diff --git a/cu29_runtime/copperlist/type.AscIter.html b/cu29_runtime/copperlist/type.AscIter.html index 921464763..9a7dc8459 100644 --- a/cu29_runtime/copperlist/type.AscIter.html +++ b/cu29_runtime/copperlist/type.AscIter.html @@ -1 +1 @@ -AscIter in cu29_runtime::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file +AscIter in cu29_runtime::copperlist - Rust

Type Alias AscIter

Source
pub type AscIter<'a, T> = Chain<Iter<'a, T>, Iter<'a, T>>;

Aliased Type§

struct AscIter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29_runtime/copperlist/type.AscIterMut.html b/cu29_runtime/copperlist/type.AscIterMut.html index bf43ab4ec..823b5bf50 100644 --- a/cu29_runtime/copperlist/type.AscIterMut.html +++ b/cu29_runtime/copperlist/type.AscIterMut.html @@ -1 +1 @@ -AscIterMut in cu29_runtime::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file +AscIterMut in cu29_runtime::copperlist - Rust

Type Alias AscIterMut

Source
pub type AscIterMut<'a, T> = Chain<IterMut<'a, T>, IterMut<'a, T>>;

Aliased Type§

struct AscIterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29_runtime/copperlist/type.Iter.html b/cu29_runtime/copperlist/type.Iter.html index 693734cb1..06a5aeeeb 100644 --- a/cu29_runtime/copperlist/type.Iter.html +++ b/cu29_runtime/copperlist/type.Iter.html @@ -1 +1 @@ -Iter in cu29_runtime::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file +Iter in cu29_runtime::copperlist - Rust

Type Alias Iter

Source
pub type Iter<'a, T> = Chain<Rev<Iter<'a, T>>, Rev<Iter<'a, T>>>;

Aliased Type§

struct Iter<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29_runtime/copperlist/type.IterMut.html b/cu29_runtime/copperlist/type.IterMut.html index b3a6e357a..8367d7f99 100644 --- a/cu29_runtime/copperlist/type.IterMut.html +++ b/cu29_runtime/copperlist/type.IterMut.html @@ -1 +1 @@ -IterMut in cu29_runtime::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file +IterMut in cu29_runtime::copperlist - Rust

Type Alias IterMut

Source
pub type IterMut<'a, T> = Chain<Rev<IterMut<'a, T>>, Rev<IterMut<'a, T>>>;

Aliased Type§

struct IterMut<'a, T> { /* private fields */ }
\ No newline at end of file diff --git a/cu29_runtime/curuntime/enum.CuExecutionUnit.html b/cu29_runtime/curuntime/enum.CuExecutionUnit.html index dc83debad..872fecdad 100644 --- a/cu29_runtime/curuntime/enum.CuExecutionUnit.html +++ b/cu29_runtime/curuntime/enum.CuExecutionUnit.html @@ -1,4 +1,4 @@ -CuExecutionUnit in cu29_runtime::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
+CuExecutionUnit in cu29_runtime::curuntime - Rust

Enum CuExecutionUnit

Source
pub enum CuExecutionUnit {
     Step(CuExecutionStep),
     Loop(CuExecutionLoop),
 }
Expand description

This structure represents a step in the execution plan.

diff --git a/cu29_runtime/curuntime/enum.CuTaskType.html b/cu29_runtime/curuntime/enum.CuTaskType.html index bac56a3b6..f053e7eed 100644 --- a/cu29_runtime/curuntime/enum.CuTaskType.html +++ b/cu29_runtime/curuntime/enum.CuTaskType.html @@ -1,4 +1,4 @@ -CuTaskType in cu29_runtime::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
+CuTaskType in cu29_runtime::curuntime - Rust

Enum CuTaskType

Source
pub enum CuTaskType {
     Source,
     Regular,
     Sink,
diff --git a/cu29_runtime/curuntime/fn.compute_runtime_plan.html b/cu29_runtime/curuntime/fn.compute_runtime_plan.html
index d02e77236..f0af4352c 100644
--- a/cu29_runtime/curuntime/fn.compute_runtime_plan.html
+++ b/cu29_runtime/curuntime/fn.compute_runtime_plan.html
@@ -1,3 +1,3 @@
-compute_runtime_plan in cu29_runtime::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(config: &CuConfig) -> CuResult<CuExecutionLoop>
Expand description

This is the main heuristics to compute an execution plan at compilation time. +compute_runtime_plan in cu29_runtime::curuntime - Rust

Function compute_runtime_plan

Source
pub fn compute_runtime_plan(config: &CuConfig) -> CuResult<CuExecutionLoop>
Expand description

This is the main heuristics to compute an execution plan at compilation time. TODO: Make that heuristic pluggable.

\ No newline at end of file diff --git a/cu29_runtime/curuntime/fn.find_task_type_for_id.html b/cu29_runtime/curuntime/fn.find_task_type_for_id.html index 559943395..5367ae7c7 100644 --- a/cu29_runtime/curuntime/fn.find_task_type_for_id.html +++ b/cu29_runtime/curuntime/fn.find_task_type_for_id.html @@ -1,4 +1,4 @@ -find_task_type_for_id in cu29_runtime::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
+find_task_type_for_id in cu29_runtime::curuntime - Rust

Function find_task_type_for_id

Source
pub fn find_task_type_for_id(
     graph: &StableDiGraph<Node, Cnx, NodeId>,
     node_id: NodeId,
 ) -> CuTaskType
\ No newline at end of file diff --git a/cu29_runtime/curuntime/index.html b/cu29_runtime/curuntime/index.html index d216b42f1..fb91cb974 100644 --- a/cu29_runtime/curuntime/index.html +++ b/cu29_runtime/curuntime/index.html @@ -1,4 +1,4 @@ -cu29_runtime::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. +cu29_runtime::curuntime - Rust

Module curuntime

Source
Expand description

CuRuntime is the heart of what copper is running on the robot. It is exposed to the user via the copper_runtime macro injecting it as a field in their application struct.

Structs§

CopperContext
Just a simple struct to hold the various bits needed to run a Copper application.
CuExecutionLoop
This structure represents a loop in the execution plan. It is used to represent a sequence of Execution units (loop or steps) that are executed diff --git a/cu29_runtime/curuntime/struct.CopperContext.html b/cu29_runtime/curuntime/struct.CopperContext.html index 496a3ea75..f3520801f 100644 --- a/cu29_runtime/curuntime/struct.CopperContext.html +++ b/cu29_runtime/curuntime/struct.CopperContext.html @@ -1,4 +1,4 @@ -CopperContext in cu29_runtime::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
+CopperContext in cu29_runtime::curuntime - Rust

Struct CopperContext

Source
pub struct CopperContext {
     pub unified_logger: Arc<Mutex<UnifiedLoggerWrite>>,
     pub logger_runtime: LoggerRuntime,
     pub clock: RobotClock,
diff --git a/cu29_runtime/curuntime/struct.CuExecutionLoop.html b/cu29_runtime/curuntime/struct.CuExecutionLoop.html
index 66a23cf84..37f82237a 100644
--- a/cu29_runtime/curuntime/struct.CuExecutionLoop.html
+++ b/cu29_runtime/curuntime/struct.CuExecutionLoop.html
@@ -1,4 +1,4 @@
-CuExecutionLoop in cu29_runtime::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
+CuExecutionLoop in cu29_runtime::curuntime - Rust

Struct CuExecutionLoop

Source
pub struct CuExecutionLoop {
     pub steps: Vec<CuExecutionUnit>,
     pub loop_count: Option<u32>,
 }
Expand description

This structure represents a loop in the execution plan. diff --git a/cu29_runtime/curuntime/struct.CuExecutionStep.html b/cu29_runtime/curuntime/struct.CuExecutionStep.html index 3a4b6eed6..22ad49065 100644 --- a/cu29_runtime/curuntime/struct.CuExecutionStep.html +++ b/cu29_runtime/curuntime/struct.CuExecutionStep.html @@ -1,4 +1,4 @@ -CuExecutionStep in cu29_runtime::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
+CuExecutionStep in cu29_runtime::curuntime - Rust

Struct CuExecutionStep

Source
pub struct CuExecutionStep {
     pub node_id: NodeId,
     pub node: Node,
     pub task_type: CuTaskType,
diff --git a/cu29_runtime/curuntime/struct.CuRuntime.html b/cu29_runtime/curuntime/struct.CuRuntime.html
index 521442b51..4e6a39c20 100644
--- a/cu29_runtime/curuntime/struct.CuRuntime.html
+++ b/cu29_runtime/curuntime/struct.CuRuntime.html
@@ -1,4 +1,4 @@
-CuRuntime in cu29_runtime::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P: CopperListTuple, M: CuMonitor, const NBCL: usize> {
+CuRuntime in cu29_runtime::curuntime - Rust

Struct CuRuntime

Source
pub struct CuRuntime<CT, P: CopperListTuple, M: CuMonitor, const NBCL: usize> {
     pub tasks: CT,
     pub monitor: M,
     pub copper_lists_manager: CuListsManager<P, NBCL>,
diff --git a/cu29_runtime/cutask/index.html b/cu29_runtime/cutask/index.html
index 78c0f7d3d..1f9feab2e 100644
--- a/cu29_runtime/cutask/index.html
+++ b/cu29_runtime/cutask/index.html
@@ -1,4 +1,4 @@
-cu29_runtime::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement +cu29_runtime::cutask - Rust

Module cutask

Source
Expand description

This module contains all the main definition of the traits you need to implement or interact with to create a Copper task.

Structs§

CuCompactString
CuMsg
CuMsg is the envelope holding the msg payload and the metadata between tasks.
CuMsgMetadata
CuMsgMetadata is a structure that contains metadata common to all CuMsgs.

Traits§

CuMsgPack
CuMsgPayload
CuSinkTask
A Sink Task is a task that only consumes messages. For example drivers for actuators are Sink Tasks.
CuSrcTask
A Src Task is a task that only produces messages. For example drivers for sensors are Src Tasks. They are in push mode from the runtime. diff --git a/cu29_runtime/cutask/struct.CuCompactString.html b/cu29_runtime/cutask/struct.CuCompactString.html index 3afa8c7b6..06c6c1270 100644 --- a/cu29_runtime/cutask/struct.CuCompactString.html +++ b/cu29_runtime/cutask/struct.CuCompactString.html @@ -1,4 +1,4 @@ -CuCompactString in cu29_runtime::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

Source§

fn borrow_decode<D: BorrowDecoder<'de>>( +CuCompactString in cu29_runtime::cutask - Rust

Struct CuCompactString

Source
pub struct CuCompactString(pub CompactString);

Tuple Fields§

§0: CompactString

Trait Implementations§

Source§

impl<'de> BorrowDecode<'de> for CuCompactString

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 CuCompactString

Source§

fn clone(&self) -> CuCompactString

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 CuCompactString

Source§

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

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

impl Decode for CuCompactString

Source§

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

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

impl Default for CuCompactString

Source§

fn default() -> CuCompactString

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

impl<'de> Deserialize<'de> for CuCompactString

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 Encode for CuCompactString

Source§

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

Encode a given type.
Source§

impl PartialEq for CuCompactString

Source§

fn eq(&self, other: &CuCompactString) -> 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, diff --git a/cu29_runtime/cutask/struct.CuMsg.html b/cu29_runtime/cutask/struct.CuMsg.html index 11c274f4d..37388f0d5 100644 --- a/cu29_runtime/cutask/struct.CuMsg.html +++ b/cu29_runtime/cutask/struct.CuMsg.html @@ -1,4 +1,4 @@ -CuMsg in cu29_runtime::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where +CuMsg in cu29_runtime::cutask - Rust

Struct CuMsg

Source
pub struct CuMsg<T>
where T: CuMsgPayload,
{ pub metadata: CuMsgMetadata, /* private fields */ diff --git a/cu29_runtime/cutask/struct.CuMsgMetadata.html b/cu29_runtime/cutask/struct.CuMsgMetadata.html index 2c8c6d0d3..5cd0590dd 100644 --- a/cu29_runtime/cutask/struct.CuMsgMetadata.html +++ b/cu29_runtime/cutask/struct.CuMsgMetadata.html @@ -1,4 +1,4 @@ -CuMsgMetadata in cu29_runtime::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
+CuMsgMetadata in cu29_runtime::cutask - Rust

Struct CuMsgMetadata

Source
pub struct CuMsgMetadata {
     pub process_time: PartialCuTimeRange,
     pub tov: Tov,
     pub status_txt: CuCompactString,
diff --git a/cu29_runtime/cutask/trait.CuMsgPack.html b/cu29_runtime/cutask/trait.CuMsgPack.html
index ccf08f2a1..1b117f81d 100644
--- a/cu29_runtime/cutask/trait.CuMsgPack.html
+++ b/cu29_runtime/cutask/trait.CuMsgPack.html
@@ -1 +1 @@
-CuMsgPack in cu29_runtime::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl, T4: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>, &'cl CuMsg<T4>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl, T4: CuMsgPayload + 'cl, T5: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>, &'cl CuMsg<T4>, &'cl CuMsg<T5>)

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for (&'cl CuMsg<T>,)

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for (&'cl mut CuMsg<T>,)

Implementors§

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for &'cl CuMsg<T>

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for &'cl mut CuMsg<T>

\ No newline at end of file +CuMsgPack in cu29_runtime::cutask - Rust

Trait CuMsgPack

Source
pub trait CuMsgPack<'cl> { }

Implementations on Foreign Types§

Source§

impl CuMsgPack<'_> for ()

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl, T4: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>, &'cl CuMsg<T4>)

Source§

impl<'cl, T1: CuMsgPayload + 'cl, T2: CuMsgPayload + 'cl, T3: CuMsgPayload + 'cl, T4: CuMsgPayload + 'cl, T5: CuMsgPayload + 'cl> CuMsgPack<'cl> for (&'cl CuMsg<T1>, &'cl CuMsg<T2>, &'cl CuMsg<T3>, &'cl CuMsg<T4>, &'cl CuMsg<T5>)

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for (&'cl CuMsg<T>,)

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for (&'cl mut CuMsg<T>,)

Implementors§

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for &'cl CuMsg<T>

Source§

impl<'cl, T: CuMsgPayload> CuMsgPack<'cl> for &'cl mut CuMsg<T>

\ No newline at end of file diff --git a/cu29_runtime/cutask/trait.CuMsgPayload.html b/cu29_runtime/cutask/trait.CuMsgPayload.html index a1db8b771..ccb03b018 100644 --- a/cu29_runtime/cutask/trait.CuMsgPayload.html +++ b/cu29_runtime/cutask/trait.CuMsgPayload.html @@ -1,4 +1,4 @@ -CuMsgPayload in cu29_runtime::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
+CuMsgPayload in cu29_runtime::cutask - Rust

Trait CuMsgPayload

Source
pub trait CuMsgPayload:
     Default
     + Debug
     + Clone
diff --git a/cu29_runtime/cutask/trait.CuSinkTask.html b/cu29_runtime/cutask/trait.CuSinkTask.html
index bc30a52b4..ab757d1b3 100644
--- a/cu29_runtime/cutask/trait.CuSinkTask.html
+++ b/cu29_runtime/cutask/trait.CuSinkTask.html
@@ -1,4 +1,4 @@
-CuSinkTask in cu29_runtime::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
+CuSinkTask in cu29_runtime::cutask - Rust

Trait CuSinkTask

Source
pub trait CuSinkTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29_runtime/cutask/trait.CuSrcTask.html b/cu29_runtime/cutask/trait.CuSrcTask.html
index 62cdbc084..1cb9d5473 100644
--- a/cu29_runtime/cutask/trait.CuSrcTask.html
+++ b/cu29_runtime/cutask/trait.CuSrcTask.html
@@ -1,4 +1,4 @@
-CuSrcTask in cu29_runtime::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
+CuSrcTask in cu29_runtime::cutask - Rust

Trait CuSrcTask

Source
pub trait CuSrcTask<'cl>: Freezable {
     type Output: CuMsgPack<'cl>;
 
     // Required methods
diff --git a/cu29_runtime/cutask/trait.CuTask.html b/cu29_runtime/cutask/trait.CuTask.html
index 007fb66d9..b2542458e 100644
--- a/cu29_runtime/cutask/trait.CuTask.html
+++ b/cu29_runtime/cutask/trait.CuTask.html
@@ -1,4 +1,4 @@
-CuTask in cu29_runtime::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
+CuTask in cu29_runtime::cutask - Rust

Trait CuTask

Source
pub trait CuTask<'cl>: Freezable {
     type Input: CuMsgPack<'cl>;
     type Output: CuMsgPack<'cl>;
 
diff --git a/cu29_runtime/cutask/trait.Freezable.html b/cu29_runtime/cutask/trait.Freezable.html
index d94241ec7..6cc34ee5f 100644
--- a/cu29_runtime/cutask/trait.Freezable.html
+++ b/cu29_runtime/cutask/trait.Freezable.html
@@ -1,4 +1,4 @@
-Freezable in cu29_runtime::cutask - Rust

Trait Freezable

Source
pub trait Freezable {
+Freezable in cu29_runtime::cutask - Rust

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> { ... }
diff --git a/cu29_runtime/index.html b/cu29_runtime/index.html
index f790457e7..052c36559 100644
--- a/cu29_runtime/index.html
+++ b/cu29_runtime/index.html
@@ -1,8 +1,9 @@
-cu29_runtime - Rust

Crate cu29_runtime

Source
Expand description
logo +cu29_runtime - Rust

Crate cu29_runtime

Source
Expand description
logo

§

§Copper

copper GitHub last commit +dependency status License Discord

Copper is a user-friendly runtime engine for creating fast and reliable robots. Copper is to robots what a diff --git a/cu29_runtime/macro.input_msg.html b/cu29_runtime/macro.input_msg.html index d8da03af5..230ead25b 100644 --- a/cu29_runtime/macro.input_msg.html +++ b/cu29_runtime/macro.input_msg.html @@ -1,4 +1,4 @@ -input_msg in cu29_runtime - Rust

Macro input_msg

Source
macro_rules! input_msg {
+input_msg in cu29_runtime - Rust

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_runtime/macro.output_msg.html b/cu29_runtime/macro.output_msg.html index c9ca056a3..05f4fea13 100644 --- a/cu29_runtime/macro.output_msg.html +++ b/cu29_runtime/macro.output_msg.html @@ -1,3 +1,3 @@ -output_msg in cu29_runtime - Rust

Macro output_msg

Source
macro_rules! output_msg {
+output_msg in cu29_runtime - Rust

Macro output_msg

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

Enum CuTaskState

Source
pub enum CuTaskState {
+CuTaskState in cu29_runtime::monitoring - Rust

Enum CuTaskState

Source
pub enum CuTaskState {
     Start,
     Preprocess,
     Process,
diff --git a/cu29_runtime/monitoring/enum.Decision.html b/cu29_runtime/monitoring/enum.Decision.html
index 7d0ce589d..31cc9434c 100644
--- a/cu29_runtime/monitoring/enum.Decision.html
+++ b/cu29_runtime/monitoring/enum.Decision.html
@@ -1,4 +1,4 @@
-Decision in cu29_runtime::monitoring - Rust

Enum Decision

Source
pub enum Decision {
+Decision in cu29_runtime::monitoring - Rust

Enum Decision

Source
pub enum Decision {
     Abort,
     Ignore,
     Shutdown,
diff --git a/cu29_runtime/monitoring/index.html b/cu29_runtime/monitoring/index.html
index 8176fe222..463bbb71b 100644
--- a/cu29_runtime/monitoring/index.html
+++ b/cu29_runtime/monitoring/index.html
@@ -1,4 +1,4 @@
-cu29_runtime::monitoring - Rust

Module monitoring

Source
Expand description

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

+cu29_runtime::monitoring - Rust

Module monitoring

Source
Expand description

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

Structs§

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

Enums§

CuTaskState
The state of a task.
Decision
Monitor decision to be taken when a task errored out.

Statics§

GLOBAL

Traits§

CuMonitor
Trait to implement a monitoring task.
\ No newline at end of file diff --git a/cu29_runtime/monitoring/static.GLOBAL.html b/cu29_runtime/monitoring/static.GLOBAL.html index 825021b0d..64502eee6 100644 --- a/cu29_runtime/monitoring/static.GLOBAL.html +++ b/cu29_runtime/monitoring/static.GLOBAL.html @@ -1 +1 @@ -GLOBAL in cu29_runtime::monitoring - Rust

Static GLOBAL

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

Static GLOBAL

Source
pub static GLOBAL: CountingAllocator
\ No newline at end of file diff --git a/cu29_runtime/monitoring/struct.CountingAllocator.html b/cu29_runtime/monitoring/struct.CountingAllocator.html index 7e8e87b5e..bf8260ef5 100644 --- a/cu29_runtime/monitoring/struct.CountingAllocator.html +++ b/cu29_runtime/monitoring/struct.CountingAllocator.html @@ -1,4 +1,4 @@ -CountingAllocator in cu29_runtime::monitoring - Rust

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_runtime::monitoring - Rust

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_runtime/monitoring/struct.CuDurationStatistics.html b/cu29_runtime/monitoring/struct.CuDurationStatistics.html index f0d7be10d..c16f12ccd 100644 --- a/cu29_runtime/monitoring/struct.CuDurationStatistics.html +++ b/cu29_runtime/monitoring/struct.CuDurationStatistics.html @@ -1,4 +1,4 @@ -CuDurationStatistics in cu29_runtime::monitoring - Rust

Struct CuDurationStatistics

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

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

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 is_empty(&self) -> bool

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_runtime/monitoring/struct.LiveStatistics.html b/cu29_runtime/monitoring/struct.LiveStatistics.html index ae6e34964..51452748c 100644 --- a/cu29_runtime/monitoring/struct.LiveStatistics.html +++ b/cu29_runtime/monitoring/struct.LiveStatistics.html @@ -1,4 +1,4 @@ -LiveStatistics in cu29_runtime::monitoring - Rust

Struct LiveStatistics

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

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

+LiveStatistics in cu29_runtime::monitoring - Rust

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 is_empty(&self) -> bool

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_runtime/monitoring/struct.NoMonitor.html b/cu29_runtime/monitoring/struct.NoMonitor.html index ea3398f80..19f786c21 100644 --- a/cu29_runtime/monitoring/struct.NoMonitor.html +++ b/cu29_runtime/monitoring/struct.NoMonitor.html @@ -1,4 +1,4 @@ -NoMonitor in cu29_runtime::monitoring - Rust

Struct NoMonitor

Source
pub struct NoMonitor {}
Expand description

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

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: &CuConfig, _taskids: &'static [&'static str]) -> CuResult<Self>

Source§

fn process_copperlist(&self, _msgs: &[&CuMsgMetadata]) -> CuResult<()>

Callback that will be trigger at the end of every copperlist (before, on or after the serialization).
Source§

fn process_error( &self, diff --git a/cu29_runtime/monitoring/struct.ScopedAllocCounter.html b/cu29_runtime/monitoring/struct.ScopedAllocCounter.html index 5a0e5a866..7c8625370 100644 --- a/cu29_runtime/monitoring/struct.ScopedAllocCounter.html +++ b/cu29_runtime/monitoring/struct.ScopedAllocCounter.html @@ -1,4 +1,4 @@ -ScopedAllocCounter in cu29_runtime::monitoring - Rust

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_runtime::monitoring - Rust

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§

Source§

impl ScopedAllocCounter

Source

pub fn new() -> Self

Source

pub fn get_allocated(&self) -> usize

Returns the total number of bytes allocated in the current scope since the creation of this ScopedAllocCounter.

§Example
diff --git a/cu29_runtime/monitoring/trait.CuMonitor.html b/cu29_runtime/monitoring/trait.CuMonitor.html index 86c32b945..d72a46a0e 100644 --- a/cu29_runtime/monitoring/trait.CuMonitor.html +++ b/cu29_runtime/monitoring/trait.CuMonitor.html @@ -1,4 +1,4 @@ -CuMonitor in cu29_runtime::monitoring - Rust

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
+CuMonitor in cu29_runtime::monitoring - Rust

Trait CuMonitor

Source
pub trait CuMonitor: Sized {
     // Required methods
     fn new(
         config: &CuConfig,
diff --git a/cu29_runtime/payload/index.html b/cu29_runtime/payload/index.html
index 3119dc8b3..78cd04100 100644
--- a/cu29_runtime/payload/index.html
+++ b/cu29_runtime/payload/index.html
@@ -1 +1 @@
-cu29_runtime::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file +cu29_runtime::payload - Rust

Module payload

Source

Structs§

CuArray
Copper friendly wrapper for a fixed size array.
\ No newline at end of file diff --git a/cu29_runtime/payload/struct.CuArray.html b/cu29_runtime/payload/struct.CuArray.html index 973abb7ba..787d596c7 100644 --- a/cu29_runtime/payload/struct.CuArray.html +++ b/cu29_runtime/payload/struct.CuArray.html @@ -1,4 +1,4 @@ -CuArray in cu29_runtime::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

+CuArray in cu29_runtime::payload - Rust

Struct CuArray

Source
pub struct CuArray<T, const N: usize> { /* private fields */ }
Expand description

Copper friendly wrapper for a fixed size array.

Implementations§

Source§

impl<T, const N: usize> CuArray<T, N>

Source

pub fn new() -> Self

Source

pub fn fill_from_iter<I>(&mut self, iter: I)
where I: IntoIterator<Item = T>,

Source

pub fn len(&self) -> usize

Source

pub fn is_empty(&self) -> bool

Source

pub fn as_slice(&self) -> &[T]

Source

pub fn capacity(&self) -> usize

Trait Implementations§

Source§

impl<T: Clone, const N: usize> Clone for CuArray<T, N>

Source§

fn clone(&self) -> CuArray<T, N>

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<T: Debug, const N: usize> Debug for CuArray<T, N>

Source§

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

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

impl<T, const N: usize> Decode for CuArray<T, N>
where T: Decode,

Source§

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

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

impl<T: Default, const N: usize> Default for CuArray<T, N>

Source§

fn default() -> CuArray<T, N>

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

impl<T, const N: usize> Encode for CuArray<T, N>
where diff --git a/cu29_runtime/pool/enum.CuHandleInner.html b/cu29_runtime/pool/enum.CuHandleInner.html index 9fdf215a6..ef487dc0d 100644 --- a/cu29_runtime/pool/enum.CuHandleInner.html +++ b/cu29_runtime/pool/enum.CuHandleInner.html @@ -1,4 +1,4 @@ -CuHandleInner in cu29_runtime::pool - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T: Debug> {
+CuHandleInner in cu29_runtime::pool - Rust

Enum CuHandleInner

Source
pub enum CuHandleInner<T: Debug> {
     Pooled(ReusableOwned<T>),
     Detached(T),
 }
Expand description

A Handle to a Buffer. diff --git a/cu29_runtime/pool/fn.pools_statistics.html b/cu29_runtime/pool/fn.pools_statistics.html index d2d9f3fe5..ab3724e73 100644 --- a/cu29_runtime/pool/fn.pools_statistics.html +++ b/cu29_runtime/pool/fn.pools_statistics.html @@ -1,3 +1,3 @@ -pools_statistics in cu29_runtime::pool - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. +pools_statistics in cu29_runtime::pool - Rust

Function pools_statistics

Source
pub fn pools_statistics() -> SmallVec<[(ArrayString<64>, usize, usize, usize); 16]>
Expand description

Get the list of pools and their statistics. We use SmallVec here to avoid heap allocations while the stack is running.

\ No newline at end of file diff --git a/cu29_runtime/pool/index.html b/cu29_runtime/pool/index.html index 805c83a0d..aae04e5a3 100644 --- a/cu29_runtime/pool/index.html +++ b/cu29_runtime/pool/index.html @@ -1,4 +1,4 @@ -cu29_runtime::pool - Rust

Module pool

Source

Structs§

AlignedBuffer
A buffer that is aligned to a specific size with the Element of type E.
CuHandle
A shareable handle to an Array coming from a pool (either host or device).
CuHostMemoryPool
A pool of host memory buffers.

Enums§

CuHandleInner
A Handle to a Buffer. +cu29_runtime::pool - Rust

Module pool

Source

Structs§

AlignedBuffer
A buffer that is aligned to a specific size with the Element of type E.
CuHandle
A shareable handle to an Array coming from a pool (either host or device).
CuHostMemoryPool
A pool of host memory buffers.

Enums§

CuHandleInner
A Handle to a Buffer. For onboard usages, the buffer should be Pooled (ie, coming from a preallocated pool). The Detached version is for offline usages where we don’t really need a pool to deserialize them.

Traits§

ArrayLike
CuPool
A CuPool is a pool of buffers that can be shared between different parts of the code. Handles can be stored locally in the tasks and shared between them.
DeviceCuPool
A device memory pool can copy data from a device to a host memory pool on top.
ElementType
Basic Type that can be used in a buffer in a CuPool.
PoolMonitor
Trait for a Pool to exposed to be monitored by the monitoring API.

Functions§

pools_statistics
Get the list of pools and their statistics. diff --git a/cu29_runtime/pool/struct.AlignedBuffer.html b/cu29_runtime/pool/struct.AlignedBuffer.html index 5fd9c27be..1fd0b962e 100644 --- a/cu29_runtime/pool/struct.AlignedBuffer.html +++ b/cu29_runtime/pool/struct.AlignedBuffer.html @@ -1,4 +1,4 @@ -AlignedBuffer in cu29_runtime::pool - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E: ElementType> { /* private fields */ }
Expand description

A buffer that is aligned to a specific size with the Element of type E.

+AlignedBuffer in cu29_runtime::pool - Rust

Struct AlignedBuffer

Source
pub struct AlignedBuffer<E: ElementType> { /* private fields */ }
Expand description

A buffer that is aligned to a specific size with the Element of type E.

Implementations§

Source§

impl<E: ElementType> AlignedBuffer<E>

Source

pub fn new(num_elements: usize, alignment: usize) -> Self

Methods from Deref<Target = [E]>§

Source

pub fn write_copy_of_slice(&mut self, src: &[T]) -> &mut [T]
where T: Copy,

🔬This is a nightly-only experimental API. (maybe_uninit_write_slice)

Copies the elements from src to self, returning a mutable reference to the now initialized contents of self.

diff --git a/cu29_runtime/pool/struct.CuHandle.html b/cu29_runtime/pool/struct.CuHandle.html index b130a8827..03f305f5f 100644 --- a/cu29_runtime/pool/struct.CuHandle.html +++ b/cu29_runtime/pool/struct.CuHandle.html @@ -1,4 +1,4 @@ -CuHandle in cu29_runtime::pool - Rust

Struct CuHandle

Source
pub struct CuHandle<T: ArrayLike>(/* private fields */);
Expand description

A shareable handle to an Array coming from a pool (either host or device).

+CuHandle in cu29_runtime::pool - Rust

Struct CuHandle

Source
pub struct CuHandle<T: ArrayLike>(/* private fields */);
Expand description

A shareable handle to an Array coming from a pool (either host or device).

Implementations§

Source§

impl<T: ArrayLike> CuHandle<T>

Source

pub fn new_detached(inner: T) -> Self

Create a new CuHandle not part of a Pool (not for onboard usages, use pools instead)

Source

pub fn with_inner<R>(&self, f: impl FnOnce(&CuHandleInner<T>) -> R) -> R

Safely access the inner value, applying a closure to it.

Source

pub fn with_inner_mut<R>(&self, f: impl FnOnce(&mut CuHandleInner<T>) -> R) -> R

Mutably access the inner value, applying a closure to it.

diff --git a/cu29_runtime/pool/struct.CuHostMemoryPool.html b/cu29_runtime/pool/struct.CuHostMemoryPool.html index 96bb88fc5..6d9e957c2 100644 --- a/cu29_runtime/pool/struct.CuHostMemoryPool.html +++ b/cu29_runtime/pool/struct.CuHostMemoryPool.html @@ -1,4 +1,4 @@ -CuHostMemoryPool in cu29_runtime::pool - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

+CuHostMemoryPool in cu29_runtime::pool - Rust

Struct CuHostMemoryPool

Source
pub struct CuHostMemoryPool<T> { /* private fields */ }
Expand description

A pool of host memory buffers.

Implementations§

Source§

impl<T: ArrayLike + 'static> CuHostMemoryPool<T>

Source

pub fn new<F>( id: &str, size: usize, diff --git a/cu29_runtime/pool/trait.ArrayLike.html b/cu29_runtime/pool/trait.ArrayLike.html index 9f4e45519..881cfc2a5 100644 --- a/cu29_runtime/pool/trait.ArrayLike.html +++ b/cu29_runtime/pool/trait.ArrayLike.html @@ -1,4 +1,4 @@ -ArrayLike in cu29_runtime::pool - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
+ArrayLike in cu29_runtime::pool - Rust

Trait ArrayLike

Source
pub trait ArrayLike:
     Deref<Target = [Self::Element]>
     + DerefMut
     + Debug
diff --git a/cu29_runtime/pool/trait.CuPool.html b/cu29_runtime/pool/trait.CuPool.html
index 884242f92..da9b548d0 100644
--- a/cu29_runtime/pool/trait.CuPool.html
+++ b/cu29_runtime/pool/trait.CuPool.html
@@ -1,4 +1,4 @@
-CuPool in cu29_runtime::pool - Rust

Trait CuPool

Source
pub trait CuPool<T: ArrayLike>: PoolMonitor {
+CuPool in cu29_runtime::pool - Rust

Trait CuPool

Source
pub trait CuPool<T: ArrayLike>: PoolMonitor {
     // Required methods
     fn acquire(&self) -> Option<CuHandle<T>>;
     fn copy_from<O>(&self, from: &mut CuHandle<O>) -> CuHandle<T>
diff --git a/cu29_runtime/pool/trait.DeviceCuPool.html b/cu29_runtime/pool/trait.DeviceCuPool.html
index 13753c368..cc6fa7fae 100644
--- a/cu29_runtime/pool/trait.DeviceCuPool.html
+++ b/cu29_runtime/pool/trait.DeviceCuPool.html
@@ -1,4 +1,4 @@
-DeviceCuPool in cu29_runtime::pool - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T: ArrayLike>: CuPool<T> {
+DeviceCuPool in cu29_runtime::pool - Rust

Trait DeviceCuPool

Source
pub trait DeviceCuPool<T: ArrayLike>: CuPool<T> {
     // Required method
     fn copy_to_host_pool<O>(
         &self,
diff --git a/cu29_runtime/pool/trait.ElementType.html b/cu29_runtime/pool/trait.ElementType.html
index edd4ef7a0..cfd96a187 100644
--- a/cu29_runtime/pool/trait.ElementType.html
+++ b/cu29_runtime/pool/trait.ElementType.html
@@ -1,4 +1,4 @@
-ElementType in cu29_runtime::pool - Rust

Trait ElementType

Source
pub trait ElementType:
+ElementType in cu29_runtime::pool - Rust

Trait ElementType

Source
pub trait ElementType:
     Default
     + Sized
     + Copy
diff --git a/cu29_runtime/pool/trait.PoolMonitor.html b/cu29_runtime/pool/trait.PoolMonitor.html
index 5e2739fb9..b8bffb58a 100644
--- a/cu29_runtime/pool/trait.PoolMonitor.html
+++ b/cu29_runtime/pool/trait.PoolMonitor.html
@@ -1,4 +1,4 @@
-PoolMonitor in cu29_runtime::pool - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
+PoolMonitor in cu29_runtime::pool - Rust

Trait PoolMonitor

Source
pub trait PoolMonitor: Send + Sync {
     // Required methods
     fn id(&self) -> ArrayString<64>;
     fn space_left(&self) -> usize;
diff --git a/cu29_runtime/simulation/enum.CuTaskCallbackState.html b/cu29_runtime/simulation/enum.CuTaskCallbackState.html
index 155868426..013964732 100644
--- a/cu29_runtime/simulation/enum.CuTaskCallbackState.html
+++ b/cu29_runtime/simulation/enum.CuTaskCallbackState.html
@@ -1,4 +1,4 @@
-CuTaskCallbackState in cu29_runtime::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where +CuTaskCallbackState in cu29_runtime::simulation - Rust

Enum CuTaskCallbackState

Source
pub enum CuTaskCallbackState<'cl, I, O>
where I: CuMsgPack<'cl>, O: CuMsgPack<'cl>,
{ New(Option<ComponentConfig>), diff --git a/cu29_runtime/simulation/enum.SimOverride.html b/cu29_runtime/simulation/enum.SimOverride.html index 287d3b163..da90c278e 100644 --- a/cu29_runtime/simulation/enum.SimOverride.html +++ b/cu29_runtime/simulation/enum.SimOverride.html @@ -1,4 +1,4 @@ -SimOverride in cu29_runtime::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
+SimOverride in cu29_runtime::simulation - Rust

Enum SimOverride

Source
pub enum SimOverride {
     ExecutedBySim,
     ExecuteByRuntime,
     Errored(String),
diff --git a/cu29_runtime/simulation/index.html b/cu29_runtime/simulation/index.html
index 23e838c8e..3e4c0f3b5 100644
--- a/cu29_runtime/simulation/index.html
+++ b/cu29_runtime/simulation/index.html
@@ -1,4 +1,4 @@
-cu29_runtime::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

+cu29_runtime::simulation - Rust

Module simulation

Source
Expand description

§cu29::simulation Module

The cu29::simulation module provides an interface to simulate tasks in Copper-based systems. It offers structures, traits, and enums that enable hooking into the lifecycle of tasks, adapting their behavior, and integrating them with simulated hardware environments.

diff --git a/cu29_runtime/simulation/struct.CuSimSinkTask.html b/cu29_runtime/simulation/struct.CuSimSinkTask.html index e7583e186..2ce6f025e 100644 --- a/cu29_runtime/simulation/struct.CuSimSinkTask.html +++ b/cu29_runtime/simulation/struct.CuSimSinkTask.html @@ -1,4 +1,4 @@ -CuSimSinkTask in cu29_runtime::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. +CuSimSinkTask in cu29_runtime::simulation - Rust

Struct CuSimSinkTask

Source
pub struct CuSimSinkTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a sink task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T: CuMsgPayload + 'cl> CuSinkTask<'cl> for CuSimSinkTask<T>

Source§

type Input = &'cl CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> CuResult<Self>
where Self: Sized,

Here you need to initialize everything your task will need for the duration of its lifetime. diff --git a/cu29_runtime/simulation/struct.CuSimSrcTask.html b/cu29_runtime/simulation/struct.CuSimSrcTask.html index 79aabad05..ec8561e60 100644 --- a/cu29_runtime/simulation/struct.CuSimSrcTask.html +++ b/cu29_runtime/simulation/struct.CuSimSrcTask.html @@ -1,4 +1,4 @@ -CuSimSrcTask in cu29_runtime::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. +CuSimSrcTask in cu29_runtime::simulation - Rust

Struct CuSimSrcTask

Source
pub struct CuSimSrcTask<T> { /* private fields */ }
Expand description

This is a placeholder task for a source task for the simulations. It basically does nothing in place of a real driver so it won’t try to initialize any hardware.

Trait Implementations§

Source§

impl<'cl, T: CuMsgPayload + 'cl> CuSrcTask<'cl> for CuSimSrcTask<T>

Source§

type Output = &'cl mut CuMsg<T>

Source§

fn new(_config: Option<&ComponentConfig>) -> CuResult<Self>
where Self: Sized,

Here you need to initialize everything your task will need for the duration of its lifetime. diff --git a/cu29_soa_derive/all.html b/cu29_soa_derive/all.html index 13a90c0cd..3366a8e2c 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

Derive Macros

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

List of all items

Derive Macros

\ No newline at end of file diff --git a/cu29_soa_derive/derive.Soa.html b/cu29_soa_derive/derive.Soa.html index d3047eaa5..c5a93455f 100644 --- a/cu29_soa_derive/derive.Soa.html +++ b/cu29_soa_derive/derive.Soa.html @@ -1,4 +1,4 @@ -Soa in cu29_soa_derive - Rust

Derive Macro Soa

Source
#[derive(Soa)]
Expand description

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

Derive Macro Soa

Source
#[derive(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 9b5ade4ae..ebce6275f 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

Derive Macros§

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

Crate cu29_soa_derive

Source

Derive Macros§

Soa
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.
\ No newline at end of file diff --git a/cu29_traits/all.html b/cu29_traits/all.html index 736645997..730534fef 100644 --- a/cu29_traits/all.html +++ b/cu29_traits/all.html @@ -1 +1 @@ -List of all items in this crate

List of all items

Structs

Enums

Traits

Type Aliases

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

List of all items

Structs

Enums

Traits

Type Aliases

\ No newline at end of file diff --git a/cu29_traits/enum.UnifiedLogType.html b/cu29_traits/enum.UnifiedLogType.html index c4855854d..28adbbf50 100644 --- a/cu29_traits/enum.UnifiedLogType.html +++ b/cu29_traits/enum.UnifiedLogType.html @@ -1,4 +1,4 @@ -UnifiedLogType in cu29_traits - Rust

Enum UnifiedLogType

Source
pub enum UnifiedLogType {
+UnifiedLogType in cu29_traits - Rust

Enum UnifiedLogType

Source
pub enum UnifiedLogType {
     Empty,
     StructuredLogLine,
     CopperList,
diff --git a/cu29_traits/index.html b/cu29_traits/index.html
index 5cc916e97..5f62ad516 100644
--- a/cu29_traits/index.html
+++ b/cu29_traits/index.html
@@ -1 +1 @@
-cu29_traits - Rust

Crate cu29_traits

Source

Structs§

CuError
Common copper Error type.

Enums§

UnifiedLogType
Defines the types of what can be logged in the unified logger.

Traits§

CopperListTuple
A CopperListTuple needs to be encodable, decodable and fixed size in memory.
WriteStream
Defines a basic write, append only stream trait to be able to log or send serializable objects.

Type Aliases§

CuResult
\ No newline at end of file +cu29_traits - Rust

Crate cu29_traits

Source

Structs§

CuError
Common copper Error type.

Enums§

UnifiedLogType
Defines the types of what can be logged in the unified logger.

Traits§

CopperListTuple
A CopperListTuple needs to be encodable, decodable and fixed size in memory.
WriteStream
Defines a basic write, append only stream trait to be able to log or send serializable objects.

Type Aliases§

CuResult
\ No newline at end of file diff --git a/cu29_traits/struct.CuError.html b/cu29_traits/struct.CuError.html index dcccab97d..efdcab718 100644 --- a/cu29_traits/struct.CuError.html +++ b/cu29_traits/struct.CuError.html @@ -1,4 +1,4 @@ -CuError in cu29_traits - Rust

Struct CuError

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

Common copper Error type.

+CuError in cu29_traits - Rust

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

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

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

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 CuError

Source§

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

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

impl Error for CuError

1.30.0 · Source§

fn source(&self) -> Option<&(dyn Error + 'static)>

Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
1.0.0 · Source§

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
Source§

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)
Provides type-based access to context intended for error reports. Read more
Source§

impl From<&str> for CuError

Source§

fn from(s: &str) -> CuError

Converts to this type from the input type.
Source§

impl From<String> for CuError

Source§

fn from(s: String) -> CuError

Converts to this type from the input type.
Source§

impl Serialize for CuError

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 diff --git a/cu29_traits/trait.CopperListTuple.html b/cu29_traits/trait.CopperListTuple.html index 6c2aee91e..0ff26fe1e 100644 --- a/cu29_traits/trait.CopperListTuple.html +++ b/cu29_traits/trait.CopperListTuple.html @@ -1,4 +1,4 @@ -CopperListTuple in cu29_traits - Rust

Trait CopperListTuple

Source
pub trait CopperListTuple:
+CopperListTuple in cu29_traits - Rust

Trait CopperListTuple

Source
pub trait CopperListTuple:
     Encode
     + Decode
     + Sized
diff --git a/cu29_traits/trait.WriteStream.html b/cu29_traits/trait.WriteStream.html
index d9fd3665e..127b9f73a 100644
--- a/cu29_traits/trait.WriteStream.html
+++ b/cu29_traits/trait.WriteStream.html
@@ -1,4 +1,4 @@
-WriteStream in cu29_traits - Rust

Trait WriteStream

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

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 7502bebe8..15c69a9fe 100644
--- a/cu29_traits/type.CuResult.html
+++ b/cu29_traits/type.CuResult.html
@@ -1,4 +1,4 @@
-CuResult in cu29_traits - Rust

Type Alias CuResult

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

Aliased Type§

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

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 ade8164e5..da21559e2 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 14c979727..47a2b49c5 100644 --- a/cu29_unifiedlog/enum.AllocatedSection.html +++ b/cu29_unifiedlog/enum.AllocatedSection.html @@ -1,4 +1,4 @@ -AllocatedSection in cu29_unifiedlog - Rust

Enum AllocatedSection

Source
pub enum AllocatedSection {
+AllocatedSection in cu29_unifiedlog - Rust

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 90398ecc6..0051307b7 100644 --- a/cu29_unifiedlog/enum.UnifiedLogger.html +++ b/cu29_unifiedlog/enum.UnifiedLogger.html @@ -1,4 +1,4 @@ -UnifiedLogger in cu29_unifiedlog - Rust

Enum UnifiedLogger

Source
pub enum UnifiedLogger {
+UnifiedLogger in cu29_unifiedlog - Rust

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 371013040..83540d809 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

Function stream_write

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

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 4e73bddc4..60f1b3b0b 100644
--- a/cu29_unifiedlog/index.html
+++ b/cu29_unifiedlog/index.html
@@ -1,4 +1,4 @@
-cu29_unifiedlog - Rust

Crate cu29_unifiedlog

Source

Structs§

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

Crate cu29_unifiedlog

Source

Structs§

SectionHandle
A SectionHandle is a handle to a section in the datalogger. It allows to track the lifecycle of a section of the datalogger.
SectionHeader
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.
UnifiedLoggerBuilder
Use this builder to create a new DataLogger.
UnifiedLoggerIOReader
This a convenience wrapper around the UnifiedLoggerRead to implement the Read trait.
UnifiedLoggerRead
A read side of the datalogger.
UnifiedLoggerWrite
A write side of the datalogger.

Enums§

AllocatedSection
UnifiedLogger
Holder of the read or write side of the datalogger.

Functions§

stream_write
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 de0f82d42..2984bb749 100644 --- a/cu29_unifiedlog/struct.SectionHandle.html +++ b/cu29_unifiedlog/struct.SectionHandle.html @@ -1,4 +1,4 @@ -SectionHandle in cu29_unifiedlog - Rust

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

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 9415fffdd..cd33e2b01 100644 --- a/cu29_unifiedlog/struct.SectionHeader.html +++ b/cu29_unifiedlog/struct.SectionHeader.html @@ -1,4 +1,4 @@ -SectionHeader in cu29_unifiedlog - Rust

Struct SectionHeader

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

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

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 599649688..8734eb166 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerBuilder.html @@ -1,4 +1,4 @@ -UnifiedLoggerBuilder in cu29_unifiedlog - Rust

Struct UnifiedLoggerBuilder

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

Use this builder to create a new DataLogger.

+UnifiedLoggerBuilder in cu29_unifiedlog - Rust

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 1c2c6bdff..fe58759ed 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerIOReader.html @@ -1,4 +1,4 @@ -UnifiedLoggerIOReader in cu29_unifiedlog - Rust

Struct UnifiedLoggerIOReader

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

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

+UnifiedLoggerIOReader in cu29_unifiedlog - Rust

Struct UnifiedLoggerIOReader

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

This a convenience 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 cb4d42ece..293d8e09a 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerRead.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerRead.html @@ -1,4 +1,4 @@ -UnifiedLoggerRead in cu29_unifiedlog - Rust

Struct UnifiedLoggerRead

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

A read side of the datalogger.

+UnifiedLoggerRead in cu29_unifiedlog - Rust

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: &Path) -> 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 f7330de35..6b9f54702 100644 --- a/cu29_unifiedlog/struct.UnifiedLoggerWrite.html +++ b/cu29_unifiedlog/struct.UnifiedLoggerWrite.html @@ -1,4 +1,4 @@ -UnifiedLoggerWrite in cu29_unifiedlog - Rust

Struct UnifiedLoggerWrite

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

A write side of the datalogger.

+UnifiedLoggerWrite in cu29_unifiedlog - Rust

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)

Source

pub fn stats(&self) -> (usize, Vec<usize>, usize)

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 5059e9d19..9af958062 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 0fdaa65bc..c05aeda00 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 97ecf215c..18303f93d 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/lib.rs.html b/src/cu29/lib.rs.html index be9329776..96aaf344d 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_clock/lib.rs.html b/src/cu29_clock/lib.rs.html
index 16fc9a19f..21f806ee4 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 0ade4e2d8..5ffedc2e0 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 28c9758e8..bb288f942 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 a14ff33b6..c9f1281ed 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 bb969270c..769319dc8 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 cacbea204..e09be1058 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 84529204c..2f5e22a17 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 2443add4e..7c9d7bb25 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 29b81b503..2b1b29a40 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 8f850d71e..3c4a5dfd3 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 3463da9b8..c20f43abc 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 bac95ebc1..698ce6a29 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 9cd788d01..a3765f7f1 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_runtime/config.rs.html b/src/cu29_runtime/config.rs.html
index 755aca02c..61dabe4f4 100644
--- a/src/cu29_runtime/config.rs.html
+++ b/src/cu29_runtime/config.rs.html
@@ -1,4 +1,4 @@
-config.rs - source

cu29_runtime/
config.rs

+config.rs - source

cu29_runtime/
config.rs

 1
 2
 3
diff --git a/src/cu29_runtime/copperlist.rs.html b/src/cu29_runtime/copperlist.rs.html
index 12ae7b861..153d3f2da 100644
--- a/src/cu29_runtime/copperlist.rs.html
+++ b/src/cu29_runtime/copperlist.rs.html
@@ -1,4 +1,4 @@
-copperlist.rs - source

cu29_runtime/
copperlist.rs

+copperlist.rs - source

cu29_runtime/
copperlist.rs

 1
 2
 3
diff --git a/src/cu29_runtime/curuntime.rs.html b/src/cu29_runtime/curuntime.rs.html
index 6e3b25bb0..c17c2ab6f 100644
--- a/src/cu29_runtime/curuntime.rs.html
+++ b/src/cu29_runtime/curuntime.rs.html
@@ -1,4 +1,4 @@
-curuntime.rs - source

cu29_runtime/
curuntime.rs

+curuntime.rs - source

cu29_runtime/
curuntime.rs

 1
 2
 3
diff --git a/src/cu29_runtime/cutask.rs.html b/src/cu29_runtime/cutask.rs.html
index 7ccf38d1e..454e3afc6 100644
--- a/src/cu29_runtime/cutask.rs.html
+++ b/src/cu29_runtime/cutask.rs.html
@@ -1,4 +1,4 @@
-cutask.rs - source

cu29_runtime/
cutask.rs

+cutask.rs - source

cu29_runtime/
cutask.rs

 1
 2
 3
diff --git a/src/cu29_runtime/lib.rs.html b/src/cu29_runtime/lib.rs.html
index 364def81e..661800c85 100644
--- a/src/cu29_runtime/lib.rs.html
+++ b/src/cu29_runtime/lib.rs.html
@@ -1,4 +1,4 @@
-lib.rs - source

cu29_runtime/
lib.rs

+lib.rs - source

cu29_runtime/
lib.rs

 1
 2
 3
diff --git a/src/cu29_runtime/log.rs.html b/src/cu29_runtime/log.rs.html
index 490269f68..b757cf160 100644
--- a/src/cu29_runtime/log.rs.html
+++ b/src/cu29_runtime/log.rs.html
@@ -1,4 +1,4 @@
-log.rs - source

cu29_runtime/
log.rs

+log.rs - source

cu29_runtime/
log.rs

 1
 2
 3
diff --git a/src/cu29_runtime/monitoring.rs.html b/src/cu29_runtime/monitoring.rs.html
index d8a97908f..05faf4818 100644
--- a/src/cu29_runtime/monitoring.rs.html
+++ b/src/cu29_runtime/monitoring.rs.html
@@ -1,4 +1,4 @@
-monitoring.rs - source

cu29_runtime/
monitoring.rs

+monitoring.rs - source

cu29_runtime/
monitoring.rs

 1
 2
 3
diff --git a/src/cu29_runtime/payload.rs.html b/src/cu29_runtime/payload.rs.html
index eb2d7063f..61c598095 100644
--- a/src/cu29_runtime/payload.rs.html
+++ b/src/cu29_runtime/payload.rs.html
@@ -1,4 +1,4 @@
-payload.rs - source

cu29_runtime/
payload.rs

+payload.rs - source

cu29_runtime/
payload.rs

 1
 2
 3
diff --git a/src/cu29_runtime/pool.rs.html b/src/cu29_runtime/pool.rs.html
index 09fac72dc..366870ce1 100644
--- a/src/cu29_runtime/pool.rs.html
+++ b/src/cu29_runtime/pool.rs.html
@@ -1,4 +1,4 @@
-pool.rs - source

cu29_runtime/
pool.rs

+pool.rs - source

cu29_runtime/
pool.rs

 1
 2
 3
diff --git a/src/cu29_runtime/simulation.rs.html b/src/cu29_runtime/simulation.rs.html
index 7a6afeebd..f3f0431f5 100644
--- a/src/cu29_runtime/simulation.rs.html
+++ b/src/cu29_runtime/simulation.rs.html
@@ -1,4 +1,4 @@
-simulation.rs - source

cu29_runtime/
simulation.rs

+simulation.rs - source

cu29_runtime/
simulation.rs

 1
 2
 3
diff --git a/src/cu29_soa_derive/format.rs.html b/src/cu29_soa_derive/format.rs.html
index ec58a6317..961801bc0 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 56f75219c..c77363b1d 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 eb5e8bda4..20647965b 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 4c08e7eb5..ea1f8096a 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-eb44e4cf.txt b/static.files/COPYRIGHT-565f0803.txt
similarity index 96%
rename from static.files/COPYRIGHT-eb44e4cf.txt
rename to static.files/COPYRIGHT-565f0803.txt
index 1447df792..111340298 100644
--- a/static.files/COPYRIGHT-eb44e4cf.txt
+++ b/static.files/COPYRIGHT-565f0803.txt
@@ -36,7 +36,7 @@ included, and carry their own copyright notices and license terms:
     See SourceCodePro-LICENSE.txt.
 
 * Source Serif 4 (SourceSerif4-Regular.ttf.woff2, SourceSerif4-Bold.ttf.woff2,
-    SourceSerif4-It.ttf.woff2):
+    SourceSerif4-It.ttf.woff2, SourceSerif4-Semibold.ttf.woff2):
 
     Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name
     'Source'. All Rights Reserved. Source is a trademark of Adobe in the United
diff --git a/static.files/FiraMono-Medium-86f75c8c.woff2 b/static.files/FiraMono-Medium-86f75c8c.woff2
new file mode 100644
index 000000000..610e9b207
Binary files /dev/null and b/static.files/FiraMono-Medium-86f75c8c.woff2 differ
diff --git a/static.files/FiraMono-Regular-87c26294.woff2 b/static.files/FiraMono-Regular-87c26294.woff2
new file mode 100644
index 000000000..9fa44b7cc
Binary files /dev/null and b/static.files/FiraMono-Regular-87c26294.woff2 differ
diff --git a/static.files/FiraSans-Italic-81dc35de.woff2 b/static.files/FiraSans-Italic-81dc35de.woff2
new file mode 100644
index 000000000..3f63664fe
Binary files /dev/null and b/static.files/FiraSans-Italic-81dc35de.woff2 differ
diff --git a/static.files/FiraSans-MediumItalic-ccf7e434.woff2 b/static.files/FiraSans-MediumItalic-ccf7e434.woff2
new file mode 100644
index 000000000..2d08f9f7d
Binary files /dev/null and b/static.files/FiraSans-MediumItalic-ccf7e434.woff2 differ
diff --git a/static.files/SourceSerif4-Semibold-457a13ac.ttf.woff2 b/static.files/SourceSerif4-Semibold-457a13ac.ttf.woff2
new file mode 100644
index 000000000..dd55f4e95
Binary files /dev/null and b/static.files/SourceSerif4-Semibold-457a13ac.ttf.woff2 differ
diff --git a/static.files/rustdoc-e7950ecc.css b/static.files/rustdoc-cf3c48c1.css
similarity index 71%
rename from static.files/rustdoc-e7950ecc.css
rename to static.files/rustdoc-cf3c48c1.css
index c3fc6df9d..160fd3b3b 100644
--- a/static.files/rustdoc-e7950ecc.css
+++ b/static.files/rustdoc-cf3c48c1.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;--impl-items-indent:0.3em;--docblock-indent:24px;}@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:15px;}.rustdoc-breadcrumbs{grid-area:main-heading-breadcrumbs;line-height:1.25;padding-top:5px;position:relative;z-index:1;}.rustdoc-breadcrumbs a{padding:5px 0 7px;}.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,.sub-variant-field{margin:0.6em 0;}#crate-search,h1,h2,h3,h4,h5,h6,.sidebar,.mobile-topbar,.search-input,.search-results .result-name,.item-table dt>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,.search-results li,.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,.type-signature{font-family:"Source Code Pro",monospace;}.docblock code,.item-table dd code{border-radius:3px;padding:0 0.125em;}.docblock pre code,.item-table dd 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;}.item-table dd{overflow-wrap:break-word;overflow-wrap:anywhere;}.docblock :not(pre)>code,.item-table dd 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:var(--docblock-indent);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,.item-table dd 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);text-decoration:inherit;}#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,.item-table dd .stab,.docblock p code{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:var(--docblock-indent);}.impl-items>.item-info{margin-left:calc(var(--docblock-indent) + var(--impl-items-indent));}.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;margin-bottom:4px;}.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),.item-table dd 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{padding:0;margin:0;width:100%;}.item-table>dt{padding-right:1.25rem;}.item-table>dd{margin-inline-start:0;margin-left:0;}.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;--impl-items-indent:0.3em;--docblock-indent:24px;--font-family:"Source Serif 4",NanumBarunGothic,serif;--font-family-code:"Source Code Pro",monospace;}:root.sans-serif{--font-family:"Fira Sans",sans-serif;--font-family-code:"Fira Mono",monospace;}@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:italic;font-weight:400;src:local('Fira Sans Italic'),url("FiraSans-Italic-81dc35de.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:'Fira Sans';font-style:italic;font-weight:500;src:local('Fira Sans Medium Italic'),url("FiraSans-MediumItalic-ccf7e434.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Fira Mono';font-style:normal;font-weight:400;src:local('Fira Mono'),url("FiraMono-Regular-87c26294.woff2") format("woff2");font-display:swap;}@font-face {font-family:'Fira Mono';font-style:normal;font-weight:500;src:local('Fira Mono Medium'),url("FiraMono-Medium-86f75c8c.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:500;src:local('Source Serif 4 Semibold'),url("SourceSerif4-Semibold-457a13ac.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 var(--font-family);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:15px;}.rustdoc-breadcrumbs{grid-area:main-heading-breadcrumbs;line-height:1.25;padding-top:5px;position:relative;z-index:1;}.rustdoc-breadcrumbs a{padding:5px 0 7px;}.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,.sub-variant-field{margin:0.6em 0;}#crate-search,h1,h2,h3,h4,h5,h6,.sidebar,.mobile-topbar,.search-input,.search-results .result-name,.item-table dt>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,.search-results li,.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,.type-signature{font-family:var(--font-family-code);}.docblock code,.item-table dd code{border-radius:3px;padding:0 0.125em;}.docblock pre code,.item-table dd 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;}.item-table dd{overflow-wrap:break-word;overflow-wrap:anywhere;}.docblock :not(pre)>code,.item-table dd 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:var(--docblock-indent);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,.item-table dd 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);text-decoration:inherit;}#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,.item-table dd .stab,.docblock p code{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:var(--docblock-indent);}.impl-items>.item-info{margin-left:calc(var(--docblock-indent) + var(--impl-items-indent));}.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;margin-bottom:4px;}.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),.item-table dd 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{padding:0;margin:0;width:100%;}.item-table>dt{padding-right:1.25rem;}.item-table>dd{margin-inline-start:0;margin-left:0;}.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;margin:0;padding:0;}.search-results>a{display:grid;grid-template-areas:"search-result-name search-result-desc" "search-result-type-signature search-result-type-signature";grid-template-columns:.6fr .4fr;margin-left:2px;margin-right:2px;border-bottom:1px solid var(--search-result-border-color);column-gap:1em;}.search-results>a>div.desc{white-space:nowrap;text-overflow:ellipsis;overflow:hidden;grid-area:search-result-desc;}.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;grid-area:search-result-name;}.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;}.search-results .type-signature{grid-area:search-result-type-signature;white-space:pre-wrap;}.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/settings-5411db44.js b/static.files/settings-5411db44.js
deleted file mode 100644
index 4a30479d9..000000000
--- a/static.files/settings-5411db44.js
+++ /dev/null
@@ -1,17 +0,0 @@
-"use strict";(function(){const isSettingsPage=window.location.pathname.endsWith("/settings.html");function changeSetting(settingName,value){if(settingName==="theme"){const useSystem=value==="system preference"?"true":"false";updateLocalStorage("use-system-theme",useSystem)}updateLocalStorage(settingName,value);switch(settingName){case"theme":case"preferred-dark-theme":case"preferred-light-theme":updateTheme();updateLightAndDark();break;case"line-numbers":if(value===true){window.rustdoc_add_line_numbers_to_examples()}else{window.rustdoc_remove_line_numbers_from_examples()}break;case"hide-sidebar":if(value===true){addClass(document.documentElement,"hide-sidebar")}else{removeClass(document.documentElement,"hide-sidebar")}break;case"hide-toc":if(value===true){addClass(document.documentElement,"hide-toc")}else{removeClass(document.documentElement,"hide-toc")}break;case"hide-modnav":if(value===true){addClass(document.documentElement,"hide-modnav")}else{removeClass(document.documentElement,"hide-modnav")}break}}function showLightAndDark(){removeClass(document.getElementById("preferred-light-theme"),"hidden");removeClass(document.getElementById("preferred-dark-theme"),"hidden")}function hideLightAndDark(){addClass(document.getElementById("preferred-light-theme"),"hidden");addClass(document.getElementById("preferred-dark-theme"),"hidden")}function updateLightAndDark(){const useSystem=getSettingValue("use-system-theme");if(useSystem==="true"||(useSystem===null&&getSettingValue("theme")===null)){showLightAndDark()}else{hideLightAndDark()}}function setEvents(settingsElement){updateLightAndDark();onEachLazy(settingsElement.querySelectorAll("input[type=\"checkbox\"]"),toggle=>{const settingId=toggle.id;const settingValue=getSettingValue(settingId);if(settingValue!==null){toggle.checked=settingValue==="true"}toggle.onchange=()=>{changeSetting(toggle.id,toggle.checked)}});onEachLazy(settingsElement.querySelectorAll("input[type=\"radio\"]"),elem=>{const settingId=elem.name;let settingValue=getSettingValue(settingId);if(settingId==="theme"){const useSystem=getSettingValue("use-system-theme");if(useSystem==="true"||settingValue===null){settingValue=useSystem==="false"?"light":"system preference"}}if(settingValue!==null&&settingValue!=="null"){elem.checked=settingValue===elem.value}elem.addEventListener("change",ev=>{changeSetting(ev.target.name,ev.target.value)})})}function buildSettingsPageSections(settings){let output="";for(const setting of settings){if(setting==="hr"){output+="
";continue}const js_data_name=setting["js_name"];const setting_name=setting["name"];if(setting["options"]!==undefined){output+=`\ -
-
${setting_name}
-
`;onEach(setting["options"],option=>{const checked=option===setting["default"]?" checked":"";const full=`${js_data_name}-${option.replace(/ /g,"-")}`;output+=`\ - `});output+=`\ -
-
`}else{const checked=setting["default"]===true?" checked":"";output+=`\ -
\ - \ -
`}}return output}function buildSettingsPage(){const theme_names=getVar("themes").split(",").filter(t=>t);theme_names.push("light","dark","ayu");const settings=[{"name":"Theme","js_name":"theme","default":"system preference","options":theme_names.concat("system preference"),},{"name":"Preferred light theme","js_name":"preferred-light-theme","default":"light","options":theme_names,},{"name":"Preferred dark theme","js_name":"preferred-dark-theme","default":"dark","options":theme_names,},{"name":"Auto-hide item contents for large items","js_name":"auto-hide-large-items","default":true,},{"name":"Auto-hide item methods' documentation","js_name":"auto-hide-method-docs","default":false,},{"name":"Auto-hide trait implementation documentation","js_name":"auto-hide-trait-implementations","default":false,},{"name":"Directly go to item in search if there is only one result","js_name":"go-to-only-result","default":false,},{"name":"Show line numbers on code examples","js_name":"line-numbers","default":false,},{"name":"Hide persistent navigation bar","js_name":"hide-sidebar","default":false,},{"name":"Hide table of contents","js_name":"hide-toc","default":false,},{"name":"Hide module navigation","js_name":"hide-modnav","default":false,},{"name":"Disable keyboard shortcuts","js_name":"disable-shortcuts","default":false,},];const elementKind=isSettingsPage?"section":"div";const innerHTML=`
${buildSettingsPageSections(settings)}
`;const el=document.createElement(elementKind);el.id="settings";if(!isSettingsPage){el.className="popover"}el.innerHTML=innerHTML;if(isSettingsPage){document.getElementById(MAIN_ID).appendChild(el)}else{el.setAttribute("tabindex","-1");getSettingsButton().appendChild(el)}return el}const settingsMenu=buildSettingsPage();function displaySettings(){settingsMenu.style.display="";onEachLazy(settingsMenu.querySelectorAll("input[type='checkbox']"),el=>{const val=getSettingValue(el.id);const checked=val==="true";if(checked!==el.checked&&val!==null){el.checked=checked}})}function settingsBlurHandler(event){if(!getHelpButton().contains(document.activeElement)&&!getHelpButton().contains(event.relatedTarget)&&!getSettingsButton().contains(document.activeElement)&&!getSettingsButton().contains(event.relatedTarget)){window.hidePopoverMenus()}}if(!isSettingsPage){const settingsButton=getSettingsButton();const settingsMenu=document.getElementById("settings");settingsButton.onclick=event=>{if(settingsMenu.contains(event.target)){return}event.preventDefault();const shouldDisplaySettings=settingsMenu.style.display==="none";window.hideAllModals();if(shouldDisplaySettings){displaySettings()}};settingsButton.onblur=settingsBlurHandler;settingsButton.querySelector("a").onblur=settingsBlurHandler;onEachLazy(settingsMenu.querySelectorAll("input"),el=>{el.onblur=settingsBlurHandler});settingsMenu.onblur=settingsBlurHandler}setTimeout(()=>{setEvents(settingsMenu);if(!isSettingsPage){displaySettings()}removeClass(getSettingsButton(),"rotate")},0)})() \ No newline at end of file diff --git a/static.files/settings-6dad6058.js b/static.files/settings-6dad6058.js new file mode 100644 index 000000000..11593dcdb --- /dev/null +++ b/static.files/settings-6dad6058.js @@ -0,0 +1,17 @@ +"use strict";(function(){const isSettingsPage=window.location.pathname.endsWith("/settings.html");function changeSetting(settingName,value){if(settingName==="theme"){const useSystem=value==="system preference"?"true":"false";updateLocalStorage("use-system-theme",useSystem)}updateLocalStorage(settingName,value);switch(settingName){case"theme":case"preferred-dark-theme":case"preferred-light-theme":updateTheme();updateLightAndDark();break;case"line-numbers":if(value===true){window.rustdoc_add_line_numbers_to_examples()}else{window.rustdoc_remove_line_numbers_from_examples()}break;case"hide-sidebar":if(value===true){addClass(document.documentElement,"hide-sidebar")}else{removeClass(document.documentElement,"hide-sidebar")}break;case"hide-toc":if(value===true){addClass(document.documentElement,"hide-toc")}else{removeClass(document.documentElement,"hide-toc")}break;case"hide-modnav":if(value===true){addClass(document.documentElement,"hide-modnav")}else{removeClass(document.documentElement,"hide-modnav")}break;case"sans-serif-fonts":if(value===true){addClass(document.documentElement,"sans-serif")}else{removeClass(document.documentElement,"sans-serif")}}}function showLightAndDark(){removeClass(document.getElementById("preferred-light-theme"),"hidden");removeClass(document.getElementById("preferred-dark-theme"),"hidden")}function hideLightAndDark(){addClass(document.getElementById("preferred-light-theme"),"hidden");addClass(document.getElementById("preferred-dark-theme"),"hidden")}function updateLightAndDark(){const useSystem=getSettingValue("use-system-theme");if(useSystem==="true"||(useSystem===null&&getSettingValue("theme")===null)){showLightAndDark()}else{hideLightAndDark()}}function setEvents(settingsElement){updateLightAndDark();onEachLazy(settingsElement.querySelectorAll("input[type=\"checkbox\"]"),toggle=>{const settingId=toggle.id;const settingValue=getSettingValue(settingId);if(settingValue!==null){toggle.checked=settingValue==="true"}toggle.onchange=()=>{changeSetting(toggle.id,toggle.checked)}});onEachLazy(settingsElement.querySelectorAll("input[type=\"radio\"]"),elem=>{const settingId=elem.name;let settingValue=getSettingValue(settingId);if(settingId==="theme"){const useSystem=getSettingValue("use-system-theme");if(useSystem==="true"||settingValue===null){settingValue=useSystem==="false"?"light":"system preference"}}if(settingValue!==null&&settingValue!=="null"){elem.checked=settingValue===elem.value}elem.addEventListener("change",ev=>{changeSetting(ev.target.name,ev.target.value)})})}function buildSettingsPageSections(settings){let output="";for(const setting of settings){if(setting==="hr"){output+="
";continue}const js_data_name=setting["js_name"];const setting_name=setting["name"];if(setting["options"]!==undefined){output+=`\ +
+
${setting_name}
+
`;onEach(setting["options"],option=>{const checked=option===setting["default"]?" checked":"";const full=`${js_data_name}-${option.replace(/ /g,"-")}`;output+=`\ + `});output+=`\ +
+
`}else{const checked=setting["default"]===true?" checked":"";output+=`\ +
\ + \ +
`}}return output}function buildSettingsPage(){const theme_names=getVar("themes").split(",").filter(t=>t);theme_names.push("light","dark","ayu");const settings=[{"name":"Theme","js_name":"theme","default":"system preference","options":theme_names.concat("system preference"),},{"name":"Preferred light theme","js_name":"preferred-light-theme","default":"light","options":theme_names,},{"name":"Preferred dark theme","js_name":"preferred-dark-theme","default":"dark","options":theme_names,},{"name":"Auto-hide item contents for large items","js_name":"auto-hide-large-items","default":true,},{"name":"Auto-hide item methods' documentation","js_name":"auto-hide-method-docs","default":false,},{"name":"Auto-hide trait implementation documentation","js_name":"auto-hide-trait-implementations","default":false,},{"name":"Directly go to item in search if there is only one result","js_name":"go-to-only-result","default":false,},{"name":"Show line numbers on code examples","js_name":"line-numbers","default":false,},{"name":"Hide persistent navigation bar","js_name":"hide-sidebar","default":false,},{"name":"Hide table of contents","js_name":"hide-toc","default":false,},{"name":"Hide module navigation","js_name":"hide-modnav","default":false,},{"name":"Disable keyboard shortcuts","js_name":"disable-shortcuts","default":false,},{"name":"Use sans serif fonts","js_name":"sans-serif-fonts","default":false,},];const elementKind=isSettingsPage?"section":"div";const innerHTML=`
${buildSettingsPageSections(settings)}
`;const el=document.createElement(elementKind);el.id="settings";if(!isSettingsPage){el.className="popover"}el.innerHTML=innerHTML;if(isSettingsPage){document.getElementById(MAIN_ID).appendChild(el)}else{el.setAttribute("tabindex","-1");getSettingsButton().appendChild(el)}return el}const settingsMenu=buildSettingsPage();function displaySettings(){settingsMenu.style.display="";onEachLazy(settingsMenu.querySelectorAll("input[type='checkbox']"),el=>{const val=getSettingValue(el.id);const checked=val==="true";if(checked!==el.checked&&val!==null){el.checked=checked}})}function settingsBlurHandler(event){if(!getHelpButton().contains(document.activeElement)&&!getHelpButton().contains(event.relatedTarget)&&!getSettingsButton().contains(document.activeElement)&&!getSettingsButton().contains(event.relatedTarget)){window.hidePopoverMenus()}}if(!isSettingsPage){const settingsButton=getSettingsButton();const settingsMenu=document.getElementById("settings");settingsButton.onclick=event=>{if(settingsMenu.contains(event.target)){return}event.preventDefault();const shouldDisplaySettings=settingsMenu.style.display==="none";window.hideAllModals();if(shouldDisplaySettings){displaySettings()}};settingsButton.onblur=settingsBlurHandler;settingsButton.querySelector("a").onblur=settingsBlurHandler;onEachLazy(settingsMenu.querySelectorAll("input"),el=>{el.onblur=settingsBlurHandler});settingsMenu.onblur=settingsBlurHandler}setTimeout(()=>{setEvents(settingsMenu);if(!isSettingsPage){displaySettings()}removeClass(getSettingsButton(),"rotate")},0)})() \ No newline at end of file diff --git a/static.files/storage-c4642c8f.js b/static.files/storage-302de22f.js similarity index 85% rename from static.files/storage-c4642c8f.js rename to static.files/storage-302de22f.js index a645b0e28..540ed4d84 100644 --- a/static.files/storage-c4642c8f.js +++ b/static.files/storage-302de22f.js @@ -1,4 +1,4 @@ -"use strict";const builtinThemes=["light","dark","ayu"];const darkThemes=["dark","ayu"];window.currentTheme=(function(){const currentTheme=document.getElementById("themeStyle");return currentTheme instanceof HTMLLinkElement?currentTheme:null})();const settingsDataset=(function(){const settingsElement=document.getElementById("default-settings");return settingsElement&&settingsElement.dataset?settingsElement.dataset:null})();function getSettingValue(settingName){const current=getCurrentValue(settingName);if(current===null&&settingsDataset!==null){const def=settingsDataset[settingName.replace(/-/g,"_")];if(def!==undefined){return def}}return current}const localStoredTheme=getSettingValue("theme");function hasClass(elem,className){return!!elem&&!!elem.classList&&elem.classList.contains(className)}function addClass(elem,className){if(elem&&elem.classList){elem.classList.add(className)}}function removeClass(elem,className){if(elem&&elem.classList){elem.classList.remove(className)}}function onEach(arr,func){for(const elem of arr){if(func(elem)){return true}}return false}function onEachLazy(lazyArray,func){return onEach(Array.prototype.slice.call(lazyArray),func)}function updateLocalStorage(name,value){try{window.localStorage.setItem("rustdoc-"+name,value)}catch(e){}}function getCurrentValue(name){try{return window.localStorage.getItem("rustdoc-"+name)}catch(e){return null}}function getVar(name){const el=document.querySelector("head > meta[name='rustdoc-vars']");return el?el.getAttribute("data-"+name):null}function switchTheme(newThemeName,saveTheme){const themeNames=(getVar("themes")||"").split(",").filter(t=>t);themeNames.push(...builtinThemes);if(newThemeName===null||themeNames.indexOf(newThemeName)===-1){return}if(saveTheme){updateLocalStorage("theme",newThemeName)}document.documentElement.setAttribute("data-theme",newThemeName);if(builtinThemes.indexOf(newThemeName)!==-1){if(window.currentTheme&&window.currentTheme.parentNode){window.currentTheme.parentNode.removeChild(window.currentTheme);window.currentTheme=null}}else{const newHref=getVar("root-path")+encodeURIComponent(newThemeName)+getVar("resource-suffix")+".css";if(!window.currentTheme){if(document.readyState==="loading"){document.write(``);window.currentTheme=(function(){const currentTheme=document.getElementById("themeStyle");return currentTheme instanceof HTMLLinkElement?currentTheme:null})()}else{window.currentTheme=document.createElement("link");window.currentTheme.rel="stylesheet";window.currentTheme.id="themeStyle";window.currentTheme.href=newHref;document.documentElement.appendChild(window.currentTheme)}}else if(newHref!==window.currentTheme.href){window.currentTheme.href=newHref}}}const updateTheme=(function(){const mql=window.matchMedia("(prefers-color-scheme: dark)");function updateTheme(){if(getSettingValue("use-system-theme")!=="false"){const lightTheme=getSettingValue("preferred-light-theme")||"light";const darkTheme=getSettingValue("preferred-dark-theme")||"dark";updateLocalStorage("use-system-theme","true");switchTheme(mql.matches?darkTheme:lightTheme,true)}else{switchTheme(getSettingValue("theme"),false)}}mql.addEventListener("change",updateTheme);return updateTheme})();if(getSettingValue("use-system-theme")!=="false"&&window.matchMedia){if(getSettingValue("use-system-theme")===null&&getSettingValue("preferred-dark-theme")===null&&localStoredTheme!==null&&darkThemes.indexOf(localStoredTheme)>=0){updateLocalStorage("preferred-dark-theme",localStoredTheme)}}updateTheme();if(getSettingValue("source-sidebar-show")==="true"){addClass(document.documentElement,"src-sidebar-expanded")}if(getSettingValue("hide-sidebar")==="true"){addClass(document.documentElement,"hide-sidebar")}if(getSettingValue("hide-toc")==="true"){addClass(document.documentElement,"hide-toc")}if(getSettingValue("hide-modnav")==="true"){addClass(document.documentElement,"hide-modnav")}function updateSidebarWidth(){const desktopSidebarWidth=getSettingValue("desktop-sidebar-width");if(desktopSidebarWidth&&desktopSidebarWidth!=="null"){document.documentElement.style.setProperty("--desktop-sidebar-width",desktopSidebarWidth+"px",)}const srcSidebarWidth=getSettingValue("src-sidebar-width");if(srcSidebarWidth&&srcSidebarWidth!=="null"){document.documentElement.style.setProperty("--src-sidebar-width",srcSidebarWidth+"px",)}}updateSidebarWidth();window.addEventListener("pageshow",ev=>{if(ev.persisted){setTimeout(updateTheme,0);setTimeout(updateSidebarWidth,0)}});class RustdocSearchElement extends HTMLElement{constructor(){super()}connectedCallback(){const rootPath=getVar("root-path");const currentCrate=getVar("current-crate");this.innerHTML=`