]>
git.saurik.com Git - apple/icu.git/blob - icuSources/layout/GlyphLookupTables.cpp
3 * (C) Copyright IBM Corp. 1998-2013 - All Rights Reserved
8 #include "OpenTypeTables.h"
9 #include "ScriptAndLanguage.h"
10 #include "GlyphLookupTables.h"
15 le_bool
GlyphLookupTableHeader::coversScript(const LETableReference
&base
, LETag scriptTag
, LEErrorCode
&success
) const
17 LEReferenceTo
<ScriptListTable
> scriptListTable(base
, success
, SWAPW(scriptListOffset
));
19 return (scriptListOffset
!= 0) && scriptListTable
->findScript(scriptListTable
, scriptTag
, success
) .isValid();
22 le_bool
GlyphLookupTableHeader::coversScriptAndLanguage(const LETableReference
&base
, LETag scriptTag
, LETag languageTag
, LEErrorCode
&success
, le_bool exactMatch
) const
24 LEReferenceTo
<ScriptListTable
> scriptListTable(base
, success
, SWAPW(scriptListOffset
));
25 LEReferenceTo
<LangSysTable
> langSysTable
= scriptListTable
->findLanguage(scriptListTable
,
26 scriptTag
, languageTag
, success
, exactMatch
);
28 // FIXME: could check featureListOffset, lookupListOffset, and lookup count...
29 // Note: don't have to SWAPW langSysTable->featureCount to check for non-zero.
30 return LE_SUCCESS(success
)&&langSysTable
.isValid() && langSysTable
->featureCount
!= 0;