otvcommn.h File Reference

#include <ft2build.h>
#include "otvalid.h"

Go to the source code of this file.

Classes

struct  OTV_ValidatorRec_

Defines

#define FT_INVALID_(_prefix, _error)   ft_validator_error( valid->root, _prefix ## _error )
#define OTV_OPTIONAL_TABLE(_table)
#define OTV_OPTIONAL_OFFSET(_offset)
#define OTV_LIMIT_CHECK(_count)
#define OTV_SIZE_CHECK(_size)
#define OTV_NAME_(x)   #x
#define OTV_NAME(x)   OTV_NAME_(x)
#define OTV_FUNC_(x)   x##Func
#define OTV_FUNC(x)   OTV_FUNC_(x)
#define OTV_NEST1(x)
#define OTV_NEST2(x, y)
#define OTV_NEST3(x, y, z)
#define OTV_INIT   do { } while ( 0 )
#define OTV_ENTER   do { } while ( 0 )
#define OTV_NAME_ENTER(name)   do { } while ( 0 )
#define OTV_EXIT   do { } while ( 0 )
#define OTV_TRACE(s)   do { } while ( 0 )
#define OTV_RUN   valid->func[0]
#define ChainPosClassSetFunc   otv_x_Ox
#define ChainPosRuleSetFunc   otv_x_Ox
#define ChainSubClassSetFunc   otv_x_Ox
#define ChainSubRuleSetFunc   otv_x_Ox
#define JstfLangSysFunc   otv_x_Ox
#define JstfMaxFunc   otv_x_Ox
#define LigGlyphFunc   otv_x_Ox
#define LigatureArrayFunc   otv_x_Ox
#define LigatureSetFunc   otv_x_Ox
#define PosClassSetFunc   otv_x_Ox
#define PosRuleSetFunc   otv_x_Ox
#define SubClassSetFunc   otv_x_Ox
#define SubRuleSetFunc   otv_x_Ox
#define AlternateSubstFormat1Func   otv_u_C_x_Ox
#define ChainContextPosFormat1Func   otv_u_C_x_Ox
#define ChainContextSubstFormat1Func   otv_u_C_x_Ox
#define ContextPosFormat1Func   otv_u_C_x_Ox
#define ContextSubstFormat1Func   otv_u_C_x_Ox
#define LigatureSubstFormat1Func   otv_u_C_x_Ox
#define MultipleSubstFormat1Func   otv_u_C_x_Ox
#define AlternateSetFunc   otv_x_ux
#define AttachPointFunc   otv_x_ux
#define ExtenderGlyphFunc   otv_x_ux
#define JstfGPOSModListFunc   otv_x_ux
#define JstfGSUBModListFunc   otv_x_ux
#define SequenceFunc   otv_x_ux
#define PosClassRuleFunc   otv_x_y_ux_sy
#define PosRuleFunc   otv_x_y_ux_sy
#define SubClassRuleFunc   otv_x_y_ux_sy
#define SubRuleFunc   otv_x_y_ux_sy
#define ChainPosClassRuleFunc   otv_x_ux_y_uy_z_uz_p_sp
#define ChainPosRuleFunc   otv_x_ux_y_uy_z_uz_p_sp
#define ChainSubClassRuleFunc   otv_x_ux_y_uy_z_uz_p_sp
#define ChainSubRuleFunc   otv_x_ux_y_uy_z_uz_p_sp
#define ContextPosFormat2Func   otv_u_O_O_x_Onx
#define ContextSubstFormat2Func   otv_u_O_O_x_Onx
#define ContextPosFormat3Func   otv_u_x_y_Ox_sy
#define ContextSubstFormat3Func   otv_u_x_y_Ox_sy
#define ChainContextPosFormat2Func   otv_u_O_O_O_O_x_Onx
#define ChainContextSubstFormat2Func   otv_u_O_O_O_O_x_Onx
#define ChainContextPosFormat3Func   otv_u_x_Ox_y_Oy_z_Oz_p_sp
#define ChainContextSubstFormat3Func   otv_u_x_Ox_y_Oy_z_Oz_p_sp

Typedefs

typedef typedefFT_BEGIN_HEADER
struct OTV_ValidatorRec_
OTV_Validator
typedef void(*) OTV_Validate_Func (FT_Bytes table, OTV_Validator valid)
typedef OTV_ValidatorRec_ OTV_ValidatorRec

