public static State Generate( AbstractImplementAbstractClassService service, Document document, SemanticModel model, SyntaxNode node, CancellationToken cancellationToken) { INamedTypeSymbol classType, abstractClassType; if (!service.TryInitializeState(document, model, node, cancellationToken, out classType, out abstractClassType)) { return(null); } if (!CodeGenerator.CanAdd(document.Project.Solution, classType, cancellationToken)) { return(null); } if (classType.IsAbstract) { return(null); } var unimplementedMembers = classType.GetAllUnimplementedMembers( SpecializedCollections.SingletonEnumerable(abstractClassType), cancellationToken); if (unimplementedMembers != null && unimplementedMembers.Count >= 1) { return(new State(node, classType, abstractClassType, unimplementedMembers)); } else { return(null); } }
public static State Generate( AbstractImplementAbstractClassService service, Document document, SemanticModel model, SyntaxNode node, CancellationToken cancellationToken) { INamedTypeSymbol classType, abstractClassType; if (!service.TryInitializeState(document, model, node, cancellationToken, out classType, out abstractClassType)) { return null; } if (!CodeGenerator.CanAdd(document.Project.Solution, classType, cancellationToken)) { return null; } if (classType.IsAbstract) { return null; } var unimplementedMembers = classType.GetAllUnimplementedMembers( SpecializedCollections.SingletonEnumerable(abstractClassType), cancellationToken); if (unimplementedMembers != null && unimplementedMembers.Count >= 1) { return new State(node, classType, abstractClassType, unimplementedMembers); } else { return null; } }