$thai_reversing = [[:Logical_Order_Exception:] & $thai];
( $thai_reversing ) ( $thai_non_reversing ) --> $2 $1;
$2 $1 <-- ( $thai_non_reversing ) ( $thai_reversing );
Should it rather be as in the following?
$thai_reversing = [[:Logical_Order_Exception:] & $thai];
$thai_consonant = [ก-ฮ] ;
( $thai_reversing ) ( $thai_consonant | <hyphen> ) --> $2 $1;
$2 $1 <-- ( $thai_consonant | <hyphen> ) ( $thai_reversing );