Functions

 otv_Coverage_validate (FT_Bytes table, OTV_Validator valid, FT_Int expected_count)
 otv_Coverage_get_first (FT_Bytes table)
 otv_Coverage_get_last (FT_Bytes table)
 otv_Coverage_get_count (FT_Bytes table)
 otv_ClassDef_validate (FT_Bytes table, OTV_Validator valid)
 otv_Device_validate (FT_Bytes table, OTV_Validator valid)
 otv_Lookup_validate (FT_Bytes table, OTV_Validator valid)
 otv_LookupList_validate (FT_Bytes table, OTV_Validator valid)
 otv_Feature_validate (FT_Bytes table, OTV_Validator valid)
 otv_FeatureList_validate (FT_Bytes table, FT_Bytes lookups, OTV_Validator valid)
 otv_LangSys_validate (FT_Bytes table, OTV_Validator valid)
 otv_Script_validate (FT_Bytes table, OTV_Validator valid)
 otv_ScriptList_validate (FT_Bytes table, FT_Bytes features, OTV_Validator valid)
 otv_x_Ox (FT_Bytes table, OTV_Validator valid)
 otv_u_C_x_Ox (FT_Bytes table, OTV_Validator valid)
 otv_x_ux (FT_Bytes table, OTV_Validator valid)
 otv_x_y_ux_sy (FT_Bytes table, OTV_Validator valid)
 otv_x_ux_y_uy_z_uz_p_sp (FT_Bytes table, OTV_Validator valid)
 otv_u_O_O_x_Onx (FT_Bytes table, OTV_Validator valid)
 otv_u_x_y_Ox_sy (FT_Bytes table, OTV_Validator valid)
 otv_u_O_O_O_O_x_Onx (FT_Bytes table, OTV_Validator valid)
 otv_u_x_Ox_y_Oy_z_Oz_p_sp (FT_Bytes table, OTV_Validator valid)
 otv_GSUBGPOS_get_Lookup_count (FT_Bytes table)
 otv_GSUBGPOS_have_MarkAttachmentType_flag (FT_Bytes table)


Define Documentation

#define AlternateSetFunc   otv_x_ux

Definition at line 366 of file otvcommn.h.

#define AlternateSubstFormat1Func   otv_u_C_x_Ox

Definition at line 354 of file otvcommn.h.

#define AttachPointFunc   otv_x_ux

Definition at line 367 of file otvcommn.h.

#define ChainContextPosFormat1Func   otv_u_C_x_Ox

Definition at line 355 of file otvcommn.h.

#define ChainContextPosFormat2Func   otv_u_O_O_O_O_x_Onx

Definition at line 409 of file otvcommn.h.

#define ChainContextPosFormat3Func   otv_u_x_Ox_y_Oy_z_Oz_p_sp

Definition at line 416 of file otvcommn.h.

#define ChainContextSubstFormat1Func   otv_u_C_x_Ox

Definition at line 356 of file otvcommn.h.

#define ChainContextSubstFormat2Func   otv_u_O_O_O_O_x_Onx

Definition at line 410 of file otvcommn.h.

#define ChainContextSubstFormat3Func   otv_u_x_Ox_y_Oy_z_Oz_p_sp

Definition at line 417 of file otvcommn.h.

#define ChainPosClassRuleFunc   otv_x_ux_y_uy_z_uz_p_sp

Definition at line 386 of file otvcommn.h.

#define ChainPosClassSetFunc   otv_x_Ox

Definition at line 336 of file otvcommn.h.

#define ChainPosRuleFunc   otv_x_ux_y_uy_z_uz_p_sp

Definition at line 387 of file otvcommn.h.

#define ChainPosRuleSetFunc   otv_x_Ox

Definition at line 337 of file otvcommn.h.

#define ChainSubClassRuleFunc   otv_x_ux_y_uy_z_uz_p_sp

Definition at line 388 of file otvcommn.h.

#define ChainSubClassSetFunc   otv_x_Ox

Definition at line 338 of file otvcommn.h.

#define ChainSubRuleFunc   otv_x_ux_y_uy_z_uz_p_sp

Definition at line 389 of file otvcommn.h.

#define ChainSubRuleSetFunc   otv_x_Ox

Definition at line 339 of file otvcommn.h.

#define ContextPosFormat1Func   otv_u_C_x_Ox

Definition at line 357 of file otvcommn.h.

