summaryrefslogtreecommitdiff
path: root/src/tasks/server.rs
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2025-09-24 00:57:52 +0800
committerlittleblack111 <littleblack11111@gmail.com>2025-09-24 00:57:52 +0800
commitc7de2da6f9a966096d15d00cfc2c404fd086ae24 (patch)
treefd074ab646fe04dd238476ffce315e69f3074b21 /src/tasks/server.rs
parent22c98311a8e8f4a1c94b0e4ac0f36b4e016a2bf4 (diff)
fix lifetime issue
Diffstat (limited to 'src/tasks/server.rs')
-rw-r--r--src/tasks/server.rs20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/tasks/server.rs b/src/tasks/server.rs
index dee5254..4271b7c 100644
--- a/src/tasks/server.rs
+++ b/src/tasks/server.rs
@@ -48,20 +48,20 @@ fn get_ip(_: &[&str], ctx: &ServerCtx) -> TaskOutput {
}
}
-impl<'a> TryFrom<Name> for &'static Task<'a> {
+impl<'a> TryFrom<Name> for Task<'a> {
type Error = IntoTaskErr;
fn try_from(value: Name) -> Result<Self, Self::Error> {
- for task in TASKS {
- if task
- .0
- .name
- == value
- {
- return Ok(task);
- }
+ match value {
+ Name::GetIp => Ok(
+ Task(
+ BaseTask {
+ name: Name::GetIp,
+ exec: get_ip,
+ },
+ ),
+ ),
}
- Err(IntoTaskErr::NotFound(value.to_string()))
}
}