private static ITypeSymbol ResolveContainingType(SyntaxNode node, SemanticModel model) { if (node == null) { return null; } var parent = node.Parent; if (parent is BaseTypeDeclarationSyntax) { var symbolInfo = model.GetDeclaredSymbol(parent); return symbolInfo as ITypeSymbol; } return ResolveContainingType(parent, model); }