#line 1 "hb-ot-shaper-khmer-machine.rl"
#ifndef HB_OT_SHAPER_KHMER_MACHINE_HH
#define HB_OT_SHAPER_KHMER_MACHINE_HH
#include "hb.hh"
#include "hb-ot-layout.hh"
#include "hb-ot-shaper-indic.hh"
#define khmer_category() …
khmer_category_t;
#define K_Cat(Cat) …
enum khmer_syllable_type_t { … };
#line 52 "hb-ot-shaper-khmer-machine.hh"
#define khmer_syllable_machine_ex_C …
#define khmer_syllable_machine_ex_DOTTEDCIRCLE …
#define khmer_syllable_machine_ex_H …
#define khmer_syllable_machine_ex_PLACEHOLDER …
#define khmer_syllable_machine_ex_Ra …
#define khmer_syllable_machine_ex_Robatic …
#define khmer_syllable_machine_ex_V …
#define khmer_syllable_machine_ex_VAbv …
#define khmer_syllable_machine_ex_VBlw …
#define khmer_syllable_machine_ex_VPre …
#define khmer_syllable_machine_ex_VPst …
#define khmer_syllable_machine_ex_Xgroup …
#define khmer_syllable_machine_ex_Ygroup …
#define khmer_syllable_machine_ex_ZWJ …
#define khmer_syllable_machine_ex_ZWNJ …
#line 70 "hb-ot-shaper-khmer-machine.hh"
static const unsigned char _khmer_syllable_machine_trans_keys[] = …;
static const char _khmer_syllable_machine_key_spans[] = …;
static const short _khmer_syllable_machine_index_offsets[] = …;
static const char _khmer_syllable_machine_indicies[] = …;
static const char _khmer_syllable_machine_trans_targs[] = …;
static const char _khmer_syllable_machine_trans_actions[] = …;
static const char _khmer_syllable_machine_to_state_actions[] = …;
static const char _khmer_syllable_machine_from_state_actions[] = …;
static const short _khmer_syllable_machine_eof_trans[] = …;
static const int khmer_syllable_machine_start = …;
static const int khmer_syllable_machine_first_final = …;
static const int khmer_syllable_machine_error = …;
static const int khmer_syllable_machine_en_main = …;
#line 53 "hb-ot-shaper-khmer-machine.rl"
#line 102 "hb-ot-shaper-khmer-machine.rl"
#define found_syllable …
inline void
find_syllables_khmer (hb_buffer_t *buffer)
{ … }
#undef found_syllable
#endif