public static CodeItem MapMember(VisualBasicSyntax.StatementSyntax member) { if (member == null) { return(null); } switch (member.Kind()) { case VisualBasic.SyntaxKind.FunctionBlock: case VisualBasic.SyntaxKind.SubBlock: return(MethodMapper.MapMethod(member as VisualBasicSyntax.MethodBlockSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.SubStatement: return(MethodMapper.MapMethod(member as VisualBasicSyntax.MethodStatementSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.EnumBlock: return(EnumMapper.MapEnum(member as VisualBasicSyntax.EnumBlockSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.EnumMemberDeclaration: return(EnumMapper.MapEnumMember(member as VisualBasicSyntax.EnumMemberDeclarationSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.InterfaceBlock: return(InterfaceMapper.MapInterface(member as VisualBasicSyntax.InterfaceBlockSyntax, _control, _semanticModel, _tree)); case VisualBasic.SyntaxKind.FieldDeclaration: return(FieldMapper.MapField(member as VisualBasicSyntax.FieldDeclarationSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.PropertyBlock: return(PropertyMapper.MapProperty(member as VisualBasicSyntax.PropertyBlockSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.StructureBlock: return(StructMapper.MapStruct(member as VisualBasicSyntax.StructureBlockSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.ClassBlock: case VisualBasic.SyntaxKind.ModuleBlock: return(ClassMapper.MapClass(member as VisualBasicSyntax.TypeBlockSyntax, _control, _semanticModel, _tree)); case VisualBasic.SyntaxKind.EventBlock: return(DelegateEventMapper.MapEvent(member as VisualBasicSyntax.EventBlockSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.DelegateFunctionStatement: return(DelegateEventMapper.MapDelegate(member as VisualBasicSyntax.DelegateStatementSyntax, _control, _semanticModel)); case VisualBasic.SyntaxKind.NamespaceBlock: return(NamespaceMapper.MapNamespace(member as VisualBasicSyntax.NamespaceBlockSyntax, _control, _semanticModel, _tree)); case VisualBasic.SyntaxKind.ConstructorBlock: return(MethodMapper.MapConstructor(member as VisualBasicSyntax.ConstructorBlockSyntax, _control, _semanticModel)); default: return(null); } }
public static List <CodeItem> MapStatement(VisualBasicSyntax.StatementSyntax statement, CodeViewUserControl control, SemanticModel semanticModel) { if (statement == null) { return(new List <CodeItem>()); } switch (statement.Kind()) { case VisualBasic.SyntaxKind.SelectBlock: return(new List <CodeItem> { MapSwitch(statement as VisualBasicSyntax.SelectBlockSyntax, control, semanticModel) }); case VisualBasic.SyntaxKind.TryStatement: return(MapStatement((statement as VisualBasicSyntax.TryBlockSyntax), control, semanticModel)); default: return(new List <CodeItem>()); } }