|
|
|
@ -548,7 +548,7 @@ struct SinglePos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
case 2: return_trace (c->dispatch (u.format2)); |
|
|
|
@ -843,7 +843,7 @@ struct PairPos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
case 2: return_trace (c->dispatch (u.format2)); |
|
|
|
@ -1024,7 +1024,7 @@ struct CursivePos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
default:return_trace (c->default_return_value ()); |
|
|
|
@ -1120,7 +1120,7 @@ struct MarkBasePos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
default:return_trace (c->default_return_value ()); |
|
|
|
@ -1238,7 +1238,7 @@ struct MarkLigPos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
default:return_trace (c->default_return_value ()); |
|
|
|
@ -1353,7 +1353,7 @@ struct MarkMarkPos |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, u.format); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (u.format) { |
|
|
|
|
case 1: return_trace (c->dispatch (u.format1)); |
|
|
|
|
default:return_trace (c->default_return_value ()); |
|
|
|
@ -1404,8 +1404,7 @@ struct PosLookupSubTable |
|
|
|
|
inline typename context_t::return_t dispatch (context_t *c, unsigned int lookup_type) const |
|
|
|
|
{ |
|
|
|
|
TRACE_DISPATCH (this, lookup_type); |
|
|
|
|
/* The sub_format passed to may_dispatch is unnecessary but harmless. */ |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.sub_format))) return_trace (c->default_return_value ()); |
|
|
|
|
if (unlikely (!c->may_dispatch (this, &u.sub_format))) return_trace (c->no_dispatch_return_value ()); |
|
|
|
|
switch (lookup_type) { |
|
|
|
|
case Single: return_trace (u.single.dispatch (c)); |
|
|
|
|
case Pair: return_trace (u.pair.dispatch (c)); |
|
|
|
|