[generate-type-forwarders] Fix const/readonly fields (#10944)
Examples: ```diff -public double MinimumDuration = 5---null---; +public const double MinimumDuration = null; ``` ```diff public ---readonly--- Foundation.NSString RGB565; ``` Also handle `string` constants (quotes).
This commit is contained in:
Родитель
78ac083dcd
Коммит
007964cb9f
|
@ -357,11 +357,24 @@ namespace GenerateTypeForwarders {
|
|||
} else {
|
||||
sb.Append ('\t', indent);
|
||||
sb.Append ("public ");
|
||||
if (fd.IsStatic)
|
||||
if (fd.IsLiteral)
|
||||
sb.Append ("const ");
|
||||
else if (fd.IsStatic)
|
||||
sb.Append ("static ");
|
||||
if (fd.IsInitOnly)
|
||||
sb.Append ("readonly ");
|
||||
EmitTypeName (sb, fd.FieldType);
|
||||
sb.Append (' ');
|
||||
sb.Append (fd.Name);
|
||||
if (fd.HasConstant) {
|
||||
sb.Append (" = ");
|
||||
bool is_string = fd.Constant is string;
|
||||
if (is_string)
|
||||
sb.Append ('"');
|
||||
sb.Append (fd.Constant);
|
||||
if (is_string)
|
||||
sb.Append ('"');
|
||||
}
|
||||
sb.Append (';');
|
||||
}
|
||||
sb.AppendLine ();
|
||||
|
|
Загрузка…
Ссылка в новой задаче