+
+ enum LineBreakClass lbcCur, lbcNew;
+
+ switch (lbpCtx->lbcCur)
+ {
+ case LBP_H2: /**< Hangul LV */
+ case LBP_H3: /**< Hangul LVT */
+ case LBP_JL: /**< Hangul L Jamo */
+ case LBP_JV: /**< Hangul V Jamo */
+ case LBP_JT: /**< Hangul T Jamo */
+ lbcCur = LBP_AL;
+ break;
+ default:
+ lbcCur = lbpCtx->lbcCur;
+ break;
+ }
+
+ switch (lbpCtx->lbcNew)
+ {
+ case LBP_H2: /**< Hangul LV */
+ case LBP_H3: /**< Hangul LVT */
+ case LBP_JL: /**< Hangul L Jamo */
+ case LBP_JV: /**< Hangul V Jamo */
+ case LBP_JT: /**< Hangul T Jamo */
+ lbcNew = LBP_AL;
+ break;
+ default:
+ lbcNew = lbpCtx->lbcNew;
+ break;
+ }
+
+ switch (baTable[lbcCur - 1][lbcNew - 1])