comparison Implab/Parsing/EnumAlphabet.cs @ 59:21611344d366

code cleanup
author cin
date Wed, 18 Jun 2014 03:54:02 +0400
parents c0bf853aa04f
children 653c4e04968b
comparison
equal deleted inserted replaced
58:1710dcda34bb 59:21611344d366
1 using Implab; 1 using Implab;
2 using System; 2 using System;
3 using System.Collections.Generic; 3 using System.Collections.Generic;
4 using System.Diagnostics;
4 using System.Globalization; 5 using System.Globalization;
5 using System.Linq; 6 using System.Linq;
6 using System.Text; 7 using System.Text;
7 using System.Threading.Tasks; 8 using System.Threading.Tasks;
8 9
43 } 44 }
44 } 45 }
45 46
46 47
47 public EnumAlphabet() 48 public EnumAlphabet()
48 : base() { 49 : base(_symbols.Length) {
49 } 50 }
50 51
51 public EnumAlphabet(int[] map) 52 public EnumAlphabet(int[] map)
52 : base(map) { 53 : base(map) {
54 Debug.Assert(map.Length == _symbols.Length);
53 } 55 }
54 56
55 57
56 public override int GetSymbolIndex(T symbol) { 58 public override int GetSymbolIndex(T symbol) {
57 return symbol.ToInt32(CultureInfo.InvariantCulture); 59 return symbol.ToInt32(CultureInfo.InvariantCulture);
59 61
60 public override IEnumerable<T> InputSymbols { 62 public override IEnumerable<T> InputSymbols {
61 get { return _symbols; } 63 get { return _symbols; }
62 } 64 }
63 65
64 protected override int MapSize {
65 get { return _symbols.Length; }
66 }
67 } 66 }
68 } 67 }