view Implab/Parsing/StarToken.cs @ 107:f5220e5472ef v2

minor fixes and optimizations
author cin
date Tue, 11 Nov 2014 04:14:21 +0300
parents c0bf853aa04f
children
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 {
    /// <summary>
    /// Замыкание выражения с 0 и более повторов.
    /// </summary>
    public class StarToken: Token {

        Token m_token;

        public Token Token {
            get { return m_token; }
        }

        public StarToken(Token token) {
            Safe.ArgumentNotNull(token, "token");
            m_token = token;
        }

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

        public override string ToString() {
            return String.Format("({0})*", Token.ToString());
        }
    }
}