Pilot v2: Core implementation + battery telemetry
Major updates: - Complete Rust rewrite (pilot-v2/) with working MQTT client - Fixed MQTT event loop deadlock (background task pattern) - Battery telemetry for Linux (auto-detected via /sys/class/power_supply) - Home Assistant auto-discovery for all sensors and switches - Comprehensive documentation (AVANCEMENT.md, CLAUDE.md, roadmap) - Docker test environment with Mosquitto broker - Helper scripts for development and testing Features working: ✅ MQTT connectivity with LWT ✅ YAML configuration with validation ✅ Telemetry: CPU, memory, IP, battery (Linux) ✅ Commands: shutdown, reboot, sleep, screen (dry-run tested) ✅ HA discovery and integration ✅ Allowlist and cooldown protection Ready for testing on real hardware. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"sysinfo/struct.Group.html\" title=\"struct sysinfo::Group\">Group</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"sysinfo/struct.Pid.html\" title=\"struct sysinfo::Pid\">Pid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.Ord.html\" title=\"trait core::cmp::Ord\">Ord</a> for <a class=\"struct\" href=\"sysinfo/struct.User.html\" title=\"struct sysinfo::User\">User</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[1162]}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["rumqttc",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"enum\" href=\"rumqttc/mqttbytes/enum.QoS.html\" title=\"enum rumqttc::mqttbytes::QoS\">QoS</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"enum\" href=\"rumqttc/v5/mqttbytes/enum.QoS.html\" title=\"enum rumqttc::v5::mqttbytes::QoS\">QoS</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"rumqttc/mqttbytes/struct.FixedHeader.html\" title=\"struct rumqttc::mqttbytes::FixedHeader\">FixedHeader</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"rumqttc/v5/mqttbytes/v5/struct.FixedHeader.html\" title=\"struct rumqttc::v5::mqttbytes::v5::FixedHeader\">FixedHeader</a>"]]],["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"enum\" href=\"sysinfo/enum.Signal.html\" title=\"enum sysinfo::Signal\">Signal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.DiskUsage.html\" title=\"struct sysinfo::DiskUsage\">DiskUsage</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.Group.html\" title=\"struct sysinfo::Group\">Group</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.Pid.html\" title=\"struct sysinfo::Pid\">Pid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/cmp/trait.PartialOrd.html\" title=\"trait core::cmp::PartialOrd\">PartialOrd</a> for <a class=\"struct\" href=\"sysinfo/struct.User.html\" title=\"struct sysinfo::User\">User</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[1150,1787]}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["rumqttc",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/convert/trait.TryFrom.html\" title=\"trait core::convert::TryFrom\">TryFrom</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.92.0/std/primitive.u8.html\">u8</a>> for <a class=\"enum\" href=\"rumqttc/mqttbytes/v4/enum.SubscribeReasonCode.html\" title=\"enum rumqttc::mqttbytes::v4::SubscribeReasonCode\">SubscribeReasonCode</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/convert/trait.TryFrom.html\" title=\"trait core::convert::TryFrom\">TryFrom</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.92.0/std/primitive.u8.html\">u8</a>> for <a class=\"enum\" href=\"rumqttc/v5/mqttbytes/v5/enum.DisconnectReasonCode.html\" title=\"enum rumqttc::v5::mqttbytes::v5::DisconnectReasonCode\">DisconnectReasonCode</a>"]]],["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/convert/trait.TryFrom.html\" title=\"trait core::convert::TryFrom\">TryFrom</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.92.0/std/primitive.usize.html\">usize</a>> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/convert/trait.TryFrom.html\" title=\"trait core::convert::TryFrom\">TryFrom</a><<a class=\"primitive\" href=\"https://doc.rust-lang.org/1.92.0/std/primitive.usize.html\">usize</a>> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[861,724]}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["rumqttc",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/enum.ClientError.html\" title=\"enum rumqttc::ClientError\">ClientError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/enum.ConnectionError.html\" title=\"enum rumqttc::ConnectionError\">ConnectionError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/enum.StateError.html\" title=\"enum rumqttc::StateError\">StateError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/enum.TlsError.html\" title=\"enum rumqttc::TlsError\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/mqttbytes/enum.Error.html\" title=\"enum rumqttc::mqttbytes::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.ClientError.html\" title=\"enum rumqttc::v5::ClientError\">ClientError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.ConnectionError.html\" title=\"enum rumqttc::v5::ConnectionError\">ConnectionError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.StateError.html\" title=\"enum rumqttc::v5::StateError\">StateError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/error/trait.Error.html\" title=\"trait core::error::Error\">Error</a> for <a class=\"enum\" href=\"rumqttc/v5/mqttbytes/enum.Error.html\" title=\"enum rumqttc::v5::mqttbytes::Error\">Error</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[2357]}
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["rumqttc",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/enum.ClientError.html\" title=\"enum rumqttc::ClientError\">ClientError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/enum.ConnectionError.html\" title=\"enum rumqttc::ConnectionError\">ConnectionError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/enum.StateError.html\" title=\"enum rumqttc::StateError\">StateError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/enum.TlsError.html\" title=\"enum rumqttc::TlsError\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/mqttbytes/enum.Error.html\" title=\"enum rumqttc::mqttbytes::Error\">Error</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.ClientError.html\" title=\"enum rumqttc::v5::ClientError\">ClientError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.ConnectionError.html\" title=\"enum rumqttc::v5::ConnectionError\">ConnectionError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/v5/enum.StateError.html\" title=\"enum rumqttc::v5::StateError\">StateError</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"rumqttc/v5/mqttbytes/enum.Error.html\" title=\"enum rumqttc::v5::mqttbytes::Error\">Error</a>"]]],["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"sysinfo/enum.DiskKind.html\" title=\"enum sysinfo::DiskKind\">DiskKind</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"sysinfo/enum.ProcessStatus.html\" title=\"enum sysinfo::ProcessStatus\">ProcessStatus</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"enum\" href=\"sysinfo/enum.Signal.html\" title=\"enum sysinfo::Signal\">Signal</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"sysinfo/struct.MacAddr.html\" title=\"struct sysinfo::MacAddr\">MacAddr</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/fmt/trait.Display.html\" title=\"trait core::fmt::Display\">Display</a> for <a class=\"struct\" href=\"sysinfo/struct.Pid.html\" title=\"struct sysinfo::Pid\">Pid</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[2375,1262]}
|
||||
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/hash/trait.Hash.html\" title=\"trait core::hash::Hash\">Hash</a> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/hash/trait.Hash.html\" title=\"trait core::hash::Hash\">Hash</a> for <a class=\"struct\" href=\"sysinfo/struct.Pid.html\" title=\"struct sysinfo::Pid\">Pid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/hash/trait.Hash.html\" title=\"trait core::hash::Hash\">Hash</a> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[712]}
|
||||
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a <a class=\"struct\" href=\"sysinfo/struct.Components.html\" title=\"struct sysinfo::Components\">Components</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a <a class=\"struct\" href=\"sysinfo/struct.Disks.html\" title=\"struct sysinfo::Disks\">Disks</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a <a class=\"struct\" href=\"sysinfo/struct.Groups.html\" title=\"struct sysinfo::Groups\">Groups</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a <a class=\"struct\" href=\"sysinfo/struct.Networks.html\" title=\"struct sysinfo::Networks\">Networks</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a <a class=\"struct\" href=\"sysinfo/struct.Users.html\" title=\"struct sysinfo::Users\">Users</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a mut <a class=\"struct\" href=\"sysinfo/struct.Components.html\" title=\"struct sysinfo::Components\">Components</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a mut <a class=\"struct\" href=\"sysinfo/struct.Disks.html\" title=\"struct sysinfo::Disks\">Disks</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a mut <a class=\"struct\" href=\"sysinfo/struct.Groups.html\" title=\"struct sysinfo::Groups\">Groups</a>"],["impl<'a> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/collect/trait.IntoIterator.html\" title=\"trait core::iter::traits::collect::IntoIterator\">IntoIterator</a> for &'a mut <a class=\"struct\" href=\"sysinfo/struct.Users.html\" title=\"struct sysinfo::Users\">Users</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[2891]}
|
||||
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["rumqttc",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"rumqttc/struct.Iter.html\" title=\"struct rumqttc::Iter\">Iter</a><'_>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"struct\" href=\"rumqttc/v5/struct.Iter.html\" title=\"struct rumqttc::v5::Iter\">Iter</a><'_>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[604]}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Components.html\" title=\"struct sysinfo::Components\">Components</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Disks.html\" title=\"struct sysinfo::Disks\">Disks</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Groups.html\" title=\"struct sysinfo::Groups\">Groups</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Networks.html\" title=\"struct sysinfo::Networks\">Networks</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.Deref.html\" title=\"trait core::ops::deref::Deref\">Deref</a> for <a class=\"struct\" href=\"sysinfo/struct.Users.html\" title=\"struct sysinfo::Users\">Users</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[1799]}
|
||||
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.DerefMut.html\" title=\"trait core::ops::deref::DerefMut\">DerefMut</a> for <a class=\"struct\" href=\"sysinfo/struct.Components.html\" title=\"struct sysinfo::Components\">Components</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.DerefMut.html\" title=\"trait core::ops::deref::DerefMut\">DerefMut</a> for <a class=\"struct\" href=\"sysinfo/struct.Disks.html\" title=\"struct sysinfo::Disks\">Disks</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.DerefMut.html\" title=\"trait core::ops::deref::DerefMut\">DerefMut</a> for <a class=\"struct\" href=\"sysinfo/struct.Groups.html\" title=\"struct sysinfo::Groups\">Groups</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/ops/deref/trait.DerefMut.html\" title=\"trait core::ops::deref::DerefMut\">DerefMut</a> for <a class=\"struct\" href=\"sysinfo/struct.Users.html\" title=\"struct sysinfo::Users\">Users</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[1079]}
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,9 @@
|
||||
(function() {
|
||||
var implementors = Object.fromEntries([["sysinfo",[["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/str/traits/trait.FromStr.html\" title=\"trait core::str::traits::FromStr\">FromStr</a> for <a class=\"struct\" href=\"sysinfo/struct.Gid.html\" title=\"struct sysinfo::Gid\">Gid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/str/traits/trait.FromStr.html\" title=\"trait core::str::traits::FromStr\">FromStr</a> for <a class=\"struct\" href=\"sysinfo/struct.Pid.html\" title=\"struct sysinfo::Pid\">Pid</a>"],["impl <a class=\"trait\" href=\"https://doc.rust-lang.org/1.92.0/core/str/traits/trait.FromStr.html\" title=\"trait core::str::traits::FromStr\">FromStr</a> for <a class=\"struct\" href=\"sysinfo/struct.Uid.html\" title=\"struct sysinfo::Uid\">Uid</a>"]]]]);
|
||||
if (window.register_implementors) {
|
||||
window.register_implementors(implementors);
|
||||
} else {
|
||||
window.pending_implementors = implementors;
|
||||
}
|
||||
})()
|
||||
//{"start":57,"fragment_lengths":[778]}
|
||||
Reference in New Issue
Block a user