Skip to content

Commit c3ecd54

Browse files
koloyyeektoso
andauthored
Add function documentation (#363)
Co-authored-by: Konrad `ktoso` Malawski <[email protected]>
1 parent 94cb7ec commit c3ecd54

File tree

2 files changed

+27
-1
lines changed

2 files changed

+27
-1
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
.DS_Store
55
.build
66
.idea
7+
.vscode
78
Packages
89
xcuserdata/
910
DerivedData/
@@ -16,6 +17,7 @@ bin/
1617
BuildLogic/out/
1718
.index-build
1819
.build-vscode
20+
**/.vscode
1921

2022
# Ignore gradle build artifacts
2123
.gradle
@@ -45,3 +47,4 @@ Package.resolved
4547
*/**/*.swiftdeps
4648
*/**/*.swiftdeps~
4749
*/**/.docc-build/
50+

Sources/SwiftJavaTool/Commands/ResolveCommand.swift

Lines changed: 24 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,15 @@ extension SwiftJava.ResolveCommand {
8989
resolvedClasspath: dependenciesClasspath)
9090
}
9191

92+
93+
/// Resolves Java dependencies from swift-java.config and returns classpath information.
94+
///
95+
/// - Parameters:
96+
/// - swiftModule: module name from --swift-module. e.g.: --swift-module MySwiftModule
97+
/// - dependencies: parsed maven-style dependency descriptors (groupId:artifactId:version)
98+
/// from Sources/MySwiftModule/swift-java.config "dependencies" array.
99+
///
100+
/// - Throws:
92101
func resolveDependencies(
93102
swiftModule: String, dependencies: [JavaDependencyDescriptor]
94103
) async throws -> ResolvedDependencyClasspath {
@@ -108,6 +117,11 @@ extension SwiftJava.ResolveCommand {
108117
return ResolvedDependencyClasspath(for: dependencies, classpath: dependenciesClasspath)
109118
}
110119

120+
121+
/// Resolves maven-style dependencies from swift-java.config under temporary project directory.
122+
///
123+
/// - Parameter dependencies: maven-style dependencies to resolve
124+
/// - Returns: Colon-separated classpath
111125
func resolveDependencies(dependencies: [JavaDependencyDescriptor]) async -> String {
112126
let workDir = URL(fileURLWithPath: FileManager.default.currentDirectoryPath)
113127
.appendingPathComponent(".build")
@@ -158,6 +172,7 @@ extension SwiftJava.ResolveCommand {
158172
}
159173
}
160174

175+
/// Creates Gradle project files (build.gradle, settings.gradle.kts) in temporary directory.
161176
func printGradleProject(directory: URL, dependencies: [JavaDependencyDescriptor]) throws {
162177
let buildGradle = directory
163178
.appendingPathComponent("build.gradle", isDirectory: false)
@@ -189,7 +204,14 @@ extension SwiftJava.ResolveCommand {
189204
"""
190205
try settingsGradleText.write(to: settingsGradle, atomically: true, encoding: .utf8)
191206
}
192-
207+
208+
/// Creates {MySwiftModule}.swift.classpath in the --output-directory.
209+
///
210+
/// - Parameters:
211+
/// - swiftModule: Swift module name for classpath filename (--swift-module value)
212+
/// - outputDirectory: Directory path for classpath file (--output-directory value)
213+
/// - resolvedClasspath: Complete dependency classpath information
214+
///
193215
mutating func writeSwiftJavaClasspathFile(
194216
swiftModule: String,
195217
outputDirectory: String,
@@ -218,6 +240,7 @@ extension SwiftJava.ResolveCommand {
218240
return camelCased
219241
}
220242

243+
// copy gradlew & gradle.bat from root, throws error if there is no gradle setup.
221244
func copyGradlew(to resolverWorkDirectory: URL) throws {
222245
var searchDir = URL(fileURLWithPath: FileManager.default.currentDirectoryPath)
223246

0 commit comments

Comments
 (0)