void used_labels ();
};
-struct Bitmap
+struct GoBitmap
{
const BitMap * bitmap;
const State * bitmap_state;
SwitchIf * hgo;
SwitchIf * lgo;
- Bitmap (const Span * span, uint32_t nSpans, const Span * hspan, uint32_t hSpans, const BitMap * bm, const State * bm_state, const State * next);
- ~Bitmap ();
+ GoBitmap (const Span * span, uint32_t nSpans, const Span * hspan, uint32_t hSpans, const BitMap * bm, const State * bm_state, const State * next);
+ ~GoBitmap ();
void emit (OutputFile & o, uint32_t ind, bool & readCh);
void used_labels ();
};
union
{
SwitchIf * switchif;
- Bitmap * bitmap;
+ GoBitmap * bitmap;
Cpgoto * cpgoto;
Dot * dot;
} info;
}
}
-Bitmap::Bitmap (const Span * span, uint32_t nSpans, const Span * hspan, uint32_t hSpans, const BitMap * bm, const State * bm_state, const State * next)
+GoBitmap::GoBitmap (const Span * span, uint32_t nSpans, const Span * hspan, uint32_t hSpans, const BitMap * bm, const State * bm_state, const State * next)
: bitmap (bm)
, bitmap_state (bm_state)
, hgo (hSpans == 0 ? NULL : new SwitchIf (hspan, hSpans, next))
else if (bFlag && (nBitmaps > 0))
{
type = BITMAP;
- info.bitmap = new Bitmap (span, nSpans, hspan, hSpans, bitmap, bitmap_state, from->next);
+ info.bitmap = new GoBitmap (span, nSpans, hspan, hSpans, bitmap, bitmap_state, from->next);
bUsedYYBitmap = true;
}
else
}
}
-void Bitmap::emit (OutputFile & o, uint32_t ind, bool & readCh)
+void GoBitmap::emit (OutputFile & o, uint32_t ind, bool & readCh)
{
std::string yych = output_hgo (o, ind, readCh, hgo);
o << "if (" << mapCodeName["yybm"] << "[" << bitmap->i << "+" << yych << "] & ";