Skip to content

Commit 74495d5

Browse files
For readonly properties, use getter accessibility as property accessibility. For read-write properties, use the widest accessibility
1 parent 288222e commit 74495d5

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

src/ThunderDesign.Net-PCL.SourceGenerators/UnifiedPropertyGenerator.cs

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,9 @@ private static void GenerateBindableProperties(
353353
string getterValue = getterEnum != null ? GetAccessibilityName((int)getterEnum) : "Public";
354354
string setterValue = setterEnum != null ? GetAccessibilityName((int)setterEnum) : "Public";
355355

356-
string propertyAccessRaw = GetWidestAccessibility(getterValue, setterValue);
356+
// For readonly properties, use getter accessibility as property accessibility
357+
// For read-write properties, use the widest accessibility
358+
string propertyAccessRaw = readOnly ? getterValue : GetWidestAccessibility(getterValue, setterValue);
357359
string propertyAccessibilityStr = ToPropertyAccessibilityString(propertyAccessRaw);
358360

359361
var lockerArg = threadSafe ? "_Locker" : "null";
@@ -516,7 +518,9 @@ private static void GenerateRegularProperties(
516518
string getterValue = getterEnum != null ? GetAccessibilityName((int)getterEnum) : "Public";
517519
string setterValue = setterEnum != null ? GetAccessibilityName((int)setterEnum) : "Public";
518520

519-
string propertyAccessRaw = GetWidestAccessibility(getterValue, setterValue);
521+
// For readonly properties, use getter accessibility as property accessibility
522+
// For read-write properties, use the widest accessibility
523+
string propertyAccessRaw = readOnly ? getterValue : GetWidestAccessibility(getterValue, setterValue);
520524
string propertyAccessibilityStr = ToPropertyAccessibilityString(propertyAccessRaw);
521525

522526
var lockerArg = threadSafe ? "_Locker" : "null";

0 commit comments

Comments
 (0)