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