@@ -36,49 +36,49 @@ object ModulePositionScanner {
36
36
fileData : FileData
37
37
): Iterator [ModulePosition ] =
38
38
sbtModuleIdRegex(dependency).findAllIn(fileData.content).matchData.map { m =>
39
- val groupId = Substring .Position .fromMatch (fileData.path, m, dependency.groupId.value)
40
- val artifactId = Substring .Position .fromMatch (fileData.path, m, dependency.artifactId.name)
41
- val version = Substring .Position .fromMatch (fileData.path, m, m.group(1 ))
39
+ val groupId = Substring .Position (fileData.path, m.start( 1 ) , dependency.groupId.value)
40
+ val artifactId = Substring .Position (fileData.path, m.start( 2 ) , dependency.artifactId.name)
41
+ val version = Substring .Position (fileData.path, m.start( 3 ) , m.group(3 ))
42
42
ModulePosition (groupId, artifactId, version)
43
43
}
44
44
45
45
private def sbtModuleIdRegex (dependency : Dependency ): Regex = {
46
46
val g = Regex .quote(dependency.groupId.value)
47
47
val a = Regex .quote(dependency.artifactId.name)
48
- raw """ " $g "\s*%+\s*" $a "\s*%+\s*(.*) """ .r
48
+ raw """ "( $g ) "\s*%+\s*"( $a ) "\s*%+\s*(.*)""" .r
49
49
}
50
50
51
51
private def findMillDependency (
52
52
dependency : Dependency ,
53
53
fileData : FileData
54
54
): Iterator [ModulePosition ] =
55
55
millDependencyRegex(dependency).findAllIn(fileData.content).matchData.map { m =>
56
- val groupId = Substring .Position .fromMatch (fileData.path, m, dependency.groupId.value)
57
- val artifactId = Substring .Position .fromMatch (fileData.path, m, dependency.artifactId.name)
58
- val version = Substring .Position .fromMatch (fileData.path, m, m.group(1 ))
56
+ val groupId = Substring .Position (fileData.path, m.start( 1 ) , dependency.groupId.value)
57
+ val artifactId = Substring .Position (fileData.path, m.start( 2 ) , dependency.artifactId.name)
58
+ val version = Substring .Position (fileData.path, m.start( 3 ) , m.group(3 ))
59
59
ModulePosition (groupId, artifactId, version)
60
60
}
61
61
62
62
private def millDependencyRegex (dependency : Dependency ): Regex = {
63
63
val g = Regex .quote(dependency.groupId.value)
64
64
val a = Regex .quote(dependency.artifactId.name)
65
- raw """ ["`] $g :+ $a :+(.*)["`;] """ .r
65
+ raw """ ["`]( $g ):+( $a ) :+(.*)["`;]""" .r
66
66
}
67
67
68
68
private def findMavenDependency (
69
69
dependency : Dependency ,
70
70
fileData : FileData
71
71
): Iterator [ModulePosition ] =
72
72
mavenDependencyRegex(dependency).findAllIn(fileData.content).matchData.map { m =>
73
- val groupId = Substring .Position .fromMatch (fileData.path, m, dependency.groupId.value)
74
- val artifactId = Substring .Position .fromMatch (fileData.path, m, dependency.artifactId.name)
75
- val version = Substring .Position .fromMatch (fileData.path, m, m.group(2 ))
73
+ val groupId = Substring .Position (fileData.path, m.start( 1 ) , dependency.groupId.value)
74
+ val artifactId = Substring .Position (fileData.path, m.start( 2 ) , dependency.artifactId.name)
75
+ val version = Substring .Position (fileData.path, m.start( 4 ) , m.group(4 ))
76
76
ModulePosition (groupId, artifactId, version)
77
77
}
78
78
79
79
private def mavenDependencyRegex (dependency : Dependency ): Regex = {
80
80
val g = Regex .quote(dependency.groupId.value)
81
81
val a = Regex .quote(dependency.artifactId.name)
82
- raw """ <groupId> $g </groupId>\s*<artifactId> $a (|_[^<]+)</artifactId>\s*<version>(.*)</version> """ .r
82
+ raw """ <groupId>( $g ) </groupId>\s*<artifactId>( $a ) (|_[^<]+)</artifactId>\s*<version>(.*)</version>""" .r
83
83
}
84
84
}
0 commit comments