代码拉取完成,页面将自动刷新
同步操作将从 悬镜安全/OpenSCA-cli 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package python
import (
"util/enum/language"
"util/filter"
"util/model"
)
type Analyzer struct {
}
func New() Analyzer {
return Analyzer{}
}
// GetLanguage get language of analyzer
func (Analyzer) GetLanguage() language.Type {
return language.Python
}
// CheckFile check parsable file
func (Analyzer) CheckFile(filename string) bool {
return filter.PythonSetup(filename) ||
filter.PythonPipfile(filename) ||
filter.PythonPipfileLock(filename) ||
filter.PythonRequirementsTxt(filename) ||
filter.PythonRequirementsIn(filename)
}
// ParseFiles parse dependency from file
func (Analyzer) ParseFiles(files []*model.FileInfo) []*model.DepTree {
deps := []*model.DepTree{}
for _, f := range files {
dep := model.NewDepTree(nil)
dep.Path = f.Name
if filter.PythonSetup(f.Name) {
parseSetup(dep, f)
} else if filter.PythonPipfile(f.Name) {
parsePipfile(dep, f)
} else if filter.PythonPipfileLock(f.Name) {
parsePipfileLock(dep, f)
} else if filter.PythonRequirementsTxt(f.Name) || filter.PythonRequirementsIn(f.Name) {
parseRequirementsin(dep, f)
}
deps = append(deps, dep)
}
return deps
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。