mirror of
https://github.com/anchore/syft.git
synced 2026-11-02 23:46:35 +01:00
add gem analyzer
This commit is contained in:
@@ -26,6 +26,10 @@ func NewCatalog() *Catalog {
|
||||
}
|
||||
}
|
||||
|
||||
func (c *Catalog) PackageCount() int {
|
||||
return len(c.byID)
|
||||
}
|
||||
|
||||
func (c *Catalog) Package(id ID) *Package {
|
||||
return c.byID[id]
|
||||
}
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
package pkg
|
||||
|
||||
const (
|
||||
UnknownLanguage Language = iota
|
||||
Java
|
||||
JavaScript
|
||||
Python
|
||||
Ruby
|
||||
)
|
||||
|
||||
type Language uint
|
||||
|
||||
var languageStr = []string{
|
||||
"UnknownLanguage",
|
||||
"java",
|
||||
"javascript",
|
||||
"python",
|
||||
"ruby",
|
||||
}
|
||||
|
||||
var AllLanguages = []Language{
|
||||
Java,
|
||||
JavaScript,
|
||||
Python,
|
||||
Ruby,
|
||||
}
|
||||
|
||||
func (t Language) String() string {
|
||||
if int(t) >= len(languageStr) {
|
||||
return languageStr[0]
|
||||
}
|
||||
return languageStr[t]
|
||||
}
|
||||
@@ -16,6 +16,7 @@ type Package struct {
|
||||
FoundBy string
|
||||
Source []file.Reference
|
||||
Licenses []string
|
||||
Language Language // TODO: should this support multiple languages as a slice?
|
||||
Type Type
|
||||
Metadata interface{}
|
||||
}
|
||||
|
||||
+10
-8
@@ -3,13 +3,10 @@ package pkg
|
||||
const (
|
||||
UnknownPkg Type = iota
|
||||
ApkPkg
|
||||
BundlerPkg
|
||||
DebPkg
|
||||
JavaPkg
|
||||
JavaScriptPkg
|
||||
PacmanPkg
|
||||
PythonPkg
|
||||
RpmPkg
|
||||
RubyPkg
|
||||
)
|
||||
|
||||
type Type uint
|
||||
@@ -17,13 +14,18 @@ type Type uint
|
||||
var typeStr = []string{
|
||||
"UnknownPackage",
|
||||
"apk",
|
||||
"bundler",
|
||||
"deb",
|
||||
"java",
|
||||
"javascript",
|
||||
"pacman",
|
||||
"python",
|
||||
"rpm",
|
||||
"ruby",
|
||||
}
|
||||
|
||||
var AllPkgs = []Type{
|
||||
ApkPkg,
|
||||
BundlerPkg,
|
||||
DebPkg,
|
||||
PacmanPkg,
|
||||
RpmPkg,
|
||||
}
|
||||
|
||||
func (t Type) String() string {
|
||||
|
||||
Reference in New Issue
Block a user