Blame src/hb-ot-shape-complex-use-machine.hh

Packit Service 5bcba8
Packit Service 5bcba8
#line 1 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
/*
Packit Service 5bcba8
 * Copyright © 2015  Mozilla Foundation.
Packit Service 5bcba8
 * Copyright © 2015  Google, Inc.
Packit Service 5bcba8
 *
Packit Service 5bcba8
 *  This is part of HarfBuzz, a text shaping library.
Packit Service 5bcba8
 *
Packit Service 5bcba8
 * Permission is hereby granted, without written agreement and without
Packit Service 5bcba8
 * license or royalty fees, to use, copy, modify, and distribute this
Packit Service 5bcba8
 * software and its documentation for any purpose, provided that the
Packit Service 5bcba8
 * above copyright notice and the following two paragraphs appear in
Packit Service 5bcba8
 * all copies of this software.
Packit Service 5bcba8
 *
Packit Service 5bcba8
 * IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE TO ANY PARTY FOR
Packit Service 5bcba8
 * DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
Packit Service 5bcba8
 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN
Packit Service 5bcba8
 * IF THE COPYRIGHT HOLDER HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
Packit Service 5bcba8
 * DAMAGE.
Packit Service 5bcba8
 *
Packit Service 5bcba8
 * THE COPYRIGHT HOLDER SPECIFICALLY DISCLAIMS ANY WARRANTIES, INCLUDING,
Packit Service 5bcba8
 * BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
Packit Service 5bcba8
 * FITNESS FOR A PARTICULAR PURPOSE.  THE SOFTWARE PROVIDED HEREUNDER IS
Packit Service 5bcba8
 * ON AN "AS IS" BASIS, AND THE COPYRIGHT HOLDER HAS NO OBLIGATION TO
Packit Service 5bcba8
 * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS.
Packit Service 5bcba8
 *
Packit Service 5bcba8
 * Mozilla Author(s): Jonathan Kew
Packit Service 5bcba8
 * Google Author(s): Behdad Esfahbod
Packit Service 5bcba8
 */
