comparison Implab/Formats/StringScanner.cs @ 182:76e8f2ba12b8 ref20160224

pretty print DFA, the minimization is still buggy
author cin
date Thu, 24 Mar 2016 18:52:10 +0300
parents 0c3c69fe225b
children
comparison
equal deleted inserted replaced
181:b2b6a6640aa3 182:76e8f2ba12b8
2 2
3 namespace Implab.Formats { 3 namespace Implab.Formats {
4 public class StringScanner: TextScanner { 4 public class StringScanner: TextScanner {
5 const int CHUNK_SIZE = 1024; 5 const int CHUNK_SIZE = 1024;
6 6
7 readonly string m_text; 7 public StringScanner(string text) : base(null) {
8 int m_pos; 8 Safe.ArgumentNotNull(text, "text");
9 9 var data = text.ToCharArray();
10 public StringScanner(string text) : base(text.Length, text.Length < CHUNK_SIZE ? text.Length : CHUNK_SIZE) { 10 Feed(data, 0, data.Length);
11 m_text = text;
12 Feed();
13 } 11 }
14 12
15 protected override int Read(char[] buffer, int offset, int size) { 13 protected override int Read(char[] buffer, int offset, int size) {
16 var actual = size + m_pos > m_text.Length ? m_text.Length - m_pos : size; 14 return 0;
17
18 m_text.CopyTo(m_pos,buffer,offset, actual);
19
20 m_pos += actual;
21
22 return actual;
23 } 15 }
24 } 16 }
25 } 17 }
26 18