#define ContextPosFormat2Func   otv_u_O_O_x_Onx

Definition at line 395 of file otvcommn.h.

#define ContextPosFormat3Func   otv_u_x_y_Ox_sy

Definition at line 402 of file otvcommn.h.

#define ContextSubstFormat1Func   otv_u_C_x_Ox

Definition at line 358 of file otvcommn.h.

#define ContextSubstFormat2Func   otv_u_O_O_x_Onx

Definition at line 396 of file otvcommn.h.

#define ContextSubstFormat3Func   otv_u_x_y_Ox_sy

Definition at line 403 of file otvcommn.h.

#define ExtenderGlyphFunc   otv_x_ux

Definition at line 368 of file otvcommn.h.

#define FT_INVALID_ ( _prefix,
_error   )     ft_validator_error( valid->root, _prefix ## _error )

Definition at line 70 of file otvcommn.h.

#define JstfGPOSModListFunc   otv_x_ux

Definition at line 369 of file otvcommn.h.

#define JstfGSUBModListFunc   otv_x_ux

Definition at line 370 of file otvcommn.h.

#define JstfLangSysFunc   otv_x_Ox

Definition at line 340 of file otvcommn.h.

#define JstfMaxFunc   otv_x_Ox

Definition at line 341 of file otvcommn.h.

#define LigatureArrayFunc   otv_x_Ox

Definition at line 343 of file otvcommn.h.

#define LigatureSetFunc   otv_x_Ox

Definition at line 344 of file otvcommn.h.

#define LigatureSubstFormat1Func   otv_u_C_x_Ox

Definition at line 359 of file otvcommn.h.

#define LigGlyphFunc   otv_x_Ox

Definition at line 342 of file otvcommn.h.

#define MultipleSubstFormat1Func   otv_u_C_x_Ox

Definition at line 360 of file otvcommn.h.

#define OTV_ENTER   do { } while ( 0 )

Definition at line 196 of file otvcommn.h.

Referenced by otv_CaretValue_validate(), otv_JstfPriority_validate(), otv_Ligature_validate(), otv_O_x_Ox(), otv_u_C_x_Ox(), otv_u_O_O_O_O_x_Onx(), otv_u_O_O_u_O_O(), otv_u_O_O_x_Onx(), otv_u_x_Ox_y_Oy_z_Oz_p_sp(), otv_u_x_y_Ox_sy(), otv_x_Ox(), otv_x_sxy(), otv_x_ux(), otv_x_ux_y_uy_z_uz_p_sp(), and otv_x_y_ux_sy().

#define OTV_EXIT   do { } while ( 0 )

Definition at line 198 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_Anchor_validate(), otv_Axis_validate(), otv_BaseCoord_validate(), otv_BaseScript_validate(), otv_BaseScriptList_validate(), otv_BaseTagList_validate(), otv_BaseValues_validate(), otv_CaretValue_validate(), otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ClassDef_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_Coverage_validate(), otv_CursivePos_validate(), otv_Device_validate(), otv_ExtensionPos_validate(), otv_ExtensionSubst_validate(), otv_Feature_validate(), otv_FeatureList_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_LangSys_validate(), otv_Ligature_validate(), otv_LigatureSubst_validate(), otv_Lookup_validate(), otv_LookupList_validate(), otv_MarkArray_validate(), otv_MarkBasePos_validate(), otv_MarkLigPos_validate(), otv_MarkMarkPos_validate(), otv_MathConstants_validate(), otv_MathGlyphInfo_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_MultipleSubst_validate(), otv_O_x_Ox(), otv_PairPos_validate(), otv_PairSet_validate(), otv_ReverseChainSingleSubst_validate(), otv_Script_validate(), otv_ScriptList_validate(), otv_SinglePos_validate(), otv_SingleSubst_validate(), otv_u_C_x_Ox(), otv_u_O_O_O_O_x_Onx(), otv_u_O_O_u_O_O(), otv_u_O_O_x_Onx(), otv_u_x_Ox_y_Oy_z_Oz_p_sp(), otv_u_x_y_Ox_sy(), otv_ValueRecord_validate(), otv_x_Ox(), otv_x_ux(), otv_x_ux_y_uy_z_uz_p_sp(), and otv_x_y_ux_sy().

#define OTV_FUNC ( x   )     OTV_FUNC_(x)

Definition at line 116 of file otvcommn.h.

#define OTV_FUNC_ ( x   )     x##Func

Definition at line 115 of file otvcommn.h.

#define OTV_INIT   do { } while ( 0 )

Definition at line 195 of file otvcommn.h.

Referenced by otv_BASE_validate(), otv_GDEF_validate(), otv_GPOS_validate(), otv_GSUB_validate(), otv_JSTF_validate(), and otv_MATH_validate().

#define OTV_LIMIT_CHECK ( _count   ) 

Value:

FT_BEGIN_STMNT                             \
            if ( p + (_count) > valid->root->limit ) \
              FT_INVALID_TOO_SHORT;                  \
          FT_END_STMNT

Definition at line 82 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_Anchor_validate(), otv_Axis_validate(), otv_BASE_validate(), otv_BaseCoord_validate(), otv_BaseScript_validate(), otv_BaseScriptList_validate(), otv_BaseTagList_validate(), otv_BaseValues_validate(), otv_CaretValue_validate(), otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ClassDef_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_Coverage_validate(), otv_CursivePos_validate(), otv_Device_validate(), otv_ExtensionPos_validate(), otv_ExtensionSubst_validate(), otv_Feature_validate(), otv_FeatureList_validate(), otv_GDEF_validate(), otv_GlyphAssembly_validate(), otv_GPOS_validate(), otv_GSUB_validate(), otv_JSTF_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_LangSys_validate(), otv_Ligature_validate(), otv_LigatureSubst_validate(), otv_Lookup_validate(), otv_LookupList_validate(), otv_MarkArray_validate(), otv_MarkBasePos_validate(), otv_MarkLigPos_validate(), otv_MarkMarkPos_validate(), otv_MATH_validate(), otv_MathConstants_validate(), otv_MathGlyphConstruction_validate(), otv_MathGlyphInfo_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_MultipleSubst_validate(), otv_O_x_Ox(), otv_PairPos_validate(), otv_PairSet_validate(), otv_ReverseChainSingleSubst_validate(), otv_Script_validate(), otv_ScriptList_validate(), otv_SinglePos_validate(), otv_SingleSubst_validate(), otv_u_C_x_Ox(), otv_u_O_O_O_O_x_Onx(), otv_u_O_O_u_O_O(), otv_u_O_O_x_Onx(), otv_u_x_Ox_y_Oy_z_Oz_p_sp(), otv_u_x_y_Ox_sy(), otv_ValueRecord_validate(), otv_x_Ox(), otv_x_sxy(), otv_x_ux(), otv_x_ux_y_uy_z_uz_p_sp(), and otv_x_y_ux_sy().

#define OTV_NAME ( x   )     OTV_NAME_(x)

Definition at line 113 of file otvcommn.h.

#define OTV_NAME_ ( x   )     #x

Definition at line 112 of file otvcommn.h.

#define OTV_NAME_ENTER ( name   )     do { } while ( 0 )

Definition at line 197 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_Anchor_validate(), otv_Axis_validate(), otv_BaseCoord_validate(), otv_BaseScript_validate(), otv_BaseScriptList_validate(), otv_BaseTagList_validate(), otv_BaseValues_validate(), otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ClassDef_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_Coverage_validate(), otv_CursivePos_validate(), otv_Device_validate(), otv_ExtensionPos_validate(), otv_ExtensionSubst_validate(), otv_Feature_validate(), otv_FeatureList_validate(), otv_JstfScript_validate(), otv_LangSys_validate(), otv_LigatureSubst_validate(), otv_Lookup_validate(), otv_LookupList_validate(), otv_MarkArray_validate(), otv_MarkBasePos_validate(), otv_MarkLigPos_validate(), otv_MarkMarkPos_validate(), otv_MathConstants_validate(), otv_MathGlyphInfo_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_MultipleSubst_validate(), otv_PairPos_validate(), otv_PairSet_validate(), otv_ReverseChainSingleSubst_validate(), otv_Script_validate(), otv_ScriptList_validate(), otv_SinglePos_validate(), otv_SingleSubst_validate(), and otv_ValueRecord_validate().

#define OTV_NEST1 ( x   ) 

Value:

FT_BEGIN_STMNT                          \
            valid->nesting_level = 0;             \
            valid->func[0]       = OTV_FUNC( x ); \
          FT_END_STMNT

Definition at line 174 of file otvcommn.h.

Referenced by otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), and otv_JstfScript_validate().

