o << indent(ind);
uint ch = 0;
- for (uint i = 0; i < lSpans; ++i)
+ for (uint i = 0; i < nSpans; ++i)
{
vUsedLabels.insert(span[i].to->label);
for(; ch < span[i].ub; ++ch)
if (ch == 255)
{
o << "\n";
- i = lSpans;
+ i = nSpans;
break;
}
else if (ch % 8 == 7)
genSwitchD (o, from);
return;
}
-
+/*
+ for (uint i = 0; i < nSpans; ++i)
+ {
+ if (span[i].ub > 0xFF)
+ {
+ wSpans++;
+ }
+ }
+ Span * wspan = new Span[wSpans];
+ for (uint i = 0, j = 0; i < nSpans; i++)
+ {
+ if (span[i].ub > 0xFF)
+ {
+ wspan[j++] = span[i];
+ }
+ }
+*/
if (gFlag || (encoding.szCodeUnit() > 1))
{
uint nBitmaps = 0;
std::set<uint> vTargets;
wSpans = 0;
- lSpans = 1;
dSpans = 0;
for (uint i = 0; i < nSpans; ++i)
{
-// if (span[i].ub > 0x100)
if (span[i].ub > 0xFF)
{
-//assert (span[i].ub == 0x100 || encoding.szCodeUnit() > 1);
wSpans++;
}
-// if (span[i].ub <= 0x100 || (encoding.szCodeUnit() <= 1))
if (span[i].ub < 0x100 || (encoding.szCodeUnit() <= 1))
{
- lSpans++;
-
State *to = span[i].to;
if (to && to->isBase)
Go()
: nSpans(0)
, wSpans(~0u)
- , lSpans(~0u)
, dSpans(~0u)
, lTargets(~0u)
, span(NULL)
public:
uint nSpans; // number of spans
uint wSpans; // number of spans in wide mode
- uint lSpans; // number of low (non wide) spans
uint dSpans; // number of decision spans (decide between g and b mode)
uint lTargets;
Span *span;