public CompilationUnitField ToCompilationUnitField(ldtk.FieldDefinition fieldDefinition, LdtkGeneratorContext ctx) { CompilationUnitField field = new CompilationUnitField(); field.Name = fieldDefinition.Identifier; field.Type = GetDeclaringTypeFor(fieldDefinition, ctx); field.Visibility = CompilationUnitField.FieldVisibility.Public; if (fieldDefinition.IsArray) { field.RequiredImport = GetArrayImport(); } return(field); }
public virtual string GetDeclaringTypeFor(ldtk.FieldDefinition fieldDefinition, LdtkGeneratorContext ctx) { string baseType = fieldDefinition.Type; if (fieldDefinition.IsArray) { baseType = baseType.Substring(6, baseType.Length - 7); } string declType = GetCSharpTypeFor(baseType); if (fieldDefinition.IsArray) { declType += "[]"; } return(declType); }