1*c8dee2aaSAndroid Build Coastguard Worker// Copyright 2024 Google LLC 2*c8dee2aaSAndroid Build Coastguard Worker// 3*c8dee2aaSAndroid Build Coastguard Worker// Use of this source code is governed by a BSD-style license that can be 4*c8dee2aaSAndroid Build Coastguard Worker// found in the LICENSE file. 5*c8dee2aaSAndroid Build Coastguard Worker 6*c8dee2aaSAndroid Build Coastguard Worker//go:generate bazelisk run //:go -- run ./generate.go 7*c8dee2aaSAndroid Build Coastguard Workerpackage deps 8*c8dee2aaSAndroid Build Coastguard Worker 9*c8dee2aaSAndroid Build Coastguard Workerimport ( 10*c8dee2aaSAndroid Build Coastguard Worker "go.skia.org/infra/go/depot_tools/deps_parser" 11*c8dee2aaSAndroid Build Coastguard Worker "go.skia.org/infra/go/skerr" 12*c8dee2aaSAndroid Build Coastguard Worker) 13*c8dee2aaSAndroid Build Coastguard Worker 14*c8dee2aaSAndroid Build Coastguard Worker// Get retrieves the given dependency. Returns an error of the given dependency 15*c8dee2aaSAndroid Build Coastguard Worker// does not exist. 16*c8dee2aaSAndroid Build Coastguard Workerfunc Get(dep string) (*deps_parser.DepsEntry, error) { 17*c8dee2aaSAndroid Build Coastguard Worker entry := deps.Get(dep) 18*c8dee2aaSAndroid Build Coastguard Worker if entry == nil { 19*c8dee2aaSAndroid Build Coastguard Worker return nil, skerr.Fmt("unknown dependency %q (normalized as %q)", dep, deps_parser.NormalizeDep(dep)) 20*c8dee2aaSAndroid Build Coastguard Worker } 21*c8dee2aaSAndroid Build Coastguard Worker // Return a copy to prevent modification of the package-local entries. 22*c8dee2aaSAndroid Build Coastguard Worker return &deps_parser.DepsEntry{ 23*c8dee2aaSAndroid Build Coastguard Worker Id: entry.Id, 24*c8dee2aaSAndroid Build Coastguard Worker Version: entry.Version, 25*c8dee2aaSAndroid Build Coastguard Worker Path: entry.Path, 26*c8dee2aaSAndroid Build Coastguard Worker }, nil 27*c8dee2aaSAndroid Build Coastguard Worker} 28