Skip to content

Commit f44a6ac

Browse files
committed
Add return values
1 parent 1613507 commit f44a6ac

File tree

15 files changed

+105
-70
lines changed

15 files changed

+105
-70
lines changed

Sources/Java2SwiftLib/JavaClassTranslator.swift

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -568,14 +568,14 @@ extension JavaClassTranslator {
568568
? "override "
569569
: ""
570570

571-
if let resultOptional = resultTypeStr.optionalWrappedType() {
571+
if let resultOptional = resultType.optionalWrappedType() {
572572
let parameters = parameters.map { "\($0.secondName!.trimmedDescription)" }.joined(separator: ", ")
573573
return """
574-
\(methodAttribute)\(raw: accessModifier)\(raw: overrideOpt)func __\(raw: swiftMethodName)\(raw: genericParameterClause)(\(raw: parametersStr))\(raw: throwsStr)\(raw: resultTypeStr)\(raw: whereClause)
574+
\(methodAttribute)\(raw: accessModifier)\(raw: overrideOpt)func \(raw: swiftMethodName)\(raw: genericParameterClause)(\(raw: parametersStr))\(raw: throwsStr)\(raw: resultTypeStr)\(raw: whereClause)
575575
576-
\(raw: accessModifier)\(raw: overrideOpt)func \(raw: swiftMethodName)\(raw: genericParameterClause)(\(raw: parametersStr))\(raw: throwsStr)\(raw: resultOptional)\(raw: whereClause) {
577-
\(raw: javaMethod.throwsCheckedException ? "try " : "")__\(raw: swiftMethodName)(\(raw: parameters))?.toJavaOptional()
578-
}
576+
\(raw: accessModifier)\(raw: overrideOpt)func \(raw: swiftMethodName)Optional\(raw: genericParameterClause)(\(raw: parametersStr))\(raw: throwsStr) -> \(raw: resultOptional)\(raw: whereClause) {
577+
Optional(javaOptional: \(raw: javaMethod.throwsCheckedException ? "try " : "")\(raw: swiftMethodName)(\(raw: parameters)))
578+
}
579579
"""
580580
} else {
581581
return """
@@ -605,13 +605,13 @@ extension JavaClassTranslator {
605605
"""
606606
} else { "" }
607607
return """
608-
\(fieldAttribute)(isFinal: \(raw: javaField.isFinal))
608+
\(fieldAttribute)("\(raw: swiftFieldName)", isFinal: \(raw: javaField.isFinal))
609609
public var __\(raw: swiftFieldName): \(raw: typeName)
610610
611611
612612
public var \(raw: swiftFieldName): \(raw: optionalType)? {
613613
get {
614-
.init(__\(raw: swiftFieldName))
614+
Optional(javaOptional: __\(raw: swiftFieldName))
615615
}\(raw: setter)
616616
}
617617
"""

Sources/Java2SwiftLib/StringExtras.swift

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,8 @@ extension String {
4141
}
4242

4343
public func optionalWrappedType() -> String? {
44-
print("\(self) printing this thing")
45-
if starts(with: "JavaOptional<") {
46-
return String(self[index(startIndex, offsetBy: 13)..<index(before: endIndex)])
44+
if hasPrefix("JavaOptional<") {
45+
return "\(String(self[index(startIndex, offsetBy: 13)..<lastIndex(of: ">")!]))?"
4746
} else {
4847
return nil
4948
}

Sources/JavaKit/AnyJavaObject.swift

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,12 +56,6 @@ public protocol CustomJavaClassLoader: AnyJavaObject {
5656
static func getJavaClassLoader(in environment: JNIEnvironment) throws -> JavaClassLoader!
5757
}
5858

59-
/// Add getClassLoader() to JavaObject as it is otherwise recursively defined
60-
extension JavaObject {
61-
@JavaMethod
62-
public func getClassLoader() throws -> JavaClassLoader!
63-
}
64-
6559
extension AnyJavaObject {
6660
/// Retrieve the underlying Java object.
6761
public var javaThis: jobject {

Sources/JavaKit/Optional+JavaOptional.swift

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,11 @@ extension Optional where Wrapped: AnyJavaObject {
1717
return try! JavaClass<JavaOptional<Wrapped>>().ofNullable(self?.as(JavaObject.self)).as(JavaOptional<Wrapped>.self)!
1818
}
1919

20-
init?(_ javaOptional: JavaOptional<Wrapped>) {
21-
self = javaOptional.isPresent() ? javaOptional.get().as(Wrapped.self) : Optional<Wrapped>.none
20+
init(javaOptional: JavaOptional<Wrapped>?) {
21+
if let javaOptional {
22+
self = javaOptional.isPresent() ? javaOptional.get().as(Wrapped.self) : Optional<Wrapped>.none
23+
} else {
24+
self = nil
25+
}
2226
}
2327
}

Sources/JavaKit/generated/JavaClass.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,9 @@ open class JavaClass<T: AnyJavaObject>: JavaObject {
133133
open func isSealed() -> Bool
134134
}
135135
extension JavaClass {
136+
@JavaStaticMethod
137+
public func forName<T: AnyJavaObject>(_ arg0: String, _ arg1: Bool, _ arg2: JavaClassLoader?) throws -> JavaClass<JavaObject>! where ObjectType == JavaClass<T>
138+
136139
@JavaStaticMethod
137140
public func forName<T: AnyJavaObject>(_ arg0: String) throws -> JavaClass<JavaObject>! where ObjectType == JavaClass<T>
138141

Sources/JavaKit/generated/JavaClassLoader.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ open class JavaClassLoader: JavaObject {
3131
open func resolveClass(_ arg0: JavaClass<JavaObject>?)
3232

3333
@JavaMethod
34-
open func defineClass(_ arg0: [Int8], _ arg1: Int32, _ arg2: Int32) throws -> JavaClass<JavaObject>!
34+
open func defineClass(_ arg0: String, _ arg1: [Int8], _ arg2: Int32, _ arg3: Int32) throws -> JavaClass<JavaObject>!
3535

3636
@JavaMethod
37-
open func defineClass(_ arg0: String, _ arg1: [Int8], _ arg2: Int32, _ arg3: Int32) throws -> JavaClass<JavaObject>!
37+
open func defineClass(_ arg0: [Int8], _ arg1: Int32, _ arg2: Int32) throws -> JavaClass<JavaObject>!
3838

3939
@JavaMethod
4040
open func findLibrary(_ arg0: String) -> String

Sources/JavaKit/generated/JavaDouble.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,10 @@ open class JavaDouble: JavaNumber {
4848
@JavaMethod
4949
open func describeConstable() -> JavaOptional<JavaDouble>!
5050

51+
open func describeConstableOptional() -> JavaDouble? {
52+
Optional(javaOptional: describeConstable())
53+
}
54+
5155
@JavaMethod
5256
open func isNaN() -> Bool
5357
}

Sources/JavaKit/generated/JavaFloat.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,10 @@ open class JavaFloat: JavaNumber {
5151
@JavaMethod
5252
open func describeConstable() -> JavaOptional<JavaFloat>!
5353

54+
open func describeConstableOptional() -> JavaFloat? {
55+
Optional(javaOptional: describeConstable())
56+
}
57+
5458
@JavaMethod
5559
open func isNaN() -> Bool
5660
}

Sources/JavaKit/generated/JavaInteger.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ open class JavaInteger: JavaNumber {
4444

4545
@JavaMethod
4646
open func describeConstable() -> JavaOptional<JavaInteger>!
47+
48+
open func describeConstableOptional() -> JavaInteger? {
49+
Optional(javaOptional: describeConstable())
50+
}
4751
}
4852
extension JavaClass<JavaInteger> {
4953
@JavaStaticField(isFinal: true)

Sources/JavaKit/generated/JavaLong.swift

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,10 @@ open class JavaLong: JavaNumber {
4444

4545
@JavaMethod
4646
open func describeConstable() -> JavaOptional<JavaLong>!
47+
48+
open func describeConstableOptional() -> JavaLong? {
49+
Optional(javaOptional: describeConstable())
50+
}
4751
}
4852
extension JavaClass<JavaLong> {
4953
@JavaStaticField(isFinal: true)

0 commit comments

Comments
 (0)