From c4738034e1c7b57f9bf6b3a097906eeeb2666a68 Mon Sep 17 00:00:00 2001 From: randhid <35934754+randhid@users.noreply.github.com> Date: Mon, 27 Jan 2025 15:16:03 -0500 Subject: [PATCH] Add generic and gripper `FromDependencies` methods (#4747) --- components/generic/generic.go | 6 ++++++ components/gripper/gripper.go | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/components/generic/generic.go b/components/generic/generic.go index 218b6fe5158..99cb60acbac 100644 --- a/components/generic/generic.go +++ b/components/generic/generic.go @@ -31,6 +31,12 @@ func Named(name string) resource.Name { return resource.NewName(API, name) } +// FromDependencies is a helper for getting the named generic from a collection of +// dependencies. +func FromDependencies(deps resource.Dependencies, name string) (resource.Resource, error) { + return resource.FromDependencies[resource.Resource](deps, Named(name)) +} + // FromRobot is a helper for getting the named Generic from the given Robot. func FromRobot(r robot.Robot, name string) (resource.Resource, error) { return robot.ResourceFromRobot[resource.Resource](r, Named(name)) diff --git a/components/gripper/gripper.go b/components/gripper/gripper.go index d2e8450c2fd..74d373b69ff 100644 --- a/components/gripper/gripper.go +++ b/components/gripper/gripper.go @@ -79,6 +79,12 @@ func FromRobot(r robot.Robot, name string) (Gripper, error) { return robot.ResourceFromRobot[Gripper](r, Named(name)) } +// FromDependencies is a helper for getting the named gripper from a collection of +// dependencies. +func FromDependencies(deps resource.Dependencies, name string) (Gripper, error) { + return resource.FromDependencies[Gripper](deps, Named(name)) +} + // NamesFromRobot is a helper for getting all gripper names from the given Robot. func NamesFromRobot(r robot.Robot) []string { return robot.NamesByAPI(r, API)