2362N/A * or visit www.oracle.com if you need additional information or have any
0N/A#include "MorphTables.h"
0N/A#include "StateTables.h"
0N/A#include "MorphStateTables.h"
0N/A#include "SubtableProcessor.h"
0N/A#include "StateTableProcessor.h"
0N/A#include "LigatureSubstProc.h"
0N/A#include "LEGlyphStorage.h"
5980N/A LigatureSubstitutionProcessor::LigatureSubstitutionProcessor(const LEReferenceTo<MorphSubtableHeader> &morphSubtableHeader, LEErrorCode &success)
5980N/A: StateTableProcessor(morphSubtableHeader, success), ligatureSubstitutionHeader(morphSubtableHeader, success)
5980N/A entryTable = LEReferenceToArrayOf<LigatureSubstitutionStateEntry>(stHeader, success, entryTableOffset, LE_UNBOUNDED_ARRAY);
1693N/AByteOffset LigatureSubstitutionProcessor::processStateEntry(LEGlyphStorage &glyphStorage, le_int32 &currGlyph, EntryTableIndex index)
0N/A if (++m >= nComponents) {
0N/A if (actionOffset != 0) {
5980N/A LEReferenceToArrayOf<le_int16> offsetTable(stHeader, success, 2 * SignExtend(offset, lafComponentOffsetMask), LE_UNBOUNDED_ARRAY);
5971N/A } while (!(action & lafLast) && (m>=0) ); // stop if last bit is set, or if run out of items
5980N/A if (++m >= nComponents) {