From d1f58e5979bb8227e1136fbf72facce7c2e9bb7c Mon Sep 17 00:00:00 2001 From: Behdad Esfahbod Date: Fri, 8 Jul 2022 13:25:07 -0600 Subject: [PATCH] [>64k:layout:(Chain)Context] Implement format 5 Implements part of https://github.com/be-fonts/boring-expansion-spec/issues/34 Subset does NOT lower format. --- src/hb-ot-layout-gsubgpos.hh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/hb-ot-layout-gsubgpos.hh b/src/hb-ot-layout-gsubgpos.hh index b78a25564..0e312e2c5 100644 --- a/src/hb-ot-layout-gsubgpos.hh +++ b/src/hb-ot-layout-gsubgpos.hh @@ -2595,6 +2595,9 @@ struct Context case 1: return_trace (c->dispatch (u.format1, std::forward (ds)...)); case 2: return_trace (c->dispatch (u.format2, std::forward (ds)...)); case 3: return_trace (c->dispatch (u.format3, std::forward (ds)...)); +#ifndef HB_NO_BORING_EXPANSION + case 5: return_trace (c->dispatch (u.format5, std::forward (ds)...)); +#endif default:return_trace (c->default_return_value ()); } } @@ -2605,6 +2608,9 @@ struct Context ContextFormat1 format1; ContextFormat2_5 format2; ContextFormat3 format3; +#ifndef HB_NO_BORING_EXPANSION + ContextFormat2_5 format5; +#endif } u; }; @@ -3750,6 +3756,9 @@ struct ChainContext case 1: return_trace (c->dispatch (u.format1, std::forward (ds)...)); case 2: return_trace (c->dispatch (u.format2, std::forward (ds)...)); case 3: return_trace (c->dispatch (u.format3, std::forward (ds)...)); +#ifndef HB_NO_BORING_EXPANSION + case 5: return_trace (c->dispatch (u.format5, std::forward (ds)...)); +#endif default:return_trace (c->default_return_value ()); } } @@ -3760,6 +3769,9 @@ struct ChainContext ChainContextFormat1 format1; ChainContextFormat2_5 format2; ChainContextFormat3 format3; +#ifndef HB_NO_BORING_EXPANSION + ChainContextFormat2_5 format5; +#endif } u; };