view Implab/Parsing/CatToken.cs @ 138:f75cfa58e3d4 v2

added ICancellable.Cancel(Exception) to allow specify the reason of cancellation
author cin
date Tue, 17 Feb 2015 18:16:26 +0300
parents c0bf853aa04f
children 97fbbf816844
line wrap: on
line source

using Implab;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Implab.Parsing {
    public class CatToken : BinaryToken {
        public CatToken(Token left, Token right)
            : base(left, right) {
        }

        public override void Accept(IVisitor visitor) {
            Safe.ArgumentNotNull(visitor, "visitor");
            visitor.Visit(this);
        }

        public override string ToString() {
            return String.Format("{0}{1}", FormatToken(Left), FormatToken(Right));
        }

        string FormatToken(Token token) {
            return String.Format(token is AltToken ? "({0})" : "{0}", token);
        }
    }
}