@@ -40,45 +40,42 @@ pub fn SymbolMap::split(
4040/// Function `finalize`.
4141pub fn SymbolMap ::finalize(
4242 self : SymbolMap ,
43- lb : @shared_types.Rechar ,
4443 ub : @shared_types.Rechar ,
4544) -> (&Table , ReadOnlyArray [@shared_types.Rechar ]) {
46- if ub - lb < 1024 {
47- let (table, repr) = self.finalize_dense(lb, ub)
45+ if ub < 1024 {
46+ let (table, repr) = self.finalize_dense(ub)
4847 (table as &Table , repr)
4948 } else {
50- let (table, repr) = self.finalize_sparse(lb, ub)
49+ let (table, repr) = self.finalize_sparse(ub)
5150 (table as &Table , repr)
5251 }
5352}
5453
5554///|
5655fn SymbolMap ::finalize_dense(
5756 self : SymbolMap ,
58- lb : @shared_types.Rechar ,
5957 ub : @shared_types.Rechar ,
6058) -> (DenseTable , ReadOnlyArray [@shared_types.Rechar ]) {
6159 let repr = []
62- let table = FixedArray ::make(ub - lb + 1, 0)
63- self.each_intervals(lb , ub, (lo, hi) => {
60+ let table = FixedArray ::make(ub + 1, 0)
61+ self.each_intervals(0 , ub, (lo, hi) => {
6462 let symbol = repr.length()
6563 repr.push(lo)
6664 for c in lo..<=hi {
67- table[c - lb ] = symbol
65+ table[c] = symbol
6866 }
6967 })
70- (DenseTable (lb, table), ReadOnlyArray ::from_array(repr))
68+ (DenseTable (table), ReadOnlyArray ::from_array(repr))
7169}
7270
7371///|
7472fn SymbolMap ::finalize_sparse(
7573 self : SymbolMap ,
76- lb : @shared_types.Rechar ,
7774 ub : @shared_types.Rechar ,
7875) -> (SparseTable , ReadOnlyArray [@shared_types.Rechar ]) {
7976 let repr = []
8077 let entries = []
81- self.each_intervals(lb , ub, (lo, hi) => {
78+ self.each_intervals(0 , ub, (lo, hi) => {
8279 let symbol = repr.length()
8380 repr.push(lo)
8481 entries.push({ lo, hi, symbol })
0 commit comments