[HB] Move lookup types enum into subtable class
authorBehdad Esfahbod <behdad@behdad.org>
Wed, 20 May 2009 07:53:00 +0000 (03:53 -0400)
committerBehdad Esfahbod <behdad@behdad.org>
Mon, 2 Nov 2009 19:40:14 +0000 (14:40 -0500)
src/hb-ot-layout-gpos-private.h
src/hb-ot-layout-gsub-private.h

index f46adfd..0373a59 100644 (file)
@@ -1064,51 +1064,51 @@ ASSERT_SIZE (ExtensionPos, 2);
  * PosLookup
  */
 
-enum {
-  GPOS_Single                  = 1,
-  GPOS_Pair                    = 2,
-  GPOS_Cursive                 = 3,
-  GPOS_MarkBase                        = 4,
-  GPOS_MarkLig                 = 5,
-  GPOS_MarkMark                        = 6,
-  GPOS_Context                 = 7,
-  GPOS_ChainContext            = 8,
-  GPOS_Extension               = 9,
-};
-
 
 struct PosLookupSubTable
 {
   friend struct PosLookup;
 
+  enum {
+    Single             = 1,
+    Pair               = 2,
+    Cursive            = 3,
+    MarkBase           = 4,
+    MarkLig            = 5,
+    MarkMark           = 6,
+    Context            = 7,
+    ChainContext       = 8,
+    Extension          = 9,
+  };
+
   inline bool apply (APPLY_ARG_DEF, unsigned int lookup_type) const
   {
     switch (lookup_type) {
-    case GPOS_Single:                  return u.single->apply (APPLY_ARG);
-    case GPOS_Pair:                    return u.pair->apply (APPLY_ARG);
-    case GPOS_Cursive:                 return u.cursive->apply (APPLY_ARG);
-    case GPOS_MarkBase:                        return u.markBase->apply (APPLY_ARG);
-    case GPOS_MarkLig:                 return u.markLig->apply (APPLY_ARG);
-    case GPOS_MarkMark:                        return u.markMark->apply (APPLY_ARG);
-    case GPOS_Context:                 return u.context->apply (APPLY_ARG);
-    case GPOS_ChainContext:            return u.chainContext->apply (APPLY_ARG);
-    case GPOS_Extension:               return u.extension->apply (APPLY_ARG);
+    case Single:               return u.single->apply (APPLY_ARG);
+    case Pair:                 return u.pair->apply (APPLY_ARG);
+    case Cursive:              return u.cursive->apply (APPLY_ARG);
+    case MarkBase:             return u.markBase->apply (APPLY_ARG);
+    case MarkLig:              return u.markLig->apply (APPLY_ARG);
+    case MarkMark:             return u.markMark->apply (APPLY_ARG);
+    case Context:              return u.context->apply (APPLY_ARG);
+    case ChainContext:         return u.chainContext->apply (APPLY_ARG);
+    case Extension:            return u.extension->apply (APPLY_ARG);
     default:return false;
     }
   }
 
   private:
   union {
-  USHORT                       format;
-  SinglePos                    single[];
-  PairPos                      pair[];
-  CursivePos                   cursive[];
-  MarkBasePos                  markBase[];
-  MarkLigPos                   markLig[];
-  MarkMarkPos                  markMark[];
-  ContextPos                   context[];
-  ChainContextPos              chainContext[];
-  ExtensionPos                 extension[];
+  USHORT               format;
+  SinglePos            single[];
+  PairPos              pair[];
+  CursivePos           cursive[];
+  MarkBasePos          markBase[];
+  MarkLigPos           markLig[];
+  MarkMarkPos          markMark[];
+  ContextPos           context[];
+  ChainContextPos      chainContext[];
+  ExtensionPos         extension[];
   } u;
 };
 ASSERT_SIZE (PosLookupSubTable, 2);
