File tree Expand file tree Collapse file tree 2 files changed +8
-3
lines changed Expand file tree Collapse file tree 2 files changed +8
-3
lines changed Original file line number Diff line number Diff line change @@ -64,9 +64,14 @@ extension JavaFieldMacro: AccessorMacro {
64
64
getter
65
65
]
66
66
67
+ let nonmutatingModifier =
68
+ ( context. lexicalContext. first? . is ( ClassDeclSyntax . self) ?? false )
69
+ ? " "
70
+ : " nonmutating "
71
+
67
72
if createSetter {
68
73
let setter : AccessorDeclSyntax = """
69
- nonmutating set { self[javaFieldName: \( literal: fieldName) , fieldType: \( fieldType) .self] = newValue }
74
+ \( raw : nonmutatingModifier ) set { self[javaFieldName: \( literal: fieldName) , fieldType: \( fieldType) .self] = newValue }
70
75
"""
71
76
accessors. append ( setter)
72
77
}
Original file line number Diff line number Diff line change @@ -167,15 +167,15 @@ class JavaKitMacroTests: XCTestCase {
167
167
get {
168
168
self[javaFieldName: " myField " , fieldType: Int64.self]
169
169
}
170
- nonmutating set {
170
+ set {
171
171
self[javaFieldName: " myField " , fieldType: Int64.self] = newValue
172
172
}
173
173
}
174
174
public var objectField: JavaObject! {
175
175
get {
176
176
self[javaFieldName: " objectField " , fieldType: JavaObject?.self]
177
177
}
178
- nonmutating set {
178
+ set {
179
179
self[javaFieldName: " objectField " , fieldType: JavaObject?.self] = newValue
180
180
}
181
181
}
You can’t perform that action at this time.
0 commit comments