public static TypeDeclarationSyntax WithModifiers( this TypeDeclarationSyntax node, SyntaxTokenList modifiers) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).WithModifiers(modifiers)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).WithModifiers(modifiers)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).WithModifiers(modifiers)); } throw Contract.Unreachable; }
public static TypeDeclarationSyntax WithAttributeLists( this TypeDeclarationSyntax node, SyntaxList <AttributeListSyntax> attributes) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).WithAttributeLists(attributes)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).WithAttributeLists(attributes)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).WithAttributeLists(attributes)); } throw Contract.Unreachable; }
public static TypeDeclarationSyntax WithCloseBraceToken( this TypeDeclarationSyntax node, SyntaxToken closeBrace) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).WithCloseBraceToken(closeBrace)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).WithCloseBraceToken(closeBrace)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).WithCloseBraceToken(closeBrace)); } throw Contract.Unreachable; }
public static TypeDeclarationSyntax AddMembers( this TypeDeclarationSyntax node, params MemberDeclarationSyntax[] members) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).AddMembers(members)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).AddMembers(members)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).AddMembers(members)); } throw Contract.Unreachable; }
public static TypeDeclarationSyntax WithConstraintClauses( this TypeDeclarationSyntax node, SyntaxList <TypeParameterConstraintClauseSyntax> constraintClauses) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).WithConstraintClauses(constraintClauses)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).WithConstraintClauses(constraintClauses)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).WithConstraintClauses(constraintClauses)); } throw Contract.Unreachable; }
public static TypeDeclarationSyntax WithBaseList( this TypeDeclarationSyntax node, BaseListSyntax list) { switch (node.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(((ClassDeclarationSyntax)node).WithBaseList(list)); case SyntaxKind.InterfaceDeclaration: return(((InterfaceDeclarationSyntax)node).WithBaseList(list)); case SyntaxKind.StructDeclaration: return(((StructDeclarationSyntax)node).WithBaseList(list)); } throw Contract.Unreachable; }
protected static CodeGenerationDestination GetDestination(TypeDeclarationSyntax destination) { if (destination != null) { switch (destination.CSharpKind()) { case SyntaxKind.ClassDeclaration: return(CodeGenerationDestination.ClassType); case SyntaxKind.InterfaceDeclaration: return(CodeGenerationDestination.InterfaceType); case SyntaxKind.StructDeclaration: return(CodeGenerationDestination.StructType); } } return(CodeGenerationDestination.Unspecified); }