예제 #1
0
파일: Node.cs 프로젝트: Torvin/Telecord
        public Node Visit(Node node)
        {
            return(node switch
            {
                TextNode text => VisitText(text),
                StyleNode style => VisitStyle(style),
                NewlineNode nl => VisitNewline(nl),
                CodeNode code => VisitCode(code),
                LinkNode link => VisitLink(link),
                MentionNode mention => VisitMention(mention),
                ChannelNode channel => VisitChannel(channel),
                RoleNode role => VisitRole(role),
                CustomEmojiNode emoji => VisitCustomEmoji(emoji),
                ContainerNode container => VisitContainer(container),

                _ => throw new ArgumentException($"Unknown node type: {node.GetType()}."),
            });
예제 #2
0
 public override Node VisitCustomEmoji(CustomEmojiNode emoji)
 {
     _builder.Append($"<span class=\"d-emoji\">:{emoji.Name}:</span>");
     return(emoji);
 }