Lines Matching refs:arabic_plan
261 arabic_shape_plan_t *arabic_plan = (arabic_shape_plan_t *) calloc (1, sizeof (arabic_shape_plan_t));
262 if (unlikely (!arabic_plan))
265 arabic_plan->do_fallback = plan->props.script == HB_SCRIPT_ARABIC;
266 arabic_plan->has_stch = !!plan->map.get_1_mask (HB_TAG ('s','t','c','h'));
268 arabic_plan->mask_array[i] = plan->map.get_1_mask (arabic_features[i]);
269 arabic_plan->do_fallback = arabic_plan->do_fallback &&
274 return arabic_plan;
280 arabic_shape_plan_t *arabic_plan = (arabic_shape_plan_t *) data;
282 arabic_fallback_plan_destroy (arabic_plan->fallback_plan);
353 setup_masks_arabic_plan (const arabic_shape_plan_t *arabic_plan,
366 info[i].mask |= arabic_plan->mask_array[info[i].arabic_shaping_action()];
374 const arabic_shape_plan_t *arabic_plan = (const arabic_shape_plan_t *) plan->data;
375 setup_masks_arabic_plan (arabic_plan, buffer, plan->props.script);
396 const arabic_shape_plan_t *arabic_plan = (const arabic_shape_plan_t *) plan->data;
398 if (!arabic_plan->do_fallback)
402 arabic_fallback_plan_t *fallback_plan = (arabic_fallback_plan_t *) hb_atomic_ptr_get (&arabic_plan->fallback_plan);
407 if (unlikely (!hb_atomic_ptr_cmpexch (&(const_cast<arabic_shape_plan_t *> (arabic_plan))->fallback_plan, NULL, fallback_plan))) {
429 const arabic_shape_plan_t *arabic_plan = (const arabic_shape_plan_t *) plan->data;
430 if (!arabic_plan->has_stch)