Packit Service 5bcba8
Packit Service 5bcba8
#ifndef HB_OT_SHAPE_COMPLEX_USE_MACHINE_HH
Packit Service 5bcba8
#define HB_OT_SHAPE_COMPLEX_USE_MACHINE_HH
Packit Service 5bcba8
Packit Service 5bcba8
#include "hb-private.hh"
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
#line 38 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
static const unsigned char _use_syllable_machine_trans_keys[] = {
Packit Service 5bcba8
	1u, 1u, 0u, 39u, 21u, 21u, 8u, 39u, 8u, 39u, 1u, 1u, 8u, 39u, 8u, 39u, 
Packit Service 5bcba8
	8u, 39u, 8u, 26u, 8u, 26u, 8u, 26u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 
Packit Service 5bcba8
	8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 
Packit Service 5bcba8
	13u, 21u, 4u, 4u, 13u, 13u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 26u, 
Packit Service 5bcba8
	8u, 26u, 8u, 26u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 
Packit Service 5bcba8
	8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 8u, 39u, 1u, 1u, 1u, 39u, 8u, 39u, 
Packit Service 5bcba8
	21u, 42u, 41u, 42u, 42u, 42u, 0
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_key_spans[] = {
Packit Service 5bcba8
	1, 40, 1, 32, 32, 1, 32, 32, 
Packit Service 5bcba8
	32, 19, 19, 19, 32, 32, 32, 32, 
Packit Service 5bcba8
	32, 32, 32, 32, 32, 32, 32, 32, 
Packit Service 5bcba8
	9, 1, 1, 32, 32, 32, 32, 19, 
Packit Service 5bcba8
	19, 19, 32, 32, 32, 32, 32, 32, 
Packit Service 5bcba8
	32, 32, 32, 32, 32, 1, 39, 32, 
Packit Service 5bcba8
	22, 2, 1
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const short _use_syllable_machine_index_offsets[] = {
Packit Service 5bcba8
	0, 2, 43, 45, 78, 111, 113, 146, 
Packit Service 5bcba8
	179, 212, 232, 252, 272, 305, 338, 371, 
Packit Service 5bcba8
	404, 437, 470, 503, 536, 569, 602, 635, 
Packit Service 5bcba8
	668, 678, 680, 682, 715, 748, 781, 814, 
Packit Service 5bcba8
	834, 854, 874, 907, 940, 973, 1006, 1039, 
Packit Service 5bcba8
	1072, 1105, 1138, 1171, 1204, 1237, 1239, 1279, 
Packit Service 5bcba8
	1312, 1335, 1338
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_indicies[] = {
Packit Service 5bcba8
	1, 0, 2, 3, 4, 2, 5, 3, 
Packit Service 5bcba8
	4, 4, 6, 4, 4, 1, 7, 4, 
Packit Service 5bcba8
	4, 4, 2, 2, 8, 9, 4, 4, 
Packit Service 5bcba8
	10, 11, 12, 13, 14, 15, 16, 10, 
Packit Service 5bcba8
	17, 18, 19, 20, 21, 22, 4, 23, 
Packit Service 5bcba8
	24, 25, 4, 27, 26, 29, 28, 28, 
Packit Service 5bcba8
	30, 31, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 32, 33, 34, 35, 36, 37, 
Packit Service 5bcba8
	38, 39, 33, 40, 32, 41, 42, 43, 
Packit Service 5bcba8
	44, 28, 45, 46, 47, 28, 29, 28, 
Packit Service 5bcba8
	28, 30, 31, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 48, 33, 34, 35, 36, 
Packit Service 5bcba8
	37, 38, 39, 33, 40, 41, 41, 42, 
Packit Service 5bcba8
	43, 44, 28, 45, 46, 47, 28, 30, 
Packit Service 5bcba8
	49, 29, 28, 28, 30, 31, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 33, 
Packit Service 5bcba8
	34, 35, 36, 37, 38, 39, 33, 40, 
Packit Service 5bcba8
	41, 41, 42, 43, 44, 28, 45, 46, 
Packit Service 5bcba8
	47, 28, 29, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	33, 34, 35, 36, 37, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 42, 43, 44, 28, 45, 
Packit Service 5bcba8
	46, 47, 28, 29, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 34, 35, 36, 37, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	45, 46, 47, 28, 29, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 35, 36, 37, 28, 
Packit Service 5bcba8
	29, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 36, 37, 28, 29, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 37, 28, 
Packit Service 5bcba8
	29, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	35, 36, 37, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 45, 46, 47, 
Packit Service 5bcba8
	28, 29, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 35, 36, 37, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 46, 
Packit Service 5bcba8
	47, 28, 29, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 35, 36, 37, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 47, 28, 29, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 34, 35, 36, 37, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 42, 43, 44, 28, 
Packit Service 5bcba8
	45, 46, 47, 28, 29, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 34, 35, 36, 37, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 43, 44, 
Packit Service 5bcba8
	28, 45, 46, 47, 28, 29, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 34, 35, 36, 37, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	44, 28, 45, 46, 47, 28, 29, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 33, 34, 35, 36, 
Packit Service 5bcba8
	37, 28, 39, 33, 28, 28, 28, 42, 
Packit Service 5bcba8
	43, 44, 28, 45, 46, 47, 28, 29, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 33, 34, 35, 
Packit Service 5bcba8
	36, 37, 28, 50, 33, 28, 28, 28, 
Packit Service 5bcba8
	42, 43, 44, 28, 45, 46, 47, 28, 
Packit Service 5bcba8
	29, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 33, 34, 
Packit Service 5bcba8
	35, 36, 37, 28, 28, 33, 28, 28, 
Packit Service 5bcba8
	28, 42, 43, 44, 28, 45, 46, 47, 
Packit Service 5bcba8
	28, 29, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 33, 
Packit Service 5bcba8
	34, 35, 36, 37, 38, 39, 33, 28, 
Packit Service 5bcba8
	28, 28, 42, 43, 44, 28, 45, 46, 
Packit Service 5bcba8
	47, 28, 29, 28, 28, 30, 31, 28, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	33, 34, 35, 36, 37, 38, 39, 33, 
Packit Service 5bcba8
	40, 28, 41, 42, 43, 44, 28, 45, 
Packit Service 5bcba8
	46, 47, 28, 29, 28, 28, 30, 31, 
Packit Service 5bcba8
	28, 28, 28, 28, 28, 28, 28, 28, 
Packit Service 5bcba8
	28, 33, 34, 35, 36, 37, 38, 39, 
Packit Service 5bcba8
	33, 40, 32, 41, 42, 43, 44, 28, 
Packit Service 5bcba8
	45, 46, 47, 28, 52, 51, 51, 51, 
Packit Service 5bcba8
	51, 51, 51, 51, 53, 51, 5, 54, 
Packit Service 5bcba8
	52, 51, 6, 55, 55, 1, 56, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 57, 
Packit Service 5bcba8
	10, 11, 12, 13, 14, 15, 16, 10, 
Packit Service 5bcba8
	17, 19, 19, 20, 21, 22, 55, 23, 
Packit Service 5bcba8
	24, 25, 55, 6, 55, 55, 1, 56, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 10, 11, 12, 13, 14, 15, 16, 
Packit Service 5bcba8
	10, 17, 19, 19, 20, 21, 22, 55, 
Packit Service 5bcba8
	23, 24, 25, 55, 6, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 10, 11, 12, 13, 14, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 20, 21, 22, 
Packit Service 5bcba8
	55, 23, 24, 25, 55, 6, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 11, 12, 13, 14, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 23, 24, 25, 55, 6, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 12, 13, 
Packit Service 5bcba8
	14, 55, 6, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 13, 14, 55, 6, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	14, 55, 6, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 12, 13, 14, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 23, 
Packit Service 5bcba8
	24, 25, 55, 6, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 12, 13, 14, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 24, 25, 55, 6, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 12, 13, 14, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 25, 55, 6, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 11, 12, 13, 14, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 20, 21, 
Packit Service 5bcba8
	22, 55, 23, 24, 25, 55, 6, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 11, 12, 13, 
Packit Service 5bcba8
	14, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	21, 22, 55, 23, 24, 25, 55, 6, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 11, 12, 
Packit Service 5bcba8
	13, 14, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 22, 55, 23, 24, 25, 55, 
Packit Service 5bcba8
	6, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 10, 11, 
Packit Service 5bcba8
	12, 13, 14, 55, 16, 10, 55, 55, 
Packit Service 5bcba8
	55, 20, 21, 22, 55, 23, 24, 25, 
Packit Service 5bcba8
	55, 6, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 10, 
Packit Service 5bcba8
	11, 12, 13, 14, 55, 58, 10, 55, 
Packit Service 5bcba8
	55, 55, 20, 21, 22, 55, 23, 24, 
Packit Service 5bcba8
	25, 55, 6, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	10, 11, 12, 13, 14, 55, 55, 10, 
Packit Service 5bcba8
	55, 55, 55, 20, 21, 22, 55, 23, 
Packit Service 5bcba8
	24, 25, 55, 6, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 10, 11, 12, 13, 14, 15, 16, 
Packit Service 5bcba8
	10, 55, 55, 55, 20, 21, 22, 55, 
Packit Service 5bcba8
	23, 24, 25, 55, 6, 55, 55, 1, 
Packit Service 5bcba8
	56, 55, 55, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 10, 11, 12, 13, 14, 15, 
Packit Service 5bcba8
	16, 10, 17, 55, 19, 20, 21, 22, 
Packit Service 5bcba8
	55, 23, 24, 25, 55, 1, 59, 3, 
Packit Service 5bcba8
	55, 55, 55, 3, 55, 55, 6, 55, 
Packit Service 5bcba8
	55, 1, 56, 55, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 10, 11, 12, 13, 
Packit Service 5bcba8
	14, 15, 16, 10, 17, 18, 19, 20, 
Packit Service 5bcba8
	21, 22, 55, 23, 24, 25, 55, 6, 
Packit Service 5bcba8
	55, 55, 1, 56, 55, 55, 55, 55, 
Packit Service 5bcba8
	55, 55, 55, 55, 55, 10, 11, 12, 
Packit Service 5bcba8
	13, 14, 15, 16, 10, 17, 18, 19, 
Packit Service 5bcba8
	20, 21, 22, 55, 23, 24, 25, 55, 
Packit Service 5bcba8
	61, 60, 60, 60, 60, 60, 60, 60, 
Packit Service 5bcba8
	60, 60, 60, 60, 60, 60, 60, 60, 
Packit Service 5bcba8
	60, 60, 60, 60, 61, 62, 60, 61, 
Packit Service 5bcba8
	62, 60, 62, 60, 0
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_trans_targs[] = {
Packit Service 5bcba8
	1, 27, 2, 3, 1, 24, 1, 45, 
Packit Service 5bcba8
	46, 48, 29, 30, 31, 32, 33, 40, 
Packit Service 5bcba8
	41, 43, 47, 44, 37, 38, 39, 34, 
Packit Service 5bcba8
	35, 36, 1, 1, 1, 1, 4, 5, 
Packit Service 5bcba8
	23, 7, 8, 9, 10, 11, 18, 19, 
Packit Service 5bcba8
	21, 22, 15, 16, 17, 12, 13, 14, 
Packit Service 5bcba8
	6, 1, 20, 1, 25, 26, 1, 1, 
Packit Service 5bcba8
	0, 28, 42, 1, 1, 49, 50
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_trans_actions[] = {
Packit Service 5bcba8
	1, 2, 0, 0, 5, 0, 6, 0, 
Packit Service 5bcba8
	2, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 2, 2, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 7, 8, 9, 10, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 11, 0, 12, 0, 0, 13, 14, 
Packit Service 5bcba8
	0, 2, 0, 15, 16, 0, 0
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_to_state_actions[] = {
Packit Service 5bcba8
	0, 3, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const char _use_syllable_machine_from_state_actions[] = {
Packit Service 5bcba8
	0, 4, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0, 0, 0, 0, 0, 0, 
Packit Service 5bcba8
	0, 0, 0
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const short _use_syllable_machine_eof_trans[] = {
Packit Service 5bcba8
	1, 0, 27, 29, 29, 50, 29, 29, 
Packit Service 5bcba8
	29, 29, 29, 29, 29, 29, 29, 29, 
Packit Service 5bcba8
	29, 29, 29, 29, 29, 29, 29, 29, 
Packit Service 5bcba8
	52, 55, 52, 56, 56, 56, 56, 56, 
Packit Service 5bcba8
	56, 56, 56, 56, 56, 56, 56, 56, 
Packit Service 5bcba8
	56, 56, 56, 56, 56, 60, 56, 56, 
Packit Service 5bcba8
	61, 61, 61
Packit Service 5bcba8
};
Packit Service 5bcba8
Packit Service 5bcba8
static const int use_syllable_machine_start = 1;
Packit Service 5bcba8
static const int use_syllable_machine_first_final = 1;
Packit Service 5bcba8
static const int use_syllable_machine_error = -1;
Packit Service 5bcba8
Packit Service 5bcba8
static const int use_syllable_machine_en_main = 1;
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
#line 38 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
#line 139 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
#define found_syllable(syllable_type) \
Packit Service 5bcba8
  HB_STMT_START { \
Packit Service 5bcba8
    if (0) fprintf (stderr, "syllable %d..%d %s\n", last, p+1, #syllable_type); \
Packit Service 5bcba8
    for (unsigned int i = last; i < p+1; i++) \
Packit Service 5bcba8
      info[i].syllable() = (syllable_serial << 4) | syllable_type; \
Packit Service 5bcba8
    last = p+1; \
Packit Service 5bcba8
    syllable_serial++; \
Packit Service 5bcba8
    if (unlikely (syllable_serial == 16)) syllable_serial = 1; \
Packit Service 5bcba8
  } HB_STMT_END
Packit Service 5bcba8
Packit Service 5bcba8
static void
Packit Service 5bcba8
find_syllables (hb_buffer_t *buffer)
Packit Service 5bcba8
{
Packit Service 5bcba8
  unsigned int p, pe, eof, ts HB_UNUSED, te HB_UNUSED, act HB_UNUSED;
Packit Service 5bcba8
  int cs;
Packit Service 5bcba8
  hb_glyph_info_t *info = buffer->info;
Packit Service 5bcba8
  
Packit Service 5bcba8
#line 323 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
	{
Packit Service 5bcba8
	cs = use_syllable_machine_start;
Packit Service 5bcba8
	ts = 0;
Packit Service 5bcba8
	te = 0;
Packit Service 5bcba8
	act = 0;
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
#line 160 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
Packit Service 5bcba8
Packit Service 5bcba8
  p = 0;
Packit Service 5bcba8
  pe = eof = buffer->len;
Packit Service 5bcba8
Packit Service 5bcba8
  unsigned int last = 0;
Packit Service 5bcba8
  unsigned int syllable_serial = 1;
Packit Service 5bcba8
  
Packit Service 5bcba8
#line 340 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
	{
Packit Service 5bcba8
	int _slen;
Packit Service 5bcba8
	int _trans;
Packit Service 5bcba8
	const unsigned char *_keys;
Packit Service 5bcba8
	const char *_inds;
Packit Service 5bcba8
	if ( p == pe )
Packit Service 5bcba8
		goto _test_eof;
Packit Service 5bcba8
_resume:
Packit Service 5bcba8
	switch ( _use_syllable_machine_from_state_actions[cs] ) {
Packit Service 5bcba8
	case 4:
Packit Service 5bcba8
#line 1 "NONE"
Packit Service 5bcba8
	{ts = p;}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
#line 354 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
	_keys = _use_syllable_machine_trans_keys + (cs<<1);
Packit Service 5bcba8
	_inds = _use_syllable_machine_indicies + _use_syllable_machine_index_offsets[cs];
Packit Service 5bcba8
Packit Service 5bcba8
	_slen = _use_syllable_machine_key_spans[cs];
Packit Service 5bcba8
	_trans = _inds[ _slen > 0 && _keys[0] <=( info[p].use_category()) &&
Packit Service 5bcba8
		( info[p].use_category()) <= _keys[1] ?
Packit Service 5bcba8
		( info[p].use_category()) - _keys[0] : _slen ];
Packit Service 5bcba8
Packit Service 5bcba8
_eof_trans:
Packit Service 5bcba8
	cs = _use_syllable_machine_trans_targs[_trans];
Packit Service 5bcba8
Packit Service 5bcba8
	if ( _use_syllable_machine_trans_actions[_trans] == 0 )
Packit Service 5bcba8
		goto _again;
Packit Service 5bcba8
Packit Service 5bcba8
	switch ( _use_syllable_machine_trans_actions[_trans] ) {
Packit Service 5bcba8
	case 2:
Packit Service 5bcba8
#line 1 "NONE"
Packit Service 5bcba8
	{te = p+1;}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 8:
Packit Service 5bcba8
#line 128 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p+1;{ found_syllable (independent_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 10:
Packit Service 5bcba8
#line 130 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p+1;{ found_syllable (standard_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 6:
Packit Service 5bcba8
#line 134 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p+1;{ found_syllable (broken_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 5:
Packit Service 5bcba8
#line 135 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p+1;{ found_syllable (non_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 7:
Packit Service 5bcba8
#line 128 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (independent_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 11:
Packit Service 5bcba8
#line 129 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (virama_terminated_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 9:
Packit Service 5bcba8
#line 130 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (standard_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 13:
Packit Service 5bcba8
#line 131 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (number_joiner_terminated_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 12:
Packit Service 5bcba8
#line 132 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (numeral_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 16:
Packit Service 5bcba8
#line 133 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (symbol_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 14:
Packit Service 5bcba8
#line 134 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (broken_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 15:
Packit Service 5bcba8
#line 135 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{te = p;p--;{ found_syllable (non_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
	case 1:
Packit Service 5bcba8
#line 134 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
	{{p = ((te))-1;}{ found_syllable (broken_cluster); }}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
#line 428 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
_again:
Packit Service 5bcba8
	switch ( _use_syllable_machine_to_state_actions[cs] ) {
Packit Service 5bcba8
	case 3:
Packit Service 5bcba8
#line 1 "NONE"
Packit Service 5bcba8
	{ts = 0;}
Packit Service 5bcba8
	break;
Packit Service 5bcba8
#line 437 "hb-ot-shape-complex-use-machine.hh"
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
	if ( ++p != pe )
Packit Service 5bcba8
		goto _resume;
Packit Service 5bcba8
	_test_eof: {}
Packit Service 5bcba8
	if ( p == eof )
Packit Service 5bcba8
	{
Packit Service 5bcba8
	if ( _use_syllable_machine_eof_trans[cs] > 0 ) {
Packit Service 5bcba8
		_trans = _use_syllable_machine_eof_trans[cs] - 1;
Packit Service 5bcba8
		goto _eof_trans;
Packit Service 5bcba8
	}
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
	}
Packit Service 5bcba8
Packit Service 5bcba8
#line 169 "hb-ot-shape-complex-use-machine.rl"
Packit Service 5bcba8
Packit Service 5bcba8
}
Packit Service 5bcba8
Packit Service 5bcba8
#undef found_syllable
Packit Service 5bcba8
Packit Service 5bcba8
#endif /* HB_OT_SHAPE_COMPLEX_USE_MACHINE_HH */