#define OTV_NEST2 ( x,
y   ) 

Value:

FT_BEGIN_STMNT                          \
            valid->nesting_level = 0;             \
            valid->func[0]       = OTV_FUNC( x ); \
            valid->func[1]       = OTV_FUNC( y ); \
          FT_END_STMNT

Definition at line 180 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_GDEF_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_MarkBasePos_validate(), otv_MarkMarkPos_validate(), and otv_MultipleSubst_validate().

#define OTV_NEST3 ( x,
y,
z   ) 

Value:

FT_BEGIN_STMNT                          \
            valid->nesting_level = 0;             \
            valid->func[0]       = OTV_FUNC( x ); \
            valid->func[1]       = OTV_FUNC( y ); \
            valid->func[2]       = OTV_FUNC( z ); \
          FT_END_STMNT

Definition at line 187 of file otvcommn.h.

Referenced by otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_GDEF_validate(), otv_LigatureSubst_validate(), and otv_MarkLigPos_validate().

#define OTV_OPTIONAL_OFFSET ( _offset   ) 

Value:

FT_BEGIN_STMNT                         \
            _offset ## _p = p;                   \
            _offset       = FT_NEXT_USHORT( p ); \
          FT_END_STMNT

Definition at line 76 of file otvcommn.h.

Referenced by otv_Anchor_validate(), otv_Axis_validate(), otv_BASE_validate(), otv_BaseScript_validate(), otv_CursivePos_validate(), otv_GDEF_validate(), otv_GlyphAssembly_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_MathConstants_validate(), otv_MathGlyphConstruction_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_ValueRecord_validate(), and otv_x_sxy().

