view Implab/Parsing/CharAlphabet.cs @ 161:2a8466f0cb8a v2

DFA refactoring
author cin
date Fri, 19 Feb 2016 18:07:17 +0300
parents 130781364799
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 {
    public class CharAlphabet: IndexedAlphabetBase<char> {

        public CharAlphabet()
            : base(char.MaxValue + 1) {
        }

        public override int GetSymbolIndex(char symbol) {
            return symbol;
        }

        public override IEnumerable<char> InputSymbols {
            get { return Enumerable.Range(char.MinValue, char.MaxValue).Select(x => (char)x); }
        }
    }
}