github.com/anchore/syft@v1.4.2-0.20240516191711-1bec1fc5d397/syft/pkg/cataloger/elixir/package.go (about) 1 package elixir 2 3 import ( 4 "github.com/anchore/packageurl-go" 5 "github.com/anchore/syft/syft/file" 6 "github.com/anchore/syft/syft/pkg" 7 ) 8 9 func newPackage(d pkg.ElixirMixLockEntry, locations ...file.Location) pkg.Package { 10 p := pkg.Package{ 11 Name: d.Name, 12 Version: d.Version, 13 Language: pkg.Elixir, 14 Locations: file.NewLocationSet(locations...), 15 PURL: packageURL(d), 16 Type: pkg.HexPkg, 17 Metadata: d, 18 } 19 20 p.SetID() 21 22 return p 23 } 24 25 func packageURL(m pkg.ElixirMixLockEntry) string { 26 var qualifiers packageurl.Qualifiers 27 28 return packageurl.NewPackageURL( 29 packageurl.TypeHex, 30 "", 31 m.Name, 32 m.Version, 33 qualifiers, 34 "", 35 ).ToString() 36 }