##// END OF EJS Templates
sync
sync

File last commit:

r162:0526412bbb26 ref20160224
r166:b84cdbe82e7f ref20160224
Show More
CatToken.cs
22 lines | 703 B | text/x-csharp | CSharpLexer
using System;
namespace Implab.Automaton.RegularExpressions {
public class CatToken<TTag> : BinaryToken<TTag> {
public CatToken(Token<TTag> left, Token<TTag> right)
: base(left, right) {
}
public override void Accept(IVisitor<TTag> visitor) {
Safe.ArgumentNotNull(visitor, "visitor");
visitor.Visit(this);
}
public override string ToString() {
return String.Format("{0}{1}", FormatToken(Left), FormatToken(Right));
}
static string FormatToken(Token<TTag> token) {
return String.Format(token is AltToken<TTag> ? "({0})" : "{0}", token);
}
}
}