Esempio n. 1
0
        private static IEnumerable <IPropertySymbol> GetSymbolsForToString(INamedTypeSymbol type)
        {
            foreach (var typeProperty in type.GetMembers().Where(t => t.Kind == SymbolKind.Property))
            {
                if (typeProperty is IPropertySymbol propertySymbol)
                {
                    var visible = propertySymbol.DeclaredAccessibility == Accessibility.Public || propertySymbol.DeclaredAccessibility == Accessibility.Internal;
                    var containsSkipAttribute = CompilationHelper.SymbolContainsAttribute <SkipToStringAttribute>(propertySymbol);

                    if (visible && !containsSkipAttribute)
                    {
                        yield return(propertySymbol);
                    }
                }
            }
        }
Esempio n. 2
0
 internal static bool ShouldUseGenerator([ValidatedNotNull] INamedTypeSymbol symbol)
 {
     return(CompilationHelper.SymbolContainsAttribute <AutoToStringAttribute>(symbol));
 }