private (bool IsGeneratedType, string TypeName) GetPropertyTypeName(ITypeSymbol propertyTypeSymbol) { if (GeneratedTypeFilter.IsGeneratableType(propertyTypeSymbol)) { return(true, NameBuilder.GetFullTypeName(propertyTypeSymbol)); } return(false, propertyTypeSymbol.ToDisplayString(GeneratedTypeFilter.SymbolFormat)); }
public GeneratedWrapper BuildWrapperType(ITypeSymbol typeInfo, string sourceTypeName) { var name = NameBuilder.GetName(typeInfo); var state = InitializeState(typeInfo, name, sourceTypeName); BuildFile(state); return(new GeneratedWrapper() { FileName = $"LaDeakJsonMergePatch{NameBuilder.GetNamespaceExtension(typeInfo)}{name}", SourceCode = state.Builder.ToString(), SourceTypeFullName = sourceTypeName, TargetTypeFullName = NameBuilder.GetFullTypeName(typeInfo), ToProcessTypes = state.ToProcessTypeSymbols }); }