Skip to content

Commit 898d120

Browse files
Merge pull request #340 from purelualight/master
refactor: replace Split in loops with more efficient SplitSeq
2 parents 86c0435 + 9d44efd commit 898d120

6 files changed

Lines changed: 8 additions & 8 deletions

File tree

cmd/detail/cmp.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -275,13 +275,13 @@ func (v *Version) Ok() bool {
275275
// inRangeInterval 判断一个版本是否在一个版本范围内
276276
func inRangeInterval(ver *Version, interval string) bool {
277277
// 遍历所有范围
278-
for _, interval := range strings.Split(interval, "||") {
278+
for interval := range strings.SplitSeq(interval, "||") {
279279
if len(interval) < 2 {
280280
continue
281281
}
282282
// 集合形式
283283
if interval[0] == '{' && interval[len(interval)-1] == '}' {
284-
for _, v := range strings.Split(strings.Trim(interval, "{}"), ",") {
284+
for v := range strings.SplitSeq(strings.Trim(interval, "{}"), ",") {
285285
if newVersion(v).Equal(ver) {
286286
return true
287287
}

cmd/format/save.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ type TaskInfo struct {
3434
}
3535

3636
func Save(report Report, output string) {
37-
for _, out := range strings.Split(output, ",") {
37+
for out := range strings.SplitSeq(output, ",") {
3838
logs.Infof("result save to %s", out)
3939
switch filepath.Ext(out) {
4040
case ".html":

opensca/sca/groovy/variable.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ func (v Variable) Scan(file *model.File) {
8383
if object == "" {
8484
continue
8585
}
86-
for _, line := range strings.Split(text[bi[1]:end], "\n") {
86+
for line := range strings.SplitSeq(text[bi[1]:end], "\n") {
8787
match := varReg.FindStringSubmatch(line)
8888
if len(match) == 3 {
8989
if object == "ext" {

opensca/sca/javascript/yarn.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ func ParseYarnLock(file *model.File) map[string]*YarnLock {
3636

3737
if !strings.HasPrefix(line, " ") && strings.HasSuffix(line, ":") {
3838
lastDep = &YarnLock{Dependencies: map[string]string{}}
39-
for _, tag := range strings.Split(line, ",") {
39+
for tag := range strings.SplitSeq(line, ",") {
4040
i := strings.LastIndex(tag, "@")
4141
if i == -1 {
4242
logs.Warnf("parse file %s line: %s fail", file.Relpath(), line)

opensca/sca/php/composer.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ func FindMaxVersion(version string, versions []string) string {
234234
s = strings.TrimLeft(strings.TrimSpace(s), "vV")
235235
// 将 ~x[.x](php范围约束) 替换为 ^x[.x](semver范围约束)
236236
var fix []string
237-
for _, sub := range strings.Split(s, ",") {
237+
for sub := range strings.SplitSeq(s, ",") {
238238
if strings.Contains(sub, "~") && strings.Count(sub, ".") < 2 {
239239
sub = strings.ReplaceAll(sub, "~", "^")
240240
}
@@ -243,7 +243,7 @@ func FindMaxVersion(version string, versions []string) string {
243243
return strings.Join(fix, ",")
244244
}
245245
var cs []*semver.Constraints
246-
for _, v := range strings.Split(version, "|") {
246+
for v := range strings.SplitSeq(version, "|") {
247247
c, err := semver.NewConstraint(fix(v))
248248
if err == nil {
249249
cs = append(cs, c)

opensca/sca/php/sca.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ loop:
5656
}
5757

5858
// vendor中的composer.json没有对应lock则不做处理
59-
for _, dir := range strings.Split(dir, "/") {
59+
for dir := range strings.SplitSeq(dir, "/") {
6060
if strings.EqualFold(dir, "vendor") {
6161
continue loop
6262
}

0 commit comments

Comments
 (0)