public static CodeInterfaceItem MapInterface(VisualBasicSyntax.InterfaceBlockSyntax member, ICodeViewUserControl control, SemanticModel semanticModel, SyntaxTree tree) { if (member == null) { return(null); } var item = BaseMapper.MapBase <CodeInterfaceItem>(member, member.InterfaceStatement.Identifier, member.InterfaceStatement.Modifiers, control, semanticModel); item.Kind = CodeItemKindEnum.Interface; item.BorderColor = Colors.DarkGray; item.Moniker = IconMapper.MapMoniker(item.Kind, item.Access); if (TriviaSummaryMapper.HasSummary(member) && SettingsHelper.UseXMLComments) { item.Tooltip = TriviaSummaryMapper.Map(member); } var regions = RegionMapper.MapRegions(tree, member.Span, control); foreach (var interfaceMember in member.Members) { var memberItem = SyntaxMapper.MapMember(interfaceMember); if (memberItem != null && !RegionMapper.AddToRegion(regions, memberItem)) { item.Members.Add(memberItem); } } // Add regions to interface if they have a region member inside them if (regions.Any()) { foreach (var region in regions) { if (region.Members.Any()) { item.Members.Add(region); } } } return(item); }
public static CodeInterfaceItem MapInterface(VisualBasicSyntax.InterfaceBlockSyntax member, CodeViewUserControl control, SemanticModel semanticModel) { if (member == null) { return(null); } var item = BaseMapper.MapBase <CodeInterfaceItem>(member, member.InterfaceStatement.Identifier, member.InterfaceStatement.Modifiers, control, semanticModel); item.Kind = CodeItemKindEnum.Interface; item.BorderBrush = ColorHelper.ToBrush(Colors.DarkGray); item.Moniker = IconMapper.MapMoniker(item.Kind, item.Access); foreach (var interfaceMember in member.Members) { item.Members.Add(SyntaxMapper.MapMember(interfaceMember)); } return(item); }
public override CSharpSyntaxNode VisitInterfaceBlock(VbSyntax.InterfaceBlockSyntax node) { return(WithPortedTrivia <VbSyntax.TypeBlockSyntax, CsSyntax.BaseTypeDeclarationSyntax>(node, WithTypeBlockTrivia)); }