コード例 #1
0
        public override SimpleTreeNode ToSimpleTree()
        {
            var typeArgumentNodes = TypeArguments.Select(node => node.ToSimpleTree()).ToList();
            var typeParamsNode    = new SimpleGroupNode(RQNameStrings.TypeParams, typeArgumentNodes);

            return(new SimpleGroupNode(RQNameStrings.AggType, DefiningType.ToSimpleTree(), typeParamsNode));
        }
コード例 #2
0
        private static void WriteNode(SimpleTreeNode node, StringBuilder sb)
        {
            sb.Append(node.Text);
            if (node is SimpleGroupNode)
            {
                SimpleGroupNode group = (SimpleGroupNode)node;
                sb.Append('(');
                for (int i = 0; i < group.Count; i++)
                {
                    if (i > 0)
                    {
                        sb.Append(',');
                    }

                    WriteNode(group[i], sb);
                }

                sb.Append(')');
            }
        }