Lines Matching refs:pr
3117 static HB_Error Load_PosRule( HB_PosRule* pr,
3131 pr->GlyphCount = GET_UShort();
3132 pr->PosCount = GET_UShort();
3136 pr->Input = NULL;
3138 count = pr->GlyphCount - 1; /* only GlyphCount - 1 elements */
3140 if ( ALLOC_ARRAY( pr->Input, count, HB_UShort ) )
3143 i = pr->Input;
3153 pr->PosLookupRecord = NULL;
3155 count = pr->PosCount;
3157 if ( ALLOC_ARRAY( pr->PosLookupRecord, count, HB_PosLookupRecord ) )
3160 plr = pr->PosLookupRecord;
3184 static void Free_PosRule( HB_PosRule* pr )
3186 FREE( pr->PosLookupRecord );
3187 FREE( pr->Input );
3201 HB_PosRule* pr;
3218 pr = prs->PosRule;
3231 ( error = Load_PosRule( &pr[n], stream ) ) != HB_Err_Ok )
3240 Free_PosRule( &pr[m] );
3242 FREE( pr );
3251 HB_PosRule* pr;
3257 pr = prs->PosRule;
3260 Free_PosRule( &pr[n] );
3262 FREE( pr );
3807 HB_PosRule* pr;
3820 pr = cpf1->PosRuleSet[index].PosRule;
3825 if ( context_length != 0xFFFF && context_length < pr[k].GlyphCount )
3828 if ( buffer->in_pos + pr[k].GlyphCount > buffer->in_length )
3831 for ( i = 1, j = buffer->in_pos + 1; i < pr[k].GlyphCount; i++, j++ )
3838 if ( j + pr[k].GlyphCount - i == (HB_Int)buffer->in_length )
3843 if ( IN_GLYPH( j ) != pr[k].Input[i - 1] )
3847 return Do_ContextPos( gpi, pr[k].GlyphCount,
3848 pr[k].PosCount, pr[k].PosLookupRecord,
3876 HB_PosClassRule* pr;
3914 pr = &pcs->PosClassRule[k];
3916 if ( context_length != 0xFFFF && context_length < pr->GlyphCount )
3919 if ( buffer->in_pos + pr->GlyphCount > buffer->in_length )
3922 cl = pr->Class;
3926 for ( i = 1, j = buffer->in_pos + 1; i < pr->GlyphCount; i++, j++ )
3933 if ( j + pr->GlyphCount - i == (HB_Int)buffer->in_length )
3952 error = Do_ContextPos( gpi, pr->GlyphCount,
3953 pr->PosCount, pr->PosLookupRecord,