godot/thirdparty/freetype/src/autofit/afranges.c

/****************************************************************************
 *
 * afranges.c
 *
 *   Auto-fitter Unicode script ranges (body).
 *
 * Copyright (C) 2013-2023 by
 * David Turner, Robert Wilhelm, and Werner Lemberg.
 *
 * This file is part of the FreeType project, and may only be used,
 * modified, and distributed under the terms of the FreeType project
 * license, LICENSE.TXT.  By continuing to use, modify, or distribute
 * this file you indicate that you have read the license and
 * understand and accept it fully.
 *
 */


#include "afranges.h"

  /*
   * The algorithm for assigning properties and styles to the `glyph_styles'
   * array is as follows (cf. the implementation in
   * `af_face_globals_compute_style_coverage').
   *
   *   Walk over all scripts (as listed in `afscript.h').
   *
   *   For a given script, walk over all styles (as listed in `afstyles.h').
   *   The order of styles is important and should be as follows.
   *
   *   - First come styles based on OpenType features (small caps, for
   *     example).  Since features rely on glyph indices, thus completely
   *     bypassing character codes, no properties are assigned.
   *
   *   - Next comes the default style, using the character ranges as defined
   *     below.  This also assigns properties.
   *
   *   Note that there also exist fallback scripts, mainly covering
   *   superscript and subscript glyphs of a script that are not present as
   *   OpenType features.  Fallback scripts are defined below, also
   *   assigning properties; they are applied after the corresponding
   *   script.
   *
   */


  /* XXX Check base character ranges again:                        */
  /*     Right now, they are quickly derived by visual inspection. */
  /*     I can imagine that fine-tuning is necessary.              */

  /* for the auto-hinter, a `non-base character' is something that should */
  /* not be affected by blue zones, regardless of whether this is a       */
  /* spacing or no-spacing glyph                                          */

  /* the `af_xxxx_nonbase_uniranges' ranges must be strict subsets */
  /* of the corresponding `af_xxxx_uniranges' ranges               */


  const AF_Script_UniRangeRec  af_adlm_uniranges[] =;

  const AF_Script_UniRangeRec  af_adlm_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_arab_uniranges[] =;

  const AF_Script_UniRangeRec  af_arab_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_armn_uniranges[] =;

  const AF_Script_UniRangeRec  af_armn_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_avst_uniranges[] =;

  const AF_Script_UniRangeRec  af_avst_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_bamu_uniranges[] =;

  const AF_Script_UniRangeRec  af_bamu_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_beng_uniranges[] =;

  const AF_Script_UniRangeRec  af_beng_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_buhd_uniranges[] =;

  const AF_Script_UniRangeRec  af_buhd_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cakm_uniranges[] =;

  const AF_Script_UniRangeRec  af_cakm_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cans_uniranges[] =;

  const AF_Script_UniRangeRec  af_cans_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cari_uniranges[] =;

  const AF_Script_UniRangeRec  af_cari_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cher_uniranges[] =;

  const AF_Script_UniRangeRec  af_cher_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_copt_uniranges[] =;

  const AF_Script_UniRangeRec  af_copt_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cprt_uniranges[] =;

  const AF_Script_UniRangeRec  af_cprt_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_cyrl_uniranges[] =;

  const AF_Script_UniRangeRec  af_cyrl_nonbase_uniranges[] =;


  /* There are some characters in the Devanagari Unicode block that are    */
  /* generic to Indic scripts; we omit them so that their presence doesn't */
  /* trigger Devanagari.                                                   */

  const AF_Script_UniRangeRec  af_deva_uniranges[] =;

  const AF_Script_UniRangeRec  af_deva_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_dsrt_uniranges[] =;

  const AF_Script_UniRangeRec  af_dsrt_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_ethi_uniranges[] =;

  const AF_Script_UniRangeRec  af_ethi_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_geor_uniranges[] =;

  const AF_Script_UniRangeRec  af_geor_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_geok_uniranges[] =;

  const AF_Script_UniRangeRec  af_geok_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_glag_uniranges[] =;

  const AF_Script_UniRangeRec  af_glag_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_goth_uniranges[] =;

  const AF_Script_UniRangeRec  af_goth_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_grek_uniranges[] =;

  const AF_Script_UniRangeRec  af_grek_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_gujr_uniranges[] =;

  const AF_Script_UniRangeRec  af_gujr_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_guru_uniranges[] =;

  const AF_Script_UniRangeRec  af_guru_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_hebr_uniranges[] =;

  const AF_Script_UniRangeRec  af_hebr_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_kali_uniranges[] =;

  const AF_Script_UniRangeRec  af_kali_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_knda_uniranges[] =;

  const AF_Script_UniRangeRec  af_knda_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_khmr_uniranges[] =;

  const AF_Script_UniRangeRec  af_khmr_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_khms_uniranges[] =;

  const AF_Script_UniRangeRec  af_khms_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_lao_uniranges[] =;

  const AF_Script_UniRangeRec  af_lao_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_latn_uniranges[] =;

  const AF_Script_UniRangeRec  af_latn_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_latb_uniranges[] =;

  const AF_Script_UniRangeRec  af_latb_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_latp_uniranges[] =;

  const AF_Script_UniRangeRec  af_latp_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_lisu_uniranges[] =;

  const AF_Script_UniRangeRec  af_lisu_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_mlym_uniranges[] =;

  const AF_Script_UniRangeRec  af_mlym_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_medf_uniranges[] =;

  const AF_Script_UniRangeRec  af_medf_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_mong_uniranges[] =;

  const AF_Script_UniRangeRec  af_mong_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_mymr_uniranges[] =;

  const AF_Script_UniRangeRec  af_mymr_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_nkoo_uniranges[] =;

  const AF_Script_UniRangeRec  af_nkoo_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_none_uniranges[] =;

  const AF_Script_UniRangeRec  af_none_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_olck_uniranges[] =;

  const AF_Script_UniRangeRec  af_olck_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_orkh_uniranges[] =;

  const AF_Script_UniRangeRec  af_orkh_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_osge_uniranges[] =;

  const AF_Script_UniRangeRec  af_osge_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_osma_uniranges[] =;

  const AF_Script_UniRangeRec  af_osma_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_rohg_uniranges[] =;

  const AF_Script_UniRangeRec  af_rohg_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_saur_uniranges[] =;

  const AF_Script_UniRangeRec  af_saur_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_shaw_uniranges[] =;

  const AF_Script_UniRangeRec  af_shaw_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_sinh_uniranges[] =;

  const AF_Script_UniRangeRec  af_sinh_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_sund_uniranges[] =;

  const AF_Script_UniRangeRec  af_sund_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_taml_uniranges[] =;

  const AF_Script_UniRangeRec  af_taml_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_tavt_uniranges[] =;

  const AF_Script_UniRangeRec  af_tavt_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_telu_uniranges[] =;

  const AF_Script_UniRangeRec  af_telu_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_thai_uniranges[] =;

  const AF_Script_UniRangeRec  af_thai_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_tfng_uniranges[] =;

  const AF_Script_UniRangeRec  af_tfng_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_vaii_uniranges[] =;

  const AF_Script_UniRangeRec  af_vaii_nonbase_uniranges[] =;


#ifdef AF_CONFIG_OPTION_INDIC

  const AF_Script_UniRangeRec  af_limb_uniranges[] =;

  const AF_Script_UniRangeRec  af_limb_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_orya_uniranges[] =;

  const AF_Script_UniRangeRec  af_orya_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_sylo_uniranges[] =;

  const AF_Script_UniRangeRec  af_sylo_nonbase_uniranges[] =;


  const AF_Script_UniRangeRec  af_tibt_uniranges[] =;

  const AF_Script_UniRangeRec  af_tibt_nonbase_uniranges[] =;

#endif /* !AF_CONFIG_OPTION_INDIC */

#ifdef AF_CONFIG_OPTION_CJK

  /* this corresponds to Unicode 6.0 */

  const AF_Script_UniRangeRec  af_hani_uniranges[] =;

  const AF_Script_UniRangeRec  af_hani_nonbase_uniranges[] =;

#endif /* !AF_CONFIG_OPTION_CJK */

/* END */