#define OTV_OPTIONAL_TABLE ( _table   ) 

Value:

FT_UShort  _table;      \
                                      FT_Bytes   _table ## _p

Definition at line 73 of file otvcommn.h.

Referenced by otv_Anchor_validate(), otv_Axis_validate(), otv_BASE_validate(), otv_BaseScript_validate(), otv_CursivePos_validate(), otv_GDEF_validate(), otv_GlyphAssembly_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_MathConstants_validate(), otv_MathGlyphConstruction_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_ValueRecord_validate(), and otv_x_sxy().

#define OTV_RUN   valid->func[0]

Definition at line 205 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_GDEF_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_LigatureSubst_validate(), otv_MarkBasePos_validate(), otv_MarkLigPos_validate(), otv_MarkMarkPos_validate(), and otv_MultipleSubst_validate().

#define OTV_SIZE_CHECK ( _size   ) 

Value:

FT_BEGIN_STMNT                                            \
            if ( _size > 0 && _size < table_size )                  \
            {                                                       \
              if ( valid->root->level == FT_VALIDATE_PARANOID )     \
                FT_INVALID_OFFSET;                                  \
              else                                                  \
              {                                                     \
                /* strip off `const' */                             \
                FT_Byte*  pp = (FT_Byte*)_size ## _p;               \
                                                                    \
                                                                    \
                FT_TRACE3(( "\n"                                    \
                            "Invalid offset to optional table `%s'" \
                            " set to zero.\n"                       \
                            "\n", #_size ));                        \
                                                                    \
                /* always assume 16bit entities */                  \
                _size = pp[0] = pp[1] = 0;                          \
              }                                                     \
            }                                                       \
          FT_END_STMNT

Definition at line 88 of file otvcommn.h.

Referenced by otv_Anchor_validate(), otv_Axis_validate(), otv_BASE_validate(), otv_BaseScript_validate(), otv_CursivePos_validate(), otv_GDEF_validate(), otv_GlyphAssembly_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_MathConstants_validate(), otv_MathGlyphConstruction_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_MinMax_validate(), otv_ValueRecord_validate(), and otv_x_sxy().

#define OTV_TRACE ( s   )     do { } while ( 0 )

Definition at line 200 of file otvcommn.h.

Referenced by otv_AlternateSubst_validate(), otv_Anchor_validate(), otv_BaseCoord_validate(), otv_BaseScript_validate(), otv_BaseScriptList_validate(), otv_BaseTagList_validate(), otv_BaseValues_validate(), otv_CaretValue_validate(), otv_ChainContextPos_validate(), otv_ChainContextSubst_validate(), otv_ClassDef_validate(), otv_ContextPos_validate(), otv_ContextSubst_validate(), otv_Coverage_validate(), otv_CursivePos_validate(), otv_ExtensionPos_validate(), otv_ExtensionSubst_validate(), otv_Feature_validate(), otv_FeatureList_validate(), otv_JstfPriority_validate(), otv_JstfScript_validate(), otv_LangSys_validate(), otv_Ligature_validate(), otv_LigatureSubst_validate(), otv_Lookup_validate(), otv_LookupList_validate(), otv_MarkArray_validate(), otv_MarkBasePos_validate(), otv_MarkLigPos_validate(), otv_MarkMarkPos_validate(), otv_MinMax_validate(), otv_MultipleSubst_validate(), otv_O_x_Ox(), otv_PairPos_validate(), otv_PairSet_validate(), otv_ReverseChainSingleSubst_validate(), otv_Script_validate(), otv_ScriptList_validate(), otv_SinglePos_validate(), otv_SingleSubst_validate(), otv_u_C_x_Ox(), otv_u_O_O_O_O_x_Onx(), otv_u_O_O_x_Onx(), otv_u_x_Ox_y_Oy_z_Oz_p_sp(), otv_u_x_y_Ox_sy(), otv_ValueRecord_validate(), otv_x_Ox(), otv_x_sxy(), otv_x_ux(), otv_x_ux_y_uy_z_uz_p_sp(), and otv_x_y_ux_sy().

#define PosClassRuleFunc   otv_x_y_ux_sy

Definition at line 377 of file otvcommn.h.

#define PosClassSetFunc   otv_x_Ox

Definition at line 345 of file otvcommn.h.

#define PosRuleFunc   otv_x_y_ux_sy

Definition at line 378 of file otvcommn.h.

#define PosRuleSetFunc   otv_x_Ox

Definition at line 346 of file otvcommn.h.

#define SequenceFunc   otv_x_ux

Definition at line 371 of file otvcommn.h.

#define SubClassRuleFunc   otv_x_y_ux_sy

Definition at line 379 of file otvcommn.h.

#define SubClassSetFunc   otv_x_Ox

Definition at line 347 of file otvcommn.h.

#define SubRuleFunc   otv_x_y_ux_sy

Definition at line 380 of file otvcommn.h.

#define SubRuleSetFunc   otv_x_Ox

Definition at line 348 of file otvcommn.h.


Typedef Documentation

typedef void(*) OTV_Validate_Func(FT_Bytes table, OTV_Validator valid)

Definition at line 41 of file otvcommn.h.

typedef typedefFT_BEGIN_HEADER struct OTV_ValidatorRec_* OTV_Validator

Definition at line 39 of file otvcommn.h.

typedef struct OTV_ValidatorRec_ OTV_ValidatorRec


Function Documentation

otv_ClassDef_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 221 of file otvcommn.c.

References Rgl::Pad::End(), FT_INVALID_DATA, FT_INVALID_FORMAT, FT_INVALID_GLYPH_ID, FT_NEXT_USHORT, n, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_GDEF_validate(), otv_PairPos_validate(), otv_u_O_O_O_O_x_Onx(), and otv_u_O_O_x_Onx().

otv_Coverage_get_count ( FT_Bytes  table  ) 

Definition at line 175 of file otvcommn.c.

References Rgl::Pad::End(), FT_NEXT_USHORT, p, and result().

Referenced by otv_O_x_Ox(), and otv_ReverseChainSingleSubst_validate().

otv_Coverage_get_first ( FT_Bytes  table  ) 

Definition at line 134 of file otvcommn.c.

References FT_NEXT_USHORT, and p.

Referenced by otv_SingleSubst_validate().

otv_Coverage_get_last ( FT_Bytes  table  ) 

Definition at line 146 of file otvcommn.c.

References FT_NEXT_USHORT, p, and result().

Referenced by otv_SingleSubst_validate().

otv_Coverage_validate ( FT_Bytes  table,
OTV_Validator  valid,
FT_Int  expected_count 
)

Definition at line 41 of file otvcommn.c.

References Rgl::Pad::End(), FT_INVALID_DATA, FT_INVALID_FORMAT, FT_INVALID_GLYPH_ID, FT_NEXT_USHORT, i, n, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, p, and total.

Referenced by otv_CursivePos_validate(), otv_MathGlyphInfo_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKernInfo_validate(), otv_MathVariants_validate(), otv_O_x_Ox(), otv_PairPos_validate(), otv_ReverseChainSingleSubst_validate(), otv_SinglePos_validate(), otv_SingleSubst_validate(), otv_u_C_x_Ox(), otv_u_O_O_O_O_x_Onx(), otv_u_O_O_u_O_O(), otv_u_O_O_x_Onx(), otv_u_x_Ox_y_Oy_z_Oz_p_sp(), and otv_u_x_y_Ox_sy().

otv_Device_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 307 of file otvcommn.c.

References FT_INVALID_DATA, FT_INVALID_FORMAT, FT_NEXT_USHORT, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, and p.

Referenced by otv_Anchor_validate(), otv_BaseCoord_validate(), otv_CaretValue_validate(), otv_GlyphAssembly_validate(), otv_MathConstants_validate(), otv_MathItalicsCorrectionInfo_validate(), otv_MathKern_validate(), and otv_ValueRecord_validate().

otv_Feature_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 427 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_FeatureList_validate().

otv_FeatureList_validate ( FT_Bytes  table,
FT_Bytes  lookups,
OTV_Validator  valid 
)

Definition at line 463 of file otvcommn.c.

References FT_NEXT_USHORT, OTV_EXIT, otv_Feature_validate(), OTV_LIMIT_CHECK, otv_LookupList_get_count(), OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_GPOS_validate(), and otv_GSUB_validate().

otv_GSUBGPOS_get_Lookup_count ( FT_Bytes  table  ) 

Definition at line 1037 of file otvcommn.c.

References FT_NEXT_USHORT, otv_LookupList_get_count(), and p.

Referenced by otv_JSTF_validate().

otv_GSUBGPOS_have_MarkAttachmentType_flag ( FT_Bytes  table  ) 

Definition at line 1047 of file otvcommn.c.

References FT_NEXT_USHORT, lookup(), and p.

Referenced by otv_GDEF_validate().

otv_LangSys_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 507 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_Script_validate().

otv_Lookup_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 346 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_EXIT, OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_GPOS_subtable_validate(), and otv_LookupList_validate().

otv_LookupList_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 383 of file otvcommn.c.

References FT_NEXT_USHORT, OTV_EXIT, OTV_LIMIT_CHECK, otv_Lookup_validate(), OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_GPOS_validate(), and otv_GSUB_validate().

otv_Script_validate ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 548 of file otvcommn.c.

References FT_NEXT_USHORT, OTV_EXIT, otv_LangSys_validate(), OTV_LIMIT_CHECK, OTV_NAME_ENTER, OTV_TRACE, and p.

Referenced by otv_ScriptList_validate().

otv_ScriptList_validate ( FT_Bytes  table,
FT_Bytes  features,
OTV_Validator  valid 
)

Definition at line 584 of file otvcommn.c.

References FT_NEXT_USHORT, OTV_EXIT, otv_Feature_get_count(), OTV_LIMIT_CHECK, OTV_NAME_ENTER, otv_Script_validate(), OTV_TRACE, and p.

Referenced by otv_GPOS_validate(), and otv_GSUB_validate().

otv_u_C_x_Ox ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 672 of file otvcommn.c.

References FT_NEXT_USHORT, func(), otv_Coverage_validate(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_u_O_O_O_O_x_Onx ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 924 of file otvcommn.c.

References FT_NEXT_USHORT, func(), otv_ClassDef_validate(), otv_Coverage_validate(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_u_O_O_x_Onx ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 839 of file otvcommn.c.

References ClassDef, FT_NEXT_USHORT, func(), otv_ClassDef_validate(), otv_Coverage_validate(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_u_x_Ox_y_Oy_z_Oz_p_sp ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 977 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, otv_Coverage_validate(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_u_x_y_Ox_sy ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 885 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, otv_Coverage_validate(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_x_Ox ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 642 of file otvcommn.c.

References FT_NEXT_USHORT, func(), OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_x_ux ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 709 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

Referenced by otv_JstfPriority_validate().

otv_x_ux_y_uy_z_uz_p_sp ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 783 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.

otv_x_y_ux_sy ( FT_Bytes  table,
OTV_Validator  valid 
)

Definition at line 742 of file otvcommn.c.

References FT_INVALID_DATA, FT_NEXT_USHORT, OTV_ENTER, OTV_EXIT, OTV_LIMIT_CHECK, OTV_TRACE, and p.


Generated on Tue Jul 5 15:58:23 2011 for ROOT_528-00b_version by  doxygen 1.5.1