@@ -1127,7 +1127,7 @@ struct PosLookup : Lookup
   {
     unsigned int type = get_type ();
 
-    if (HB_UNLIKELY (type == GPOS_Extension))
+    if (HB_UNLIKELY (type == PosLookupSubTable::Extension))
     {
       unsigned int count = get_subtable_count ();
       type = get_subtable(0).u.extension->get_type ();
@@ -1240,7 +1240,7 @@ inline bool ExtensionPosFormat1::apply (APPLY_ARG_DEF) const
 {
   unsigned int lookup_type = get_type ();
 
-  if (HB_UNLIKELY (lookup_type ==  GPOS_Extension))
+  if (HB_UNLIKELY (lookup_type == PosLookupSubTable::Extension))
     return false;
 
   return ((PosLookupSubTable&)*(((char *) this) + get_offset ())).apply (APPLY_ARG, lookup_type);
index 24e4b37..82d7d5f 100644 (file)
@@ -630,32 +630,32 @@ ASSERT_SIZE (ReverseChainSingleSubst, 2);
  * SubstLookup
  */
 
-enum {
-  GSUB_Single                  = 1,
-  GSUB_Multiple                        = 2,
-  GSUB_Alternate               = 3,
-  GSUB_Ligature                        = 4,
-  GSUB_Context                 = 5,
-  GSUB_ChainContext            = 6,
-  GSUB_Extension               = 7,
-  GSUB_ReverseChainSingle      = 8,
-};
-
 struct SubstLookupSubTable
 {
   friend struct SubstLookup;
 
+  enum {
+    Single             = 1,
+    Multiple           = 2,
+    Alternate          = 3,
+    Ligature           = 4,
+    Context            = 5,
+    ChainContext       = 6,
+    Extension          = 7,
+    ReverseChainSingle = 8,
+  };
+
   inline bool apply (APPLY_ARG_DEF, unsigned int lookup_type) const
   {
     switch (lookup_type) {
-    case GSUB_Single:                  return u.single->apply (APPLY_ARG);
-    case GSUB_Multiple:                        return u.multiple->apply (APPLY_ARG);
-    case GSUB_Alternate:               return u.alternate->apply (APPLY_ARG);
-    case GSUB_Ligature:                        return u.ligature->apply (APPLY_ARG);
-    case GSUB_Context:                 return u.context->apply (APPLY_ARG);
-    case GSUB_ChainContext:            return u.chainContext->apply (APPLY_ARG);
-    case GSUB_Extension:               return u.extension->apply (APPLY_ARG);
-    case GSUB_ReverseChainSingle:      return u.reverseChainContextSingle->apply (APPLY_ARG);
+    case Single:               return u.single->apply (APPLY_ARG);
+    case Multiple:             return u.multiple->apply (APPLY_ARG);
+    case Alternate:            return u.alternate->apply (APPLY_ARG);
+    case Ligature:             return u.ligature->apply (APPLY_ARG);
+    case Context:              return u.context->apply (APPLY_ARG);
+    case ChainContext:         return u.chainContext->apply (APPLY_ARG);
+    case Extension:            return u.extension->apply (APPLY_ARG);
+    case ReverseChainSingle:   return u.reverseChainContextSingle->apply (APPLY_ARG);
     default:return false;
     }
   }
@@ -689,7 +689,7 @@ struct SubstLookup : Lookup
   {
     unsigned int type = get_type ();
 
-    if (HB_UNLIKELY (type == GSUB_Extension))
+    if (HB_UNLIKELY (type == SubstLookupSubTable::Extension))
     {
       unsigned int count = get_subtable_count ();
       type = get_subtable(0).u.extension->get_type ();
@@ -705,7 +705,7 @@ struct SubstLookup : Lookup
 
   inline bool is_reverse (void) const
   {
-    return HB_UNLIKELY (get_effective_type () == GSUB_ReverseChainSingle);
+    return HB_UNLIKELY (get_effective_type () == SubstLookupSubTable::ReverseChainSingle);
   }
 
   inline bool apply_subtables (hb_ot_layout_t *layout,
@@ -819,7 +819,7 @@ inline bool ExtensionSubstFormat1::apply (APPLY_ARG_DEF) const
 {
   unsigned int lookup_type = get_type ();
 
-  if (HB_UNLIKELY (lookup_type ==  GSUB_Extension))
+  if (HB_UNLIKELY (lookup_type ==  SubstLookupSubTable::Extension))
     return false;
 
   return ((SubstLookupSubTable&)*(((char *) this) + get_offset ())).apply (APPLY_ARG, lookup_type);