public static SyntaxNode GenerateThrowStatement( SyntaxGenerator factory, SemanticDocument document, string exceptionMetadataName) { var compilation = document.SemanticModel.Compilation; var exceptionType = compilation.GetTypeByMetadataName(exceptionMetadataName); // If we can't find the Exception, we obviously can't generate anything. if (exceptionType == null) { return(null); } var exceptionCreationExpression = factory.ObjectCreationExpression( exceptionType, SpecializedCollections.EmptyList <SyntaxNode>()); return(factory.ThrowStatement(exceptionCreationExpression)); }
public static SyntaxNode GenerateThrowStatement( SyntaxGenerator factory, SemanticDocument document, string exceptionMetadataName, CancellationToken cancellationToken) { var compilation = document.SemanticModel.Compilation; var exceptionType = compilation.GetTypeByMetadataName(exceptionMetadataName); // If we can't find the Exception, we obviously can't generate anything. if (exceptionType == null) { return null; } var exceptionCreationExpression = factory.ObjectCreationExpression( exceptionType, SpecializedCollections.EmptyList<SyntaxNode>()); return factory.ThrowStatement(exceptionCreationExpression); }