diff options
Diffstat (limited to 'src/sfnt')
-rw-r--r-- | src/sfnt/SkIBMFamilyClass.h | 214 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_EBDT.h | 1 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_EBLC.h | 14 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_V0.h | 47 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_V1.h | 47 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_V2.h | 46 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_V3.h | 47 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_V4.h | 47 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_OS_2_VA.h | 45 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_gasp.h | 1 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_glyf.h | 1 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_head.h | 32 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_hhea.h | 8 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_maxp_TT.h | 10 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_name.h | 843 | ||||
-rw-r--r-- | src/sfnt/SkOTTable_post.h | 16 | ||||
-rw-r--r-- | src/sfnt/SkPanose.h | 940 | ||||
-rw-r--r-- | src/sfnt/SkPreprocessorSeq.h | 826 | ||||
-rw-r--r-- | src/sfnt/SkTypedEnum.h | 68 |
19 files changed, 1135 insertions, 2118 deletions
diff --git a/src/sfnt/SkIBMFamilyClass.h b/src/sfnt/SkIBMFamilyClass.h index 1572011215..190952b084 100644 --- a/src/sfnt/SkIBMFamilyClass.h +++ b/src/sfnt/SkIBMFamilyClass.h @@ -9,159 +9,147 @@ #define SkIBMFamilyClass_DEFINED #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) struct SkIBMFamilyClass { - SK_TYPED_ENUM(Class, SK_OT_BYTE, - ((NoClassification, 0)) - ((OldstyleSerifs, 1)) - ((TransitionalSerifs, 2)) - ((ModernSerifs, 3)) - ((ClarendonSerifs, 4)) - ((SlabSerifs, 5)) + enum Class : SK_OT_BYTE { + NoClassification = 0, + OldstyleSerifs = 1, + TransitionalSerifs = 2, + ModernSerifs = 3, + ClarendonSerifs = 4, + SlabSerifs = 5, //6 reserved for future use - ((FreeformSerifs, 7)) - ((SansSerif, 8)) - ((Ornamentals, 9)) - ((Scripts, 10)) + FreeformSerifs = 7, + SansSerif = 8, + Ornamentals = 9, + Scripts = 10, //11 reserved for future use - ((Symbolic, 12)) + Symbolic = 12, //13-15 reserved for future use - SK_SEQ_END, - (familyClass)SK_SEQ_END) + } familyClass; union SubClass { struct OldstyleSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((IBMRoundedLegibility, 1)) - ((Garalde, 2)) - ((Venetian, 3)) - ((ModifiedVenetian, 4)) - ((DutchModern, 5)) - ((DutchTraditional, 6)) - ((Contemporary, 7)) - ((Calligraphic, 8)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + IBMRoundedLegibility = 1, + Garalde = 2, + Venetian = 3, + ModifiedVenetian = 4, + DutchModern = 5, + DutchTraditional = 6, + Contemporary = 7, + Calligraphic = 8, //9-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } oldstyleSerifs; struct TransitionalSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((DirectLine, 1)) - ((Script, 2)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + DirectLine = 1, + Script = 2, //3-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } transitionalSerifs; struct ModernSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Italian, 1)) - ((Script, 2)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Italian = 1, + Script = 2, //3-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } modernSerifs; struct ClarendonSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Clarendon, 1)) - ((Modern, 2)) - ((Traditional, 3)) - ((Newspaper, 4)) - ((StubSerif, 5)) - ((Monotone, 6)) - ((Typewriter, 7)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Clarendon = 1, + Modern = 2, + Traditional = 3, + Newspaper = 4, + StubSerif = 5, + Monotone = 6, + Typewriter = 7, //8-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } clarendonSerifs; struct SlabSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Monotone, 1)) - ((Humanist, 2)) - ((Geometric, 3)) - ((Swiss, 4)) - ((Typewriter, 5)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Monotone = 1, + Humanist = 2, + Geometric = 3, + Swiss = 4, + Typewriter = 5, //6-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } slabSerifs; struct FreeformSerifs { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Modern, 1)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Modern = 1, //2-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } freeformSerifs; struct SansSerif { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((IBMNeoGrotesqueGothic, 1)) - ((Humanist, 2)) - ((LowXRoundGeometric, 3)) - ((HighXRoundGeometric, 4)) - ((NeoGrotesqueGothic, 5)) - ((ModifiedNeoGrotesqueGothic, 6)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + IBMNeoGrotesqueGothic = 1, + Humanist = 2, + LowXRoundGeometric = 3, + HighXRoundGeometric = 4, + NeoGrotesqueGothic = 5, + ModifiedNeoGrotesqueGothic = 6, //7-8 reserved for future use - ((TypewriterGothic, 9)) - ((Matrix, 10)) + TypewriterGothic = 9, + Matrix = 10, //11-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } sansSerif; struct Ornamentals { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Engraver, 1)) - ((BlackLetter, 2)) - ((Decorative, 3)) - ((ThreeDimensional, 4)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Engraver = 1, + BlackLetter = 2, + Decorative = 3, + ThreeDimensional = 4, //5-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } ornamentals; struct Scripts { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) - ((Uncial, 1)) - ((Brush_Joined, 2)) - ((Formal_Joined, 3)) - ((Monotone_Joined, 4)) - ((Calligraphic, 5)) - ((Brush_Unjoined, 6)) - ((Formal_Unjoined, 7)) - ((Monotone_Unjoined, 8)) + enum Value : SK_OT_BYTE { + NoClassification = 0, + Uncial = 1, + Brush_Joined = 2, + Formal_Joined = 3, + Monotone_Joined = 4, + Calligraphic = 5, + Brush_Unjoined = 6, + Formal_Unjoined = 7, + Monotone_Unjoined = 8, //9-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } scripts; struct Symbolic { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoClassification, 0)) + enum Value : SK_OT_BYTE { + NoClassification = 0, //1-2 reserved for future use - ((MixedSerif, 3)) + MixedSerif = 3, //4-5 reserved for future use - ((OldstyleSerif, 6)) - ((NeoGrotesqueSansSerif, 7)) + OldstyleSerif = 6, + NeoGrotesqueSansSerif = 7, //8-14 reserved for future use - ((Miscellaneous, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + Miscellaneous = 15, + } value; } symbolic; } familySubClass; }; diff --git a/src/sfnt/SkOTTable_EBDT.h b/src/sfnt/SkOTTable_EBDT.h index 89d7a3abe2..856b59a832 100644 --- a/src/sfnt/SkOTTable_EBDT.h +++ b/src/sfnt/SkOTTable_EBDT.h @@ -12,7 +12,6 @@ #include "SkOTTableTypes.h" #include "SkOTTable_head.h" #include "SkOTTable_loca.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) diff --git a/src/sfnt/SkOTTable_EBLC.h b/src/sfnt/SkOTTable_EBLC.h index 845418d3e4..d77dc137f7 100644 --- a/src/sfnt/SkOTTable_EBLC.h +++ b/src/sfnt/SkOTTable_EBLC.h @@ -11,7 +11,6 @@ #include "SkEndian.h" #include "SkOTTable_EBDT.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -54,13 +53,12 @@ struct SkOTTableEmbeddedBitmapLocation { SK_OT_BYTE ppemX; //horizontal pixels per Em SK_OT_BYTE ppemY; //vertical pixels per Em struct BitDepth { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((BW, 1)) - ((Gray4, 2)) - ((Gray16, 4)) - ((Gray256, 8)) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_BYTE { + BW = 1, + Gray4 = 2, + Gray16 = 4, + Gray256 = 8, + }; SK_OT_BYTE value; } bitDepth; //the Microsoft rasterizer v.1.7 or greater supports union Flags { diff --git a/src/sfnt/SkOTTable_OS_2_V0.h b/src/sfnt/SkOTTable_OS_2_V0.h index 4dff413770..0c9f61198c 100644 --- a/src/sfnt/SkOTTable_OS_2_V0.h +++ b/src/sfnt/SkOTTable_OS_2_V0.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -24,33 +23,31 @@ struct SkOTTableOS2_V0 { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Thin, SkTEndian_SwapBE16(100))) - ((ExtraLight, SkTEndian_SwapBE16(200))) - ((Light, SkTEndian_SwapBE16(300))) - ((Normal, SkTEndian_SwapBE16(400))) - ((Medium, SkTEndian_SwapBE16(500))) - ((SemiBold, SkTEndian_SwapBE16(600))) - ((Bold, SkTEndian_SwapBE16(700))) - ((ExtraBold, SkTEndian_SwapBE16(800))) - ((Black, SkTEndian_SwapBE16(900))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_USHORT { + Thin = SkTEndian_SwapBE16(100), + ExtraLight = SkTEndian_SwapBE16(200), + Light = SkTEndian_SwapBE16(300), + Normal = SkTEndian_SwapBE16(400), + Medium = SkTEndian_SwapBE16(500), + SemiBold = SkTEndian_SwapBE16(600), + Bold = SkTEndian_SwapBE16(700), + ExtraBold = SkTEndian_SwapBE16(800), + Black = SkTEndian_SwapBE16(900), + }; SK_OT_USHORT value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_OS_2_V1.h b/src/sfnt/SkOTTable_OS_2_V1.h index 43e61d41cc..40cfdb64a0 100644 --- a/src/sfnt/SkOTTable_OS_2_V1.h +++ b/src/sfnt/SkOTTable_OS_2_V1.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -22,33 +21,31 @@ struct SkOTTableOS2_V1 { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Thin, SkTEndian_SwapBE16(100))) - ((ExtraLight, SkTEndian_SwapBE16(200))) - ((Light, SkTEndian_SwapBE16(300))) - ((Normal, SkTEndian_SwapBE16(400))) - ((Medium, SkTEndian_SwapBE16(500))) - ((SemiBold, SkTEndian_SwapBE16(600))) - ((Bold, SkTEndian_SwapBE16(700))) - ((ExtraBold, SkTEndian_SwapBE16(800))) - ((Black, SkTEndian_SwapBE16(900))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_USHORT { + Thin = SkTEndian_SwapBE16(100), + ExtraLight = SkTEndian_SwapBE16(200), + Light = SkTEndian_SwapBE16(300), + Normal = SkTEndian_SwapBE16(400), + Medium = SkTEndian_SwapBE16(500), + SemiBold = SkTEndian_SwapBE16(600), + Bold = SkTEndian_SwapBE16(700), + ExtraBold = SkTEndian_SwapBE16(800), + Black = SkTEndian_SwapBE16(900), + }; SK_OT_USHORT value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_OS_2_V2.h b/src/sfnt/SkOTTable_OS_2_V2.h index 30ad016790..080bf95d92 100644 --- a/src/sfnt/SkOTTable_OS_2_V2.h +++ b/src/sfnt/SkOTTable_OS_2_V2.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -22,32 +21,31 @@ struct SkOTTableOS2_V2 { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Thin, SkTEndian_SwapBE16(100))) - ((ExtraLight, SkTEndian_SwapBE16(200))) - ((Light, SkTEndian_SwapBE16(300))) - ((Normal, SkTEndian_SwapBE16(400))) - ((Medium, SkTEndian_SwapBE16(500))) - ((SemiBold, SkTEndian_SwapBE16(600))) - ((Bold, SkTEndian_SwapBE16(700))) - ((ExtraBold, SkTEndian_SwapBE16(800))) - ((Black, SkTEndian_SwapBE16(900))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_USHORT { + Thin = SkTEndian_SwapBE16(100), + ExtraLight = SkTEndian_SwapBE16(200), + Light = SkTEndian_SwapBE16(300), + Normal = SkTEndian_SwapBE16(400), + Medium = SkTEndian_SwapBE16(500), + SemiBold = SkTEndian_SwapBE16(600), + Bold = SkTEndian_SwapBE16(700), + ExtraBold = SkTEndian_SwapBE16(800), + Black = SkTEndian_SwapBE16(900), + }; SK_OT_USHORT value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))), - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_OS_2_V3.h b/src/sfnt/SkOTTable_OS_2_V3.h index 00df2891f1..e77c46606b 100644 --- a/src/sfnt/SkOTTable_OS_2_V3.h +++ b/src/sfnt/SkOTTable_OS_2_V3.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -22,33 +21,31 @@ struct SkOTTableOS2_V3 { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Thin, SkTEndian_SwapBE16(100))) - ((ExtraLight, SkTEndian_SwapBE16(200))) - ((Light, SkTEndian_SwapBE16(300))) - ((Normal, SkTEndian_SwapBE16(400))) - ((Medium, SkTEndian_SwapBE16(500))) - ((SemiBold, SkTEndian_SwapBE16(600))) - ((Bold, SkTEndian_SwapBE16(700))) - ((ExtraBold, SkTEndian_SwapBE16(800))) - ((Black, SkTEndian_SwapBE16(900))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_USHORT { + Thin = SkTEndian_SwapBE16(100), + ExtraLight = SkTEndian_SwapBE16(200), + Light = SkTEndian_SwapBE16(300), + Normal = SkTEndian_SwapBE16(400), + Medium = SkTEndian_SwapBE16(500), + SemiBold = SkTEndian_SwapBE16(600), + Bold = SkTEndian_SwapBE16(700), + ExtraBold = SkTEndian_SwapBE16(800), + Black = SkTEndian_SwapBE16(900), + }; SK_OT_USHORT value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_OS_2_V4.h b/src/sfnt/SkOTTable_OS_2_V4.h index 3d22a1b2d1..0dbb21ff52 100644 --- a/src/sfnt/SkOTTable_OS_2_V4.h +++ b/src/sfnt/SkOTTable_OS_2_V4.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -22,33 +21,31 @@ struct SkOTTableOS2_V4 { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Thin, SkTEndian_SwapBE16(100))) - ((ExtraLight, SkTEndian_SwapBE16(200))) - ((Light, SkTEndian_SwapBE16(300))) - ((Normal, SkTEndian_SwapBE16(400))) - ((Medium, SkTEndian_SwapBE16(500))) - ((SemiBold, SkTEndian_SwapBE16(600))) - ((Bold, SkTEndian_SwapBE16(700))) - ((ExtraBold, SkTEndian_SwapBE16(800))) - ((Black, SkTEndian_SwapBE16(900))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_USHORT { + Thin = SkTEndian_SwapBE16(100), + ExtraLight = SkTEndian_SwapBE16(200), + Light = SkTEndian_SwapBE16(300), + Normal = SkTEndian_SwapBE16(400), + Medium = SkTEndian_SwapBE16(500), + SemiBold = SkTEndian_SwapBE16(600), + Bold = SkTEndian_SwapBE16(700), + ExtraBold = SkTEndian_SwapBE16(800), + Black = SkTEndian_SwapBE16(900), + }; SK_OT_USHORT value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_OS_2_VA.h b/src/sfnt/SkOTTable_OS_2_VA.h index 1dc95b5af7..63b904c5b0 100644 --- a/src/sfnt/SkOTTable_OS_2_VA.h +++ b/src/sfnt/SkOTTable_OS_2_VA.h @@ -12,7 +12,6 @@ #include "SkIBMFamilyClass.h" #include "SkOTTableTypes.h" #include "SkPanose.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -25,32 +24,32 @@ struct SkOTTableOS2_VA { SK_OT_SHORT xAvgCharWidth; struct WeightClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraLight, SkTEndian_SwapBE16(1))) - ((ExtraLight, SkTEndian_SwapBE16(2))) - ((Light, SkTEndian_SwapBE16(3))) - ((SemiLight, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiBold, SkTEndian_SwapBE16(6))) - ((Bold, SkTEndian_SwapBE16(7))) - ((ExtraBold, SkTEndian_SwapBE16(8))) - ((UltraBold, SkTEndian_SwapBE16(9))) + enum Value : SK_OT_USHORT { + UltraLight = SkTEndian_SwapBE16(1), + ExtraLight = SkTEndian_SwapBE16(2), + Light = SkTEndian_SwapBE16(3), + SemiLight = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiBold = SkTEndian_SwapBE16(6), + Bold = SkTEndian_SwapBE16(7), + ExtraBold = SkTEndian_SwapBE16(8), + UltraBold = SkTEndian_SwapBE16(9), SK_SEQ_END, - (value)SK_SEQ_END) + } value; } usWeightClass; struct WidthClass { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((UltraCondensed, SkTEndian_SwapBE16(1))) - ((ExtraCondensed, SkTEndian_SwapBE16(2))) - ((Condensed, SkTEndian_SwapBE16(3))) - ((SemiCondensed, SkTEndian_SwapBE16(4))) - ((Medium, SkTEndian_SwapBE16(5))) - ((SemiExpanded, SkTEndian_SwapBE16(6))) - ((Expanded, SkTEndian_SwapBE16(7))) - ((ExtraExpanded, SkTEndian_SwapBE16(8))) - ((UltraExpanded, SkTEndian_SwapBE16(9))) + enum Value : SK_OT_USHORT { + UltraCondensed = SkTEndian_SwapBE16(1), + ExtraCondensed = SkTEndian_SwapBE16(2), + Condensed = SkTEndian_SwapBE16(3), + SemiCondensed = SkTEndian_SwapBE16(4), + Medium = SkTEndian_SwapBE16(5), + SemiExpanded = SkTEndian_SwapBE16(6), + Expanded = SkTEndian_SwapBE16(7), + ExtraExpanded = SkTEndian_SwapBE16(8), + UltraExpanded = SkTEndian_SwapBE16(9), SK_SEQ_END, - (value)SK_SEQ_END) + } value; } usWidthClass; union Type { struct Field { diff --git a/src/sfnt/SkOTTable_gasp.h b/src/sfnt/SkOTTable_gasp.h index c6d8aa6550..5af590e5cc 100644 --- a/src/sfnt/SkOTTable_gasp.h +++ b/src/sfnt/SkOTTable_gasp.h @@ -10,7 +10,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) diff --git a/src/sfnt/SkOTTable_glyf.h b/src/sfnt/SkOTTable_glyf.h index ac34d7b816..77bd982b0e 100644 --- a/src/sfnt/SkOTTable_glyf.h +++ b/src/sfnt/SkOTTable_glyf.h @@ -12,7 +12,6 @@ #include "SkOTTableTypes.h" #include "SkOTTable_head.h" #include "SkOTTable_loca.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) diff --git a/src/sfnt/SkOTTable_head.h b/src/sfnt/SkOTTable_head.h index 52970b0f3b..0011eead80 100644 --- a/src/sfnt/SkOTTable_head.h +++ b/src/sfnt/SkOTTable_head.h @@ -10,7 +10,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -116,27 +115,24 @@ struct SkOTTableHead { } macStyle; SK_OT_USHORT lowestRecPPEM; struct FontDirectionHint { - SK_TYPED_ENUM(Value, SK_OT_SHORT, - ((FullyMixedDirectionalGlyphs, SkTEndian_SwapBE16(0))) - ((OnlyStronglyLTR, SkTEndian_SwapBE16(1))) - ((StronglyLTR, SkTEndian_SwapBE16(2))) - ((OnlyStronglyRTL, static_cast<SK_OT_SHORT>(SkTEndian_SwapBE16((uint16_t)-1)))) - ((StronglyRTL, static_cast<SK_OT_SHORT>(SkTEndian_SwapBE16((uint16_t)-2)))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_SHORT { + FullyMixedDirectionalGlyphs = SkTEndian_SwapBE16(0), + OnlyStronglyLTR = SkTEndian_SwapBE16(1), + StronglyLTR = SkTEndian_SwapBE16(2), + OnlyStronglyRTL = static_cast<SK_OT_SHORT>(SkTEndian_SwapBE16((uint16_t)-1)), + StronglyRTL = static_cast<SK_OT_SHORT>(SkTEndian_SwapBE16((uint16_t)-2)), + } value; } fontDirectionHint; struct IndexToLocFormat { - SK_TYPED_ENUM(Value, SK_OT_SHORT, - ((ShortOffsets, SkTEndian_SwapBE16(0))) - ((LongOffsets, SkTEndian_SwapBE16(1))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_SHORT { + ShortOffsets = SkTEndian_SwapBE16(0), + LongOffsets = SkTEndian_SwapBE16(1), + } value; } indexToLocFormat; struct GlyphDataFormat { - SK_TYPED_ENUM(Value, SK_OT_SHORT, - ((CurrentFormat, SkTEndian_SwapBE16(0))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_SHORT { + CurrentFormat = SkTEndian_SwapBE16(0), + } value; } glyphDataFormat; }; diff --git a/src/sfnt/SkOTTable_hhea.h b/src/sfnt/SkOTTable_hhea.h index a3b9cad725..76b15e276d 100644 --- a/src/sfnt/SkOTTable_hhea.h +++ b/src/sfnt/SkOTTable_hhea.h @@ -10,7 +10,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -38,10 +37,9 @@ struct SkOTTableHorizontalHeader { SK_OT_SHORT Reserved28; SK_OT_SHORT Reserved30; struct MetricDataFormat { - SK_TYPED_ENUM(Value, SK_OT_SHORT, - ((CurrentFormat, SkTEndian_SwapBE16(0))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_SHORT { + CurrentFormat = SkTEndian_SwapBE16(0), + } value; } metricDataFormat; SK_OT_USHORT numberOfHMetrics; }; diff --git a/src/sfnt/SkOTTable_maxp_TT.h b/src/sfnt/SkOTTable_maxp_TT.h index 1fdd0edc83..d45999723c 100644 --- a/src/sfnt/SkOTTable_maxp_TT.h +++ b/src/sfnt/SkOTTable_maxp_TT.h @@ -10,7 +10,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -24,11 +23,10 @@ struct SkOTTableMaximumProfile_TT { SK_OT_USHORT maxCompositePoints; SK_OT_USHORT maxCompositeContours; struct MaxZones { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((DoesNotUseTwilightZone, SkTEndian_SwapBE16(1))) - ((UsesTwilightZone, SkTEndian_SwapBE16(2))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + DoesNotUseTwilightZone = SkTEndian_SwapBE16(1), + UsesTwilightZone = SkTEndian_SwapBE16(2), + } value; } maxZones; SK_OT_USHORT maxTwilightPoints; SK_OT_USHORT maxStorage; diff --git a/src/sfnt/SkOTTable_name.h b/src/sfnt/SkOTTable_name.h index 6b25a2d1c8..4c1ce5bb6c 100644 --- a/src/sfnt/SkOTTable_name.h +++ b/src/sfnt/SkOTTable_name.h @@ -11,7 +11,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" #include "SkString.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -36,14 +35,13 @@ struct SkOTTableName { struct Record { /** The platform ID specifies how to interpret the encoding and language ID. */ struct PlatformID { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Unicode, SkTEndian_SwapBE16(0))) - ((Macintosh, SkTEndian_SwapBE16(1))) - ((ISO, SkTEndian_SwapBE16(2))) // Deprecated, use Unicode instead. - ((Windows, SkTEndian_SwapBE16(3))) - ((Custom, SkTEndian_SwapBE16(4))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + Unicode = SkTEndian_SwapBE16(0), + Macintosh = SkTEndian_SwapBE16(1), + ISO = SkTEndian_SwapBE16(2), // Deprecated, use Unicode instead. + Windows = SkTEndian_SwapBE16(3), + Custom = SkTEndian_SwapBE16(4), + } value; } platformID; union EncodingID { @@ -51,16 +49,15 @@ struct SkOTTableName { /** Always UTF-16BE. */ struct Unicode { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Unicode10, SkTEndian_SwapBE16(0))) - ((Unicode11, SkTEndian_SwapBE16(1))) - ((ISO10646, SkTEndian_SwapBE16(2))) //deprecated, use Unicode11 - ((Unicode20BMP, SkTEndian_SwapBE16(3))) - ((Unicode20, SkTEndian_SwapBE16(4))) - ((UnicodeVariationSequences, SkTEndian_SwapBE16(5))) - ((UnicodeFull, SkTEndian_SwapBE16(6))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + Unicode10 = SkTEndian_SwapBE16(0), + Unicode11 = SkTEndian_SwapBE16(1), + ISO10646 = SkTEndian_SwapBE16(2), //deprecated, use Unicode11 + Unicode20BMP = SkTEndian_SwapBE16(3), + Unicode20 = SkTEndian_SwapBE16(4), + UnicodeVariationSequences = SkTEndian_SwapBE16(5), + UnicodeFull = SkTEndian_SwapBE16(6), + } value; } unicode; /** These are Mac encodings, see http://www.unicode.org/Public/MAPPINGS/VENDORS/APPLE/ @@ -68,52 +65,50 @@ struct SkOTTableName { * Name table strings using PlatformID::Macintosh must use Roman. */ struct Macintosh { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Roman, SkTEndian_SwapBE16(0))) - ((Japanese, SkTEndian_SwapBE16(1))) - ((ChineseTraditional, SkTEndian_SwapBE16(2))) - ((Korean, SkTEndian_SwapBE16(3))) - ((Arabic, SkTEndian_SwapBE16(4))) - ((Hebrew, SkTEndian_SwapBE16(5))) - ((Greek, SkTEndian_SwapBE16(6))) - ((Russian, SkTEndian_SwapBE16(7))) - ((RSymbol, SkTEndian_SwapBE16(8))) - ((Devanagari, SkTEndian_SwapBE16(9))) - ((Gurmukhi, SkTEndian_SwapBE16(10))) - ((Gujarati, SkTEndian_SwapBE16(11))) - ((Oriya, SkTEndian_SwapBE16(12))) - ((Bengali, SkTEndian_SwapBE16(13))) - ((Tamil, SkTEndian_SwapBE16(14))) - ((Telugu, SkTEndian_SwapBE16(15))) - ((Kannada, SkTEndian_SwapBE16(16))) - ((Malayalam, SkTEndian_SwapBE16(17))) - ((Sinhalese, SkTEndian_SwapBE16(18))) - ((Burmese, SkTEndian_SwapBE16(19))) - ((Khmer, SkTEndian_SwapBE16(20))) - ((Thai, SkTEndian_SwapBE16(21))) - ((Laotian, SkTEndian_SwapBE16(22))) - ((Georgian, SkTEndian_SwapBE16(23))) - ((Armenian, SkTEndian_SwapBE16(24))) - ((ChineseSimplified, SkTEndian_SwapBE16(25))) - ((Tibetan, SkTEndian_SwapBE16(26))) - ((Mongolian, SkTEndian_SwapBE16(27))) - ((Geez, SkTEndian_SwapBE16(28))) - ((Slavic, SkTEndian_SwapBE16(29))) - ((Vietnamese, SkTEndian_SwapBE16(30))) - ((Sindhi, SkTEndian_SwapBE16(31))) - ((Uninterpreted, SkTEndian_SwapBE16(32))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + Roman = SkTEndian_SwapBE16(0), + Japanese = SkTEndian_SwapBE16(1), + ChineseTraditional = SkTEndian_SwapBE16(2), + Korean = SkTEndian_SwapBE16(3), + Arabic = SkTEndian_SwapBE16(4), + Hebrew = SkTEndian_SwapBE16(5), + Greek = SkTEndian_SwapBE16(6), + Russian = SkTEndian_SwapBE16(7), + RSymbol = SkTEndian_SwapBE16(8), + Devanagari = SkTEndian_SwapBE16(9), + Gurmukhi = SkTEndian_SwapBE16(10), + Gujarati = SkTEndian_SwapBE16(11), + Oriya = SkTEndian_SwapBE16(12), + Bengali = SkTEndian_SwapBE16(13), + Tamil = SkTEndian_SwapBE16(14), + Telugu = SkTEndian_SwapBE16(15), + Kannada = SkTEndian_SwapBE16(16), + Malayalam = SkTEndian_SwapBE16(17), + Sinhalese = SkTEndian_SwapBE16(18), + Burmese = SkTEndian_SwapBE16(19), + Khmer = SkTEndian_SwapBE16(20), + Thai = SkTEndian_SwapBE16(21), + Laotian = SkTEndian_SwapBE16(22), + Georgian = SkTEndian_SwapBE16(23), + Armenian = SkTEndian_SwapBE16(24), + ChineseSimplified = SkTEndian_SwapBE16(25), + Tibetan = SkTEndian_SwapBE16(26), + Mongolian = SkTEndian_SwapBE16(27), + Geez = SkTEndian_SwapBE16(28), + Slavic = SkTEndian_SwapBE16(29), + Vietnamese = SkTEndian_SwapBE16(30), + Sindhi = SkTEndian_SwapBE16(31), + Uninterpreted = SkTEndian_SwapBE16(32), + } value; } macintosh; /** Deprecated, use Unicode instead. */ struct ISO { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((ASCII7, SkTEndian_SwapBE16(0))) - ((ISO10646, SkTEndian_SwapBE16(1))) - ((ISO88591, SkTEndian_SwapBE16(2))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + ASCII7 = SkTEndian_SwapBE16(0), + ISO10646 = SkTEndian_SwapBE16(1), + ISO88591 = SkTEndian_SwapBE16(2), + } value; } iso; /** Name table strings using PlatformID::Windows must use Symbol, UnicodeBMPUCS2, or @@ -121,17 +116,16 @@ struct SkOTTableName { * UTF-16BE. */ struct Windows { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Symbol, SkTEndian_SwapBE16(0))) // UCS2-BE, but don't use this font to display it's own name. - ((UnicodeBMPUCS2, SkTEndian_SwapBE16(1))) // UCS2-BE, Windows default - ((ShiftJIS, SkTEndian_SwapBE16(2))) - ((PRC, SkTEndian_SwapBE16(3))) - ((Big5, SkTEndian_SwapBE16(4))) - ((Wansung, SkTEndian_SwapBE16(5))) - ((Johab, SkTEndian_SwapBE16(6))) - ((UnicodeUCS4, SkTEndian_SwapBE16(10))) // UTF-16BE. It means UCS4 in charmaps. - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + Symbol = SkTEndian_SwapBE16(0), // UCS2-BE, but don't use this font to display it's own name. + UnicodeBMPUCS2 = SkTEndian_SwapBE16(1), // UCS2-BE, Windows default + ShiftJIS = SkTEndian_SwapBE16(2), + PRC = SkTEndian_SwapBE16(3), + Big5 = SkTEndian_SwapBE16(4), + Wansung = SkTEndian_SwapBE16(5), + Johab = SkTEndian_SwapBE16(6), + UnicodeUCS4 = SkTEndian_SwapBE16(10), // UTF-16BE. It means UCS4 in charmaps. + } value; } windows; } encodingID; @@ -149,341 +143,339 @@ struct SkOTTableName { * Apple now uses BCP 47 (post OSX10.4), so there will be no new entries. */ struct Macintosh { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((English, SkTEndian_SwapBE16(0))) - ((French, SkTEndian_SwapBE16(1))) - ((German, SkTEndian_SwapBE16(2))) - ((Italian, SkTEndian_SwapBE16(3))) - ((Dutch, SkTEndian_SwapBE16(4))) - ((Swedish, SkTEndian_SwapBE16(5))) - ((Spanish, SkTEndian_SwapBE16(6))) - ((Danish, SkTEndian_SwapBE16(7))) - ((Portuguese, SkTEndian_SwapBE16(8))) - ((Norwegian, SkTEndian_SwapBE16(9))) - ((Hebrew, SkTEndian_SwapBE16(10))) - ((Japanese, SkTEndian_SwapBE16(11))) - ((Arabic, SkTEndian_SwapBE16(12))) - ((Finnish, SkTEndian_SwapBE16(13))) - ((Greek, SkTEndian_SwapBE16(14))) - ((Icelandic, SkTEndian_SwapBE16(15))) - ((Maltese, SkTEndian_SwapBE16(16))) - ((Turkish, SkTEndian_SwapBE16(17))) - ((Croatian, SkTEndian_SwapBE16(18))) - ((ChineseTraditional, SkTEndian_SwapBE16(19))) - ((Urdu, SkTEndian_SwapBE16(20))) - ((Hindi, SkTEndian_SwapBE16(21))) - ((Thai, SkTEndian_SwapBE16(22))) - ((Korean, SkTEndian_SwapBE16(23))) - ((Lithuanian, SkTEndian_SwapBE16(24))) - ((Polish, SkTEndian_SwapBE16(25))) - ((Hungarian, SkTEndian_SwapBE16(26))) - ((Estonian, SkTEndian_SwapBE16(27))) - ((Latvian, SkTEndian_SwapBE16(28))) - ((Sami, SkTEndian_SwapBE16(29))) - ((Faroese, SkTEndian_SwapBE16(30))) - ((Farsi_Persian, SkTEndian_SwapBE16(31))) - ((Russian, SkTEndian_SwapBE16(32))) - ((ChineseSimplified, SkTEndian_SwapBE16(33))) - ((Flemish, SkTEndian_SwapBE16(34))) - ((IrishGaelic, SkTEndian_SwapBE16(35))) - ((Albanian, SkTEndian_SwapBE16(36))) - ((Romanian, SkTEndian_SwapBE16(37))) - ((Czech, SkTEndian_SwapBE16(38))) - ((Slovak, SkTEndian_SwapBE16(39))) - ((Slovenian, SkTEndian_SwapBE16(40))) - ((Yiddish, SkTEndian_SwapBE16(41))) - ((Serbian, SkTEndian_SwapBE16(42))) - ((Macedonian, SkTEndian_SwapBE16(43))) - ((Bulgarian, SkTEndian_SwapBE16(44))) - ((Ukrainian, SkTEndian_SwapBE16(45))) - ((Byelorussian, SkTEndian_SwapBE16(46))) - ((Uzbek, SkTEndian_SwapBE16(47))) - ((Kazakh, SkTEndian_SwapBE16(48))) - ((AzerbaijaniCyrillic, SkTEndian_SwapBE16(49))) - ((AzerbaijaniArabic, SkTEndian_SwapBE16(50))) - ((Armenian, SkTEndian_SwapBE16(51))) - ((Georgian, SkTEndian_SwapBE16(52))) - ((Moldavian, SkTEndian_SwapBE16(53))) - ((Kirghiz, SkTEndian_SwapBE16(54))) - ((Tajiki, SkTEndian_SwapBE16(55))) - ((Turkmen, SkTEndian_SwapBE16(56))) - ((MongolianTraditional, SkTEndian_SwapBE16(57))) - ((MongolianCyrillic, SkTEndian_SwapBE16(58))) - ((Pashto, SkTEndian_SwapBE16(59))) - ((Kurdish, SkTEndian_SwapBE16(60))) - ((Kashmiri, SkTEndian_SwapBE16(61))) - ((Sindhi, SkTEndian_SwapBE16(62))) - ((Tibetan, SkTEndian_SwapBE16(63))) - ((Nepali, SkTEndian_SwapBE16(64))) - ((Sanskrit, SkTEndian_SwapBE16(65))) - ((Marathi, SkTEndian_SwapBE16(66))) - ((Bengali, SkTEndian_SwapBE16(67))) - ((Assamese, SkTEndian_SwapBE16(68))) - ((Gujarati, SkTEndian_SwapBE16(69))) - ((Punjabi, SkTEndian_SwapBE16(70))) - ((Oriya, SkTEndian_SwapBE16(71))) - ((Malayalam, SkTEndian_SwapBE16(72))) - ((Kannada, SkTEndian_SwapBE16(73))) - ((Tamil, SkTEndian_SwapBE16(74))) - ((Telugu, SkTEndian_SwapBE16(75))) - ((Sinhalese, SkTEndian_SwapBE16(76))) - ((Burmese, SkTEndian_SwapBE16(77))) - ((Khmer, SkTEndian_SwapBE16(78))) - ((Lao, SkTEndian_SwapBE16(79))) - ((Vietnamese, SkTEndian_SwapBE16(80))) - ((Indonesian, SkTEndian_SwapBE16(81))) - ((Tagalong, SkTEndian_SwapBE16(82))) - ((MalayRoman, SkTEndian_SwapBE16(83))) - ((MalayArabic, SkTEndian_SwapBE16(84))) - ((Amharic, SkTEndian_SwapBE16(85))) - ((Tigrinya, SkTEndian_SwapBE16(86))) - ((Galla, SkTEndian_SwapBE16(87))) - ((Somali, SkTEndian_SwapBE16(88))) - ((Swahili, SkTEndian_SwapBE16(89))) - ((Kinyarwanda_Ruanda, SkTEndian_SwapBE16(90))) - ((Rundi, SkTEndian_SwapBE16(91))) - ((Nyanja_Chewa, SkTEndian_SwapBE16(92))) - ((Malagasy, SkTEndian_SwapBE16(93))) - ((Esperanto, SkTEndian_SwapBE16(94))) - ((Welsh, SkTEndian_SwapBE16(128))) - ((Basque, SkTEndian_SwapBE16(129))) - ((Catalan, SkTEndian_SwapBE16(130))) - ((Latin, SkTEndian_SwapBE16(131))) - ((Quenchua, SkTEndian_SwapBE16(132))) - ((Guarani, SkTEndian_SwapBE16(133))) - ((Aymara, SkTEndian_SwapBE16(134))) - ((Tatar, SkTEndian_SwapBE16(135))) - ((Uighur, SkTEndian_SwapBE16(136))) - ((Dzongkha, SkTEndian_SwapBE16(137))) - ((JavaneseRoman, SkTEndian_SwapBE16(138))) - ((SundaneseRoman, SkTEndian_SwapBE16(139))) - ((Galician, SkTEndian_SwapBE16(140))) - ((Afrikaans, SkTEndian_SwapBE16(141))) - ((Breton, SkTEndian_SwapBE16(142))) - ((Inuktitut, SkTEndian_SwapBE16(143))) - ((ScottishGaelic, SkTEndian_SwapBE16(144))) - ((ManxGaelic, SkTEndian_SwapBE16(145))) - ((IrishGaelicWithLenition, SkTEndian_SwapBE16(146))) - ((Tongan, SkTEndian_SwapBE16(147))) - ((GreekPolytonic, SkTEndian_SwapBE16(148))) - ((Greenlandic, SkTEndian_SwapBE16(149))) - ((AzerbaijaniRoman, SkTEndian_SwapBE16(150))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + English = SkTEndian_SwapBE16(0), + French = SkTEndian_SwapBE16(1), + German = SkTEndian_SwapBE16(2), + Italian = SkTEndian_SwapBE16(3), + Dutch = SkTEndian_SwapBE16(4), + Swedish = SkTEndian_SwapBE16(5), + Spanish = SkTEndian_SwapBE16(6), + Danish = SkTEndian_SwapBE16(7), + Portuguese = SkTEndian_SwapBE16(8), + Norwegian = SkTEndian_SwapBE16(9), + Hebrew = SkTEndian_SwapBE16(10), + Japanese = SkTEndian_SwapBE16(11), + Arabic = SkTEndian_SwapBE16(12), + Finnish = SkTEndian_SwapBE16(13), + Greek = SkTEndian_SwapBE16(14), + Icelandic = SkTEndian_SwapBE16(15), + Maltese = SkTEndian_SwapBE16(16), + Turkish = SkTEndian_SwapBE16(17), + Croatian = SkTEndian_SwapBE16(18), + ChineseTraditional = SkTEndian_SwapBE16(19), + Urdu = SkTEndian_SwapBE16(20), + Hindi = SkTEndian_SwapBE16(21), + Thai = SkTEndian_SwapBE16(22), + Korean = SkTEndian_SwapBE16(23), + Lithuanian = SkTEndian_SwapBE16(24), + Polish = SkTEndian_SwapBE16(25), + Hungarian = SkTEndian_SwapBE16(26), + Estonian = SkTEndian_SwapBE16(27), + Latvian = SkTEndian_SwapBE16(28), + Sami = SkTEndian_SwapBE16(29), + Faroese = SkTEndian_SwapBE16(30), + Farsi_Persian = SkTEndian_SwapBE16(31), + Russian = SkTEndian_SwapBE16(32), + ChineseSimplified = SkTEndian_SwapBE16(33), + Flemish = SkTEndian_SwapBE16(34), + IrishGaelic = SkTEndian_SwapBE16(35), + Albanian = SkTEndian_SwapBE16(36), + Romanian = SkTEndian_SwapBE16(37), + Czech = SkTEndian_SwapBE16(38), + Slovak = SkTEndian_SwapBE16(39), + Slovenian = SkTEndian_SwapBE16(40), + Yiddish = SkTEndian_SwapBE16(41), + Serbian = SkTEndian_SwapBE16(42), + Macedonian = SkTEndian_SwapBE16(43), + Bulgarian = SkTEndian_SwapBE16(44), + Ukrainian = SkTEndian_SwapBE16(45), + Byelorussian = SkTEndian_SwapBE16(46), + Uzbek = SkTEndian_SwapBE16(47), + Kazakh = SkTEndian_SwapBE16(48), + AzerbaijaniCyrillic = SkTEndian_SwapBE16(49), + AzerbaijaniArabic = SkTEndian_SwapBE16(50), + Armenian = SkTEndian_SwapBE16(51), + Georgian = SkTEndian_SwapBE16(52), + Moldavian = SkTEndian_SwapBE16(53), + Kirghiz = SkTEndian_SwapBE16(54), + Tajiki = SkTEndian_SwapBE16(55), + Turkmen = SkTEndian_SwapBE16(56), + MongolianTraditional = SkTEndian_SwapBE16(57), + MongolianCyrillic = SkTEndian_SwapBE16(58), + Pashto = SkTEndian_SwapBE16(59), + Kurdish = SkTEndian_SwapBE16(60), + Kashmiri = SkTEndian_SwapBE16(61), + Sindhi = SkTEndian_SwapBE16(62), + Tibetan = SkTEndian_SwapBE16(63), + Nepali = SkTEndian_SwapBE16(64), + Sanskrit = SkTEndian_SwapBE16(65), + Marathi = SkTEndian_SwapBE16(66), + Bengali = SkTEndian_SwapBE16(67), + Assamese = SkTEndian_SwapBE16(68), + Gujarati = SkTEndian_SwapBE16(69), + Punjabi = SkTEndian_SwapBE16(70), + Oriya = SkTEndian_SwapBE16(71), + Malayalam = SkTEndian_SwapBE16(72), + Kannada = SkTEndian_SwapBE16(73), + Tamil = SkTEndian_SwapBE16(74), + Telugu = SkTEndian_SwapBE16(75), + Sinhalese = SkTEndian_SwapBE16(76), + Burmese = SkTEndian_SwapBE16(77), + Khmer = SkTEndian_SwapBE16(78), + Lao = SkTEndian_SwapBE16(79), + Vietnamese = SkTEndian_SwapBE16(80), + Indonesian = SkTEndian_SwapBE16(81), + Tagalong = SkTEndian_SwapBE16(82), + MalayRoman = SkTEndian_SwapBE16(83), + MalayArabic = SkTEndian_SwapBE16(84), + Amharic = SkTEndian_SwapBE16(85), + Tigrinya = SkTEndian_SwapBE16(86), + Galla = SkTEndian_SwapBE16(87), + Somali = SkTEndian_SwapBE16(88), + Swahili = SkTEndian_SwapBE16(89), + Kinyarwanda_Ruanda = SkTEndian_SwapBE16(90), + Rundi = SkTEndian_SwapBE16(91), + Nyanja_Chewa = SkTEndian_SwapBE16(92), + Malagasy = SkTEndian_SwapBE16(93), + Esperanto = SkTEndian_SwapBE16(94), + Welsh = SkTEndian_SwapBE16(128), + Basque = SkTEndian_SwapBE16(129), + Catalan = SkTEndian_SwapBE16(130), + Latin = SkTEndian_SwapBE16(131), + Quenchua = SkTEndian_SwapBE16(132), + Guarani = SkTEndian_SwapBE16(133), + Aymara = SkTEndian_SwapBE16(134), + Tatar = SkTEndian_SwapBE16(135), + Uighur = SkTEndian_SwapBE16(136), + Dzongkha = SkTEndian_SwapBE16(137), + JavaneseRoman = SkTEndian_SwapBE16(138), + SundaneseRoman = SkTEndian_SwapBE16(139), + Galician = SkTEndian_SwapBE16(140), + Afrikaans = SkTEndian_SwapBE16(141), + Breton = SkTEndian_SwapBE16(142), + Inuktitut = SkTEndian_SwapBE16(143), + ScottishGaelic = SkTEndian_SwapBE16(144), + ManxGaelic = SkTEndian_SwapBE16(145), + IrishGaelicWithLenition = SkTEndian_SwapBE16(146), + Tongan = SkTEndian_SwapBE16(147), + GreekPolytonic = SkTEndian_SwapBE16(148), + Greenlandic = SkTEndian_SwapBE16(149), + AzerbaijaniRoman = SkTEndian_SwapBE16(150), + } value; } macintosh; /** These are known as LCIDs. * On Windows the current set can be had from EnumSystemLocalesEx and LocaleNameToLCID. */ struct Windows { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((Afrikaans_SouthAfrica, SkTEndian_SwapBE16(0x0436))) - ((Albanian_Albania, SkTEndian_SwapBE16(0x041C))) - ((Alsatian_France, SkTEndian_SwapBE16(0x0484))) - ((Amharic_Ethiopia, SkTEndian_SwapBE16(0x045E))) - ((Arabic_Algeria, SkTEndian_SwapBE16(0x1401))) - ((Arabic_Bahrain, SkTEndian_SwapBE16(0x3C01))) - ((Arabic_Egypt, SkTEndian_SwapBE16(0x0C01))) - ((Arabic_Iraq, SkTEndian_SwapBE16(0x0801))) - ((Arabic_Jordan, SkTEndian_SwapBE16(0x2C01))) - ((Arabic_Kuwait, SkTEndian_SwapBE16(0x3401))) - ((Arabic_Lebanon, SkTEndian_SwapBE16(0x3001))) - ((Arabic_Libya, SkTEndian_SwapBE16(0x1001))) - ((Arabic_Morocco, SkTEndian_SwapBE16(0x1801))) - ((Arabic_Oman, SkTEndian_SwapBE16(0x2001))) - ((Arabic_Qatar, SkTEndian_SwapBE16(0x4001))) - ((Arabic_SaudiArabia, SkTEndian_SwapBE16(0x0401))) - ((Arabic_Syria, SkTEndian_SwapBE16(0x2801))) - ((Arabic_Tunisia, SkTEndian_SwapBE16(0x1C01))) - ((Arabic_UAE, SkTEndian_SwapBE16(0x3801))) - ((Arabic_Yemen, SkTEndian_SwapBE16(0x2401))) - ((Armenian_Armenia, SkTEndian_SwapBE16(0x042B))) - ((Assamese_India, SkTEndian_SwapBE16(0x044D))) - ((AzeriCyrillic_Azerbaijan, SkTEndian_SwapBE16(0x082C))) - ((AzeriLatin_Azerbaijan, SkTEndian_SwapBE16(0x042C))) - ((Bashkir_Russia, SkTEndian_SwapBE16(0x046D))) - ((Basque_Basque, SkTEndian_SwapBE16(0x042D))) - ((Belarusian_Belarus, SkTEndian_SwapBE16(0x0423))) - ((Bengali_Bangladesh, SkTEndian_SwapBE16(0x0845))) - ((Bengali_India, SkTEndian_SwapBE16(0x0445))) - ((BosnianCyrillic_BosniaAndHerzegovina, SkTEndian_SwapBE16(0x201A))) - ((BosnianLatin_BosniaAndHerzegovina, SkTEndian_SwapBE16(0x141A))) - ((Breton_France, SkTEndian_SwapBE16(0x047E))) - ((Bulgarian_Bulgaria, SkTEndian_SwapBE16(0x0402))) - ((Catalan_Catalan, SkTEndian_SwapBE16(0x0403))) - ((Chinese_HongKongSAR, SkTEndian_SwapBE16(0x0C04))) - ((Chinese_MacaoSAR, SkTEndian_SwapBE16(0x1404))) - ((Chinese_PeoplesRepublicOfChina, SkTEndian_SwapBE16(0x0804))) - ((Chinese_Singapore, SkTEndian_SwapBE16(0x1004))) - ((Chinese_Taiwan, SkTEndian_SwapBE16(0x0404))) - ((Corsican_France, SkTEndian_SwapBE16(0x0483))) - ((Croatian_Croatia, SkTEndian_SwapBE16(0x041A))) - ((CroatianLatin_BosniaAndHerzegovina, SkTEndian_SwapBE16(0x101A))) - ((Czech_CzechRepublic, SkTEndian_SwapBE16(0x0405))) - ((Danish_Denmark, SkTEndian_SwapBE16(0x0406))) - ((Dari_Afghanistan, SkTEndian_SwapBE16(0x048C))) - ((Divehi_Maldives, SkTEndian_SwapBE16(0x0465))) - ((Dutch_Belgium, SkTEndian_SwapBE16(0x0813))) - ((Dutch_Netherlands, SkTEndian_SwapBE16(0x0413))) - ((English_Australia, SkTEndian_SwapBE16(0x0C09))) - ((English_Belize, SkTEndian_SwapBE16(0x2809))) - ((English_Canada, SkTEndian_SwapBE16(0x1009))) - ((English_Caribbean, SkTEndian_SwapBE16(0x2409))) - ((English_India, SkTEndian_SwapBE16(0x4009))) - ((English_Ireland, SkTEndian_SwapBE16(0x1809))) - ((English_Jamaica, SkTEndian_SwapBE16(0x2009))) - ((English_Malaysia, SkTEndian_SwapBE16(0x4409))) - ((English_NewZealand, SkTEndian_SwapBE16(0x1409))) - ((English_RepublicOfThePhilippines, SkTEndian_SwapBE16(0x3409))) - ((English_Singapore, SkTEndian_SwapBE16(0x4809))) - ((English_SouthAfrica, SkTEndian_SwapBE16(0x1C09))) - ((English_TrinidadAndTobago, SkTEndian_SwapBE16(0x2C09))) - ((English_UnitedKingdom, SkTEndian_SwapBE16(0x0809))) - ((English_UnitedStates, SkTEndian_SwapBE16(0x0409))) - ((English_Zimbabwe, SkTEndian_SwapBE16(0x3009))) - ((Estonian_Estonia, SkTEndian_SwapBE16(0x0425))) - ((Faroese_FaroeIslands, SkTEndian_SwapBE16(0x0438))) - ((Filipino_Philippines, SkTEndian_SwapBE16(0x0464))) - ((Finnish_Finland, SkTEndian_SwapBE16(0x040B))) - ((French_Belgium, SkTEndian_SwapBE16(0x080C))) - ((French_Canada, SkTEndian_SwapBE16(0x0C0C))) - ((French_France, SkTEndian_SwapBE16(0x040C))) - ((French_Luxembourg, SkTEndian_SwapBE16(0x140c))) - ((French_PrincipalityOfMonoco, SkTEndian_SwapBE16(0x180C))) - ((French_Switzerland, SkTEndian_SwapBE16(0x100C))) - ((Frisian_Netherlands, SkTEndian_SwapBE16(0x0462))) - ((Galician_Galician, SkTEndian_SwapBE16(0x0456))) - ((Georgian_Georgia, SkTEndian_SwapBE16(0x0437))) - ((German_Austria, SkTEndian_SwapBE16(0x0C07))) - ((German_Germany, SkTEndian_SwapBE16(0x0407))) - ((German_Liechtenstein, SkTEndian_SwapBE16(0x1407))) - ((German_Luxembourg, SkTEndian_SwapBE16(0x1007))) - ((German_Switzerland, SkTEndian_SwapBE16(0x0807))) - ((Greek_Greece, SkTEndian_SwapBE16(0x0408))) - ((Greenlandic_Greenland, SkTEndian_SwapBE16(0x046F))) - ((Gujarati_India, SkTEndian_SwapBE16(0x0447))) - ((HausaLatin_Nigeria, SkTEndian_SwapBE16(0x0468))) - ((Hebrew_Israel, SkTEndian_SwapBE16(0x040D))) - ((Hindi_India, SkTEndian_SwapBE16(0x0439))) - ((Hungarian_Hungary, SkTEndian_SwapBE16(0x040E))) - ((Icelandic_Iceland, SkTEndian_SwapBE16(0x040F))) - ((Igbo_Nigeria, SkTEndian_SwapBE16(0x0470))) - ((Indonesian_Indonesia, SkTEndian_SwapBE16(0x0421))) - ((Inuktitut_Canada, SkTEndian_SwapBE16(0x045D))) - ((InuktitutLatin_Canada, SkTEndian_SwapBE16(0x085D))) - ((Irish_Ireland, SkTEndian_SwapBE16(0x083C))) - ((isiXhosa_SouthAfrica, SkTEndian_SwapBE16(0x0434))) - ((isiZulu_SouthAfrica, SkTEndian_SwapBE16(0x0435))) - ((Italian_Italy, SkTEndian_SwapBE16(0x0410))) - ((Italian_Switzerland, SkTEndian_SwapBE16(0x0810))) - ((Japanese_Japan, SkTEndian_SwapBE16(0x0411))) - ((Kannada_India, SkTEndian_SwapBE16(0x044B))) - ((Kazakh_Kazakhstan, SkTEndian_SwapBE16(0x043F))) - ((Khmer_Cambodia, SkTEndian_SwapBE16(0x0453))) - ((Kiche_Guatemala, SkTEndian_SwapBE16(0x0486))) - ((Kinyarwanda_Rwanda, SkTEndian_SwapBE16(0x0487))) - ((Kiswahili_Kenya, SkTEndian_SwapBE16(0x0441))) - ((Konkani_India, SkTEndian_SwapBE16(0x0457))) - ((Korean_Korea, SkTEndian_SwapBE16(0x0412))) - ((Kyrgyz_Kyrgyzstan, SkTEndian_SwapBE16(0x0440))) - ((Lao_LaoPDR, SkTEndian_SwapBE16(0x0454))) - ((Latvian_Latvia, SkTEndian_SwapBE16(0x0426))) - ((Lithuanian_Lithuania, SkTEndian_SwapBE16(0x0427))) - ((LowerSorbian_Germany, SkTEndian_SwapBE16(0x082E))) - ((Luxembourgish_Luxembourg, SkTEndian_SwapBE16(0x046E))) - ((MacedonianFYROM_FormerYugoslavRepublicOfMacedonia, SkTEndian_SwapBE16(0x042F))) - ((Malay_BruneiDarussalam, SkTEndian_SwapBE16(0x083E))) - ((Malay_Malaysia, SkTEndian_SwapBE16(0x043E))) - ((Malayalam_India, SkTEndian_SwapBE16(0x044C))) - ((Maltese_Malta, SkTEndian_SwapBE16(0x043A))) - ((Maori_NewZealand, SkTEndian_SwapBE16(0x0481))) - ((Mapudungun_Chile, SkTEndian_SwapBE16(0x047A))) - ((Marathi_India, SkTEndian_SwapBE16(0x044E))) - ((Mohawk_Mohawk, SkTEndian_SwapBE16(0x047C))) - ((MongolianCyrillic_Mongolia, SkTEndian_SwapBE16(0x0450))) - ((MongolianTraditional_PeoplesRepublicOfChina, SkTEndian_SwapBE16(0x0850))) - ((Nepali_Nepal, SkTEndian_SwapBE16(0x0461))) - ((NorwegianBokmal_Norway, SkTEndian_SwapBE16(0x0414))) - ((NorwegianNynorsk_Norway, SkTEndian_SwapBE16(0x0814))) - ((Occitan_France, SkTEndian_SwapBE16(0x0482))) - ((Odia_India, SkTEndian_SwapBE16(0x0448))) - ((Pashto_Afghanistan, SkTEndian_SwapBE16(0x0463))) - ((Polish_Poland, SkTEndian_SwapBE16(0x0415))) - ((Portuguese_Brazil, SkTEndian_SwapBE16(0x0416))) - ((Portuguese_Portugal, SkTEndian_SwapBE16(0x0816))) - ((Punjabi_India, SkTEndian_SwapBE16(0x0446))) - ((Quechua_Bolivia, SkTEndian_SwapBE16(0x046B))) - ((Quechua_Ecuador, SkTEndian_SwapBE16(0x086B))) - ((Quechua_Peru, SkTEndian_SwapBE16(0x0C6B))) - ((Romanian_Romania, SkTEndian_SwapBE16(0x0418))) - ((Romansh_Switzerland, SkTEndian_SwapBE16(0x0417))) - ((Russian_Russia, SkTEndian_SwapBE16(0x0419))) - ((SamiInari_Finland, SkTEndian_SwapBE16(0x243B))) - ((SamiLule_Norway, SkTEndian_SwapBE16(0x103B))) - ((SamiLule_Sweden, SkTEndian_SwapBE16(0x143B))) - ((SamiNorthern_Finland, SkTEndian_SwapBE16(0x0C3B))) - ((SamiNorthern_Norway, SkTEndian_SwapBE16(0x043B))) - ((SamiNorthern_Sweden, SkTEndian_SwapBE16(0x083B))) - ((SamiSkolt_Finland, SkTEndian_SwapBE16(0x203B))) - ((SamiSouthern_Norway, SkTEndian_SwapBE16(0x183B))) - ((SamiSouthern_Sweden, SkTEndian_SwapBE16(0x1C3B))) - ((Sanskrit_India, SkTEndian_SwapBE16(0x044F))) - ((SerbianCyrillic_BosniaAndHerzegovina, SkTEndian_SwapBE16(0x1C1A))) - ((SerbianCyrillic_Serbia, SkTEndian_SwapBE16(0x0C1A))) - ((SerbianLatin_BosniaAndHerzegovina, SkTEndian_SwapBE16(0x181A))) - ((SerbianLatin_Serbia, SkTEndian_SwapBE16(0x081A))) - ((SesothoSaLeboa_SouthAfrica, SkTEndian_SwapBE16(0x046C))) - ((Setswana_SouthAfrica, SkTEndian_SwapBE16(0x0432))) - ((Sinhala_SriLanka, SkTEndian_SwapBE16(0x045B))) - ((Slovak_Slovakia, SkTEndian_SwapBE16(0x041B))) - ((Slovenian_Slovenia, SkTEndian_SwapBE16(0x0424))) - ((Spanish_Argentina, SkTEndian_SwapBE16(0x2C0A))) - ((Spanish_Bolivia, SkTEndian_SwapBE16(0x400A))) - ((Spanish_Chile, SkTEndian_SwapBE16(0x340A))) - ((Spanish_Colombia, SkTEndian_SwapBE16(0x240A))) - ((Spanish_CostaRica, SkTEndian_SwapBE16(0x140A))) - ((Spanish_DominicanRepublic, SkTEndian_SwapBE16(0x1C0A))) - ((Spanish_Ecuador, SkTEndian_SwapBE16(0x300A))) - ((Spanish_ElSalvador, SkTEndian_SwapBE16(0x440A))) - ((Spanish_Guatemala, SkTEndian_SwapBE16(0x100A))) - ((Spanish_Honduras, SkTEndian_SwapBE16(0x480A))) - ((Spanish_Mexico, SkTEndian_SwapBE16(0x080A))) - ((Spanish_Nicaragua, SkTEndian_SwapBE16(0x4C0A))) - ((Spanish_Panama, SkTEndian_SwapBE16(0x180A))) - ((Spanish_Paraguay, SkTEndian_SwapBE16(0x3C0A))) - ((Spanish_Peru, SkTEndian_SwapBE16(0x280A))) - ((Spanish_PuertoRico, SkTEndian_SwapBE16(0x500A))) - ((SpanishModernSort_Spain, SkTEndian_SwapBE16(0x0C0A))) - ((SpanishTraditionalSort_Spain, SkTEndian_SwapBE16(0x040A))) - ((Spanish_UnitedStates, SkTEndian_SwapBE16(0x540A))) - ((Spanish_Uruguay, SkTEndian_SwapBE16(0x380A))) - ((Spanish_Venezuela, SkTEndian_SwapBE16(0x200A))) - ((Sweden_Finland, SkTEndian_SwapBE16(0x081D))) - ((Swedish_Sweden, SkTEndian_SwapBE16(0x041D))) - ((Syriac_Syria, SkTEndian_SwapBE16(0x045A))) - ((TajikCyrillic_Tajikistan, SkTEndian_SwapBE16(0x0428))) - ((TamazightLatin_Algeria, SkTEndian_SwapBE16(0x085F))) - ((Tamil_India, SkTEndian_SwapBE16(0x0449))) - ((Tatar_Russia, SkTEndian_SwapBE16(0x0444))) - ((Telugu_India, SkTEndian_SwapBE16(0x044A))) - ((Thai_Thailand, SkTEndian_SwapBE16(0x041E))) - ((Tibetan_PRC, SkTEndian_SwapBE16(0x0451))) - ((Turkish_Turkey, SkTEndian_SwapBE16(0x041F))) - ((Turkmen_Turkmenistan, SkTEndian_SwapBE16(0x0442))) - ((Uighur_PRC, SkTEndian_SwapBE16(0x0480))) - ((Ukrainian_Ukraine, SkTEndian_SwapBE16(0x0422))) - ((UpperSorbian_Germany, SkTEndian_SwapBE16(0x042E))) - ((Urdu_IslamicRepublicOfPakistan, SkTEndian_SwapBE16(0x0420))) - ((UzbekCyrillic_Uzbekistan, SkTEndian_SwapBE16(0x0843))) - ((UzbekLatin_Uzbekistan, SkTEndian_SwapBE16(0x0443))) - ((Vietnamese_Vietnam, SkTEndian_SwapBE16(0x042A))) - ((Welsh_UnitedKingdom, SkTEndian_SwapBE16(0x0452))) - ((Wolof_Senegal, SkTEndian_SwapBE16(0x0488))) - ((Yakut_Russia, SkTEndian_SwapBE16(0x0485))) - ((Yi_PRC, SkTEndian_SwapBE16(0x0478))) - ((Yoruba_Nigeria, SkTEndian_SwapBE16(0x046A))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + Afrikaans_SouthAfrica = SkTEndian_SwapBE16(0x0436), + Albanian_Albania = SkTEndian_SwapBE16(0x041C), + Alsatian_France = SkTEndian_SwapBE16(0x0484), + Amharic_Ethiopia = SkTEndian_SwapBE16(0x045E), + Arabic_Algeria = SkTEndian_SwapBE16(0x1401), + Arabic_Bahrain = SkTEndian_SwapBE16(0x3C01), + Arabic_Egypt = SkTEndian_SwapBE16(0x0C01), + Arabic_Iraq = SkTEndian_SwapBE16(0x0801), + Arabic_Jordan = SkTEndian_SwapBE16(0x2C01), + Arabic_Kuwait = SkTEndian_SwapBE16(0x3401), + Arabic_Lebanon = SkTEndian_SwapBE16(0x3001), + Arabic_Libya = SkTEndian_SwapBE16(0x1001), + Arabic_Morocco = SkTEndian_SwapBE16(0x1801), + Arabic_Oman = SkTEndian_SwapBE16(0x2001), + Arabic_Qatar = SkTEndian_SwapBE16(0x4001), + Arabic_SaudiArabia = SkTEndian_SwapBE16(0x0401), + Arabic_Syria = SkTEndian_SwapBE16(0x2801), + Arabic_Tunisia = SkTEndian_SwapBE16(0x1C01), + Arabic_UAE = SkTEndian_SwapBE16(0x3801), + Arabic_Yemen = SkTEndian_SwapBE16(0x2401), + Armenian_Armenia = SkTEndian_SwapBE16(0x042B), + Assamese_India = SkTEndian_SwapBE16(0x044D), + AzeriCyrillic_Azerbaijan = SkTEndian_SwapBE16(0x082C), + AzeriLatin_Azerbaijan = SkTEndian_SwapBE16(0x042C), + Bashkir_Russia = SkTEndian_SwapBE16(0x046D), + Basque_Basque = SkTEndian_SwapBE16(0x042D), + Belarusian_Belarus = SkTEndian_SwapBE16(0x0423), + Bengali_Bangladesh = SkTEndian_SwapBE16(0x0845), + Bengali_India = SkTEndian_SwapBE16(0x0445), + BosnianCyrillic_BosniaAndHerzegovina = SkTEndian_SwapBE16(0x201A), + BosnianLatin_BosniaAndHerzegovina = SkTEndian_SwapBE16(0x141A), + Breton_France = SkTEndian_SwapBE16(0x047E), + Bulgarian_Bulgaria = SkTEndian_SwapBE16(0x0402), + Catalan_Catalan = SkTEndian_SwapBE16(0x0403), + Chinese_HongKongSAR = SkTEndian_SwapBE16(0x0C04), + Chinese_MacaoSAR = SkTEndian_SwapBE16(0x1404), + Chinese_PeoplesRepublicOfChina = SkTEndian_SwapBE16(0x0804), + Chinese_Singapore = SkTEndian_SwapBE16(0x1004), + Chinese_Taiwan = SkTEndian_SwapBE16(0x0404), + Corsican_France = SkTEndian_SwapBE16(0x0483), + Croatian_Croatia = SkTEndian_SwapBE16(0x041A), + CroatianLatin_BosniaAndHerzegovina = SkTEndian_SwapBE16(0x101A), + Czech_CzechRepublic = SkTEndian_SwapBE16(0x0405), + Danish_Denmark = SkTEndian_SwapBE16(0x0406), + Dari_Afghanistan = SkTEndian_SwapBE16(0x048C), + Divehi_Maldives = SkTEndian_SwapBE16(0x0465), + Dutch_Belgium = SkTEndian_SwapBE16(0x0813), + Dutch_Netherlands = SkTEndian_SwapBE16(0x0413), + English_Australia = SkTEndian_SwapBE16(0x0C09), + English_Belize = SkTEndian_SwapBE16(0x2809), + English_Canada = SkTEndian_SwapBE16(0x1009), + English_Caribbean = SkTEndian_SwapBE16(0x2409), + English_India = SkTEndian_SwapBE16(0x4009), + English_Ireland = SkTEndian_SwapBE16(0x1809), + English_Jamaica = SkTEndian_SwapBE16(0x2009), + English_Malaysia = SkTEndian_SwapBE16(0x4409), + English_NewZealand = SkTEndian_SwapBE16(0x1409), + English_RepublicOfThePhilippines = SkTEndian_SwapBE16(0x3409), + English_Singapore = SkTEndian_SwapBE16(0x4809), + English_SouthAfrica = SkTEndian_SwapBE16(0x1C09), + English_TrinidadAndTobago = SkTEndian_SwapBE16(0x2C09), + English_UnitedKingdom = SkTEndian_SwapBE16(0x0809), + English_UnitedStates = SkTEndian_SwapBE16(0x0409), + English_Zimbabwe = SkTEndian_SwapBE16(0x3009), + Estonian_Estonia = SkTEndian_SwapBE16(0x0425), + Faroese_FaroeIslands = SkTEndian_SwapBE16(0x0438), + Filipino_Philippines = SkTEndian_SwapBE16(0x0464), + Finnish_Finland = SkTEndian_SwapBE16(0x040B), + French_Belgium = SkTEndian_SwapBE16(0x080C), + French_Canada = SkTEndian_SwapBE16(0x0C0C), + French_France = SkTEndian_SwapBE16(0x040C), + French_Luxembourg = SkTEndian_SwapBE16(0x140c), + French_PrincipalityOfMonoco = SkTEndian_SwapBE16(0x180C), + French_Switzerland = SkTEndian_SwapBE16(0x100C), + Frisian_Netherlands = SkTEndian_SwapBE16(0x0462), + Galician_Galician = SkTEndian_SwapBE16(0x0456), + Georgian_Georgia = SkTEndian_SwapBE16(0x0437), + German_Austria = SkTEndian_SwapBE16(0x0C07), + German_Germany = SkTEndian_SwapBE16(0x0407), + German_Liechtenstein = SkTEndian_SwapBE16(0x1407), + German_Luxembourg = SkTEndian_SwapBE16(0x1007), + German_Switzerland = SkTEndian_SwapBE16(0x0807), + Greek_Greece = SkTEndian_SwapBE16(0x0408), + Greenlandic_Greenland = SkTEndian_SwapBE16(0x046F), + Gujarati_India = SkTEndian_SwapBE16(0x0447), + HausaLatin_Nigeria = SkTEndian_SwapBE16(0x0468), + Hebrew_Israel = SkTEndian_SwapBE16(0x040D), + Hindi_India = SkTEndian_SwapBE16(0x0439), + Hungarian_Hungary = SkTEndian_SwapBE16(0x040E), + Icelandic_Iceland = SkTEndian_SwapBE16(0x040F), + Igbo_Nigeria = SkTEndian_SwapBE16(0x0470), + Indonesian_Indonesia = SkTEndian_SwapBE16(0x0421), + Inuktitut_Canada = SkTEndian_SwapBE16(0x045D), + InuktitutLatin_Canada = SkTEndian_SwapBE16(0x085D), + Irish_Ireland = SkTEndian_SwapBE16(0x083C), + isiXhosa_SouthAfrica = SkTEndian_SwapBE16(0x0434), + isiZulu_SouthAfrica = SkTEndian_SwapBE16(0x0435), + Italian_Italy = SkTEndian_SwapBE16(0x0410), + Italian_Switzerland = SkTEndian_SwapBE16(0x0810), + Japanese_Japan = SkTEndian_SwapBE16(0x0411), + Kannada_India = SkTEndian_SwapBE16(0x044B), + Kazakh_Kazakhstan = SkTEndian_SwapBE16(0x043F), + Khmer_Cambodia = SkTEndian_SwapBE16(0x0453), + Kiche_Guatemala = SkTEndian_SwapBE16(0x0486), + Kinyarwanda_Rwanda = SkTEndian_SwapBE16(0x0487), + Kiswahili_Kenya = SkTEndian_SwapBE16(0x0441), + Konkani_India = SkTEndian_SwapBE16(0x0457), + Korean_Korea = SkTEndian_SwapBE16(0x0412), + Kyrgyz_Kyrgyzstan = SkTEndian_SwapBE16(0x0440), + Lao_LaoPDR = SkTEndian_SwapBE16(0x0454), + Latvian_Latvia = SkTEndian_SwapBE16(0x0426), + Lithuanian_Lithuania = SkTEndian_SwapBE16(0x0427), + LowerSorbian_Germany = SkTEndian_SwapBE16(0x082E), + Luxembourgish_Luxembourg = SkTEndian_SwapBE16(0x046E), + MacedonianFYROM_FormerYugoslavRepublicOfMacedonia = SkTEndian_SwapBE16(0x042F), + Malay_BruneiDarussalam = SkTEndian_SwapBE16(0x083E), + Malay_Malaysia = SkTEndian_SwapBE16(0x043E), + Malayalam_India = SkTEndian_SwapBE16(0x044C), + Maltese_Malta = SkTEndian_SwapBE16(0x043A), + Maori_NewZealand = SkTEndian_SwapBE16(0x0481), + Mapudungun_Chile = SkTEndian_SwapBE16(0x047A), + Marathi_India = SkTEndian_SwapBE16(0x044E), + Mohawk_Mohawk = SkTEndian_SwapBE16(0x047C), + MongolianCyrillic_Mongolia = SkTEndian_SwapBE16(0x0450), + MongolianTraditional_PeoplesRepublicOfChina = SkTEndian_SwapBE16(0x0850), + Nepali_Nepal = SkTEndian_SwapBE16(0x0461), + NorwegianBokmal_Norway = SkTEndian_SwapBE16(0x0414), + NorwegianNynorsk_Norway = SkTEndian_SwapBE16(0x0814), + Occitan_France = SkTEndian_SwapBE16(0x0482), + Odia_India = SkTEndian_SwapBE16(0x0448), + Pashto_Afghanistan = SkTEndian_SwapBE16(0x0463), + Polish_Poland = SkTEndian_SwapBE16(0x0415), + Portuguese_Brazil = SkTEndian_SwapBE16(0x0416), + Portuguese_Portugal = SkTEndian_SwapBE16(0x0816), + Punjabi_India = SkTEndian_SwapBE16(0x0446), + Quechua_Bolivia = SkTEndian_SwapBE16(0x046B), + Quechua_Ecuador = SkTEndian_SwapBE16(0x086B), + Quechua_Peru = SkTEndian_SwapBE16(0x0C6B), + Romanian_Romania = SkTEndian_SwapBE16(0x0418), + Romansh_Switzerland = SkTEndian_SwapBE16(0x0417), + Russian_Russia = SkTEndian_SwapBE16(0x0419), + SamiInari_Finland = SkTEndian_SwapBE16(0x243B), + SamiLule_Norway = SkTEndian_SwapBE16(0x103B), + SamiLule_Sweden = SkTEndian_SwapBE16(0x143B), + SamiNorthern_Finland = SkTEndian_SwapBE16(0x0C3B), + SamiNorthern_Norway = SkTEndian_SwapBE16(0x043B), + SamiNorthern_Sweden = SkTEndian_SwapBE16(0x083B), + SamiSkolt_Finland = SkTEndian_SwapBE16(0x203B), + SamiSouthern_Norway = SkTEndian_SwapBE16(0x183B), + SamiSouthern_Sweden = SkTEndian_SwapBE16(0x1C3B), + Sanskrit_India = SkTEndian_SwapBE16(0x044F), + SerbianCyrillic_BosniaAndHerzegovina = SkTEndian_SwapBE16(0x1C1A), + SerbianCyrillic_Serbia = SkTEndian_SwapBE16(0x0C1A), + SerbianLatin_BosniaAndHerzegovina = SkTEndian_SwapBE16(0x181A), + SerbianLatin_Serbia = SkTEndian_SwapBE16(0x081A), + SesothoSaLeboa_SouthAfrica = SkTEndian_SwapBE16(0x046C), + Setswana_SouthAfrica = SkTEndian_SwapBE16(0x0432), + Sinhala_SriLanka = SkTEndian_SwapBE16(0x045B), + Slovak_Slovakia = SkTEndian_SwapBE16(0x041B), + Slovenian_Slovenia = SkTEndian_SwapBE16(0x0424), + Spanish_Argentina = SkTEndian_SwapBE16(0x2C0A), + Spanish_Bolivia = SkTEndian_SwapBE16(0x400A), + Spanish_Chile = SkTEndian_SwapBE16(0x340A), + Spanish_Colombia = SkTEndian_SwapBE16(0x240A), + Spanish_CostaRica = SkTEndian_SwapBE16(0x140A), + Spanish_DominicanRepublic = SkTEndian_SwapBE16(0x1C0A), + Spanish_Ecuador = SkTEndian_SwapBE16(0x300A), + Spanish_ElSalvador = SkTEndian_SwapBE16(0x440A), + Spanish_Guatemala = SkTEndian_SwapBE16(0x100A), + Spanish_Honduras = SkTEndian_SwapBE16(0x480A), + Spanish_Mexico = SkTEndian_SwapBE16(0x080A), + Spanish_Nicaragua = SkTEndian_SwapBE16(0x4C0A), + Spanish_Panama = SkTEndian_SwapBE16(0x180A), + Spanish_Paraguay = SkTEndian_SwapBE16(0x3C0A), + Spanish_Peru = SkTEndian_SwapBE16(0x280A), + Spanish_PuertoRico = SkTEndian_SwapBE16(0x500A), + SpanishModernSort_Spain = SkTEndian_SwapBE16(0x0C0A), + SpanishTraditionalSort_Spain = SkTEndian_SwapBE16(0x040A), + Spanish_UnitedStates = SkTEndian_SwapBE16(0x540A), + Spanish_Uruguay = SkTEndian_SwapBE16(0x380A), + Spanish_Venezuela = SkTEndian_SwapBE16(0x200A), + Sweden_Finland = SkTEndian_SwapBE16(0x081D), + Swedish_Sweden = SkTEndian_SwapBE16(0x041D), + Syriac_Syria = SkTEndian_SwapBE16(0x045A), + TajikCyrillic_Tajikistan = SkTEndian_SwapBE16(0x0428), + TamazightLatin_Algeria = SkTEndian_SwapBE16(0x085F), + Tamil_India = SkTEndian_SwapBE16(0x0449), + Tatar_Russia = SkTEndian_SwapBE16(0x0444), + Telugu_India = SkTEndian_SwapBE16(0x044A), + Thai_Thailand = SkTEndian_SwapBE16(0x041E), + Tibetan_PRC = SkTEndian_SwapBE16(0x0451), + Turkish_Turkey = SkTEndian_SwapBE16(0x041F), + Turkmen_Turkmenistan = SkTEndian_SwapBE16(0x0442), + Uighur_PRC = SkTEndian_SwapBE16(0x0480), + Ukrainian_Ukraine = SkTEndian_SwapBE16(0x0422), + UpperSorbian_Germany = SkTEndian_SwapBE16(0x042E), + Urdu_IslamicRepublicOfPakistan = SkTEndian_SwapBE16(0x0420), + UzbekCyrillic_Uzbekistan = SkTEndian_SwapBE16(0x0843), + UzbekLatin_Uzbekistan = SkTEndian_SwapBE16(0x0443), + Vietnamese_Vietnam = SkTEndian_SwapBE16(0x042A), + Welsh_UnitedKingdom = SkTEndian_SwapBE16(0x0452), + Wolof_Senegal = SkTEndian_SwapBE16(0x0488), + Yakut_Russia = SkTEndian_SwapBE16(0x0485), + Yi_PRC = SkTEndian_SwapBE16(0x0478), + Yoruba_Nigeria = SkTEndian_SwapBE16(0x046A), + } value; } windows; } languageID; @@ -492,31 +484,30 @@ struct SkOTTableName { /** A font specific name id which should be greater than 0xFF. */ SK_OT_USHORT fontSpecific; struct Predefined { - SK_TYPED_ENUM(Value, SK_OT_USHORT, - ((CopyrightNotice, SkTEndian_SwapBE16(0))) - ((FontFamilyName, SkTEndian_SwapBE16(1))) - ((FontSubfamilyName, SkTEndian_SwapBE16(2))) - ((UniqueFontIdentifier, SkTEndian_SwapBE16(3))) - ((FullFontName, SkTEndian_SwapBE16(4))) - ((VersionString, SkTEndian_SwapBE16(5))) //Version <number>.<number> - ((PostscriptName, SkTEndian_SwapBE16(6))) //See spec for constraints. - ((Trademark, SkTEndian_SwapBE16(7))) - ((ManufacturerName, SkTEndian_SwapBE16(8))) - ((Designer, SkTEndian_SwapBE16(9))) - ((Description, SkTEndian_SwapBE16(10))) - ((URLVendor, SkTEndian_SwapBE16(11))) - ((URLDesigner, SkTEndian_SwapBE16(12))) - ((LicenseDescription, SkTEndian_SwapBE16(13))) - ((LicenseInfoURL, SkTEndian_SwapBE16(14))) - ((PreferredFamily, SkTEndian_SwapBE16(16))) - ((PreferredSubfamily, SkTEndian_SwapBE16(17))) - ((CompatibleFullName, SkTEndian_SwapBE16(18))) - ((SampleText, SkTEndian_SwapBE16(19))) - ((PostscriptCIDFindfontName, SkTEndian_SwapBE16(20))) - ((WWSFamilyName, SkTEndian_SwapBE16(21))) - ((WWSSubfamilyName, SkTEndian_SwapBE16(22))) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_USHORT { + CopyrightNotice = SkTEndian_SwapBE16(0), + FontFamilyName = SkTEndian_SwapBE16(1), + FontSubfamilyName = SkTEndian_SwapBE16(2), + UniqueFontIdentifier = SkTEndian_SwapBE16(3), + FullFontName = SkTEndian_SwapBE16(4), + VersionString = SkTEndian_SwapBE16(5), //Version <number>.<number> + PostscriptName = SkTEndian_SwapBE16(6), //See spec for constraints. + Trademark = SkTEndian_SwapBE16(7), + ManufacturerName = SkTEndian_SwapBE16(8), + Designer = SkTEndian_SwapBE16(9), + Description = SkTEndian_SwapBE16(10), + URLVendor = SkTEndian_SwapBE16(11), + URLDesigner = SkTEndian_SwapBE16(12), + LicenseDescription = SkTEndian_SwapBE16(13), + LicenseInfoURL = SkTEndian_SwapBE16(14), + PreferredFamily = SkTEndian_SwapBE16(16), + PreferredSubfamily = SkTEndian_SwapBE16(17), + CompatibleFullName = SkTEndian_SwapBE16(18), + SampleText = SkTEndian_SwapBE16(19), + PostscriptCIDFindfontName = SkTEndian_SwapBE16(20), + WWSFamilyName = SkTEndian_SwapBE16(21), + WWSSubfamilyName = SkTEndian_SwapBE16(22), + } value; } predefined; } nameID; diff --git a/src/sfnt/SkOTTable_post.h b/src/sfnt/SkOTTable_post.h index 7461d5283e..1af692983f 100644 --- a/src/sfnt/SkOTTable_post.h +++ b/src/sfnt/SkOTTable_post.h @@ -10,7 +10,6 @@ #include "SkEndian.h" #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) @@ -22,14 +21,13 @@ struct SkOTTablePostScript { static const SK_OT_ULONG TAG = SkOTTableTAG<SkOTTablePostScript>::value; struct Format { - SK_TYPED_ENUM(Value, SK_OT_Fixed, - ((version1, SkTEndian_SwapBE32(0x00010000))) - ((version2, SkTEndian_SwapBE32(0x00020000))) - ((version2_5, SkTEndian_SwapBE32(0x00025000))) - ((version3, SkTEndian_SwapBE32(0x00030000))) - ((version4, SkTEndian_SwapBE32(0x00040000))) - SK_SEQ_END, - SK_SEQ_END) + enum Value : SK_OT_Fixed { + version1 = SkTEndian_SwapBE32(0x00010000), + version2 = SkTEndian_SwapBE32(0x00020000), + version2_5 = SkTEndian_SwapBE32(0x00025000), + version3 = SkTEndian_SwapBE32(0x00030000), + version4 = SkTEndian_SwapBE32(0x00040000), + }; SK_OT_Fixed value; } format; SK_OT_Fixed italicAngle; diff --git a/src/sfnt/SkPanose.h b/src/sfnt/SkPanose.h index 9561e56fb0..648aec6758 100644 --- a/src/sfnt/SkPanose.h +++ b/src/sfnt/SkPanose.h @@ -9,623 +9,585 @@ #define SkPanose_DEFINED #include "SkOTTableTypes.h" -#include "SkTypedEnum.h" #pragma pack(push, 1) struct SkPanose { //This value changes the meaning of the following 9 bytes. struct FamilyType { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((TextAndDisplay, 2)) - ((Script, 3)) - ((Decorative, 4)) - ((Pictoral, 5)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + TextAndDisplay = 2, + Script = 3, + Decorative = 4, + Pictoral = 5, + } value; } bFamilyType; union Data { struct TextAndDisplay { struct SerifStyle { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Cove, 2)) - ((ObtuseCove, 3)) - ((SquareCove, 4)) - ((ObtuseSquareCove, 5)) - ((Square, 6)) - ((Thin, 7)) - ((Bone, 8)) - ((Exaggerated, 9)) - ((Triangle, 10)) - ((NormalSans, 11)) - ((ObtuseSans, 12)) - ((PerpSans, 13)) - ((Flared, 14)) - ((Rounded, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Cove = 2, + ObtuseCove = 3, + SquareCove = 4, + ObtuseSquareCove = 5, + Square = 6, + Thin = 7, + Bone = 8, + Exaggerated = 9, + Triangle = 10, + NormalSans = 11, + ObtuseSans = 12, + PerpSans = 13, + Flared = 14, + Rounded = 15, + } value; } bSerifStyle; struct Weight { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((VeryLight, 2)) - ((Light, 3)) - ((Thin, 4)) - ((Book, 5)) - ((Medium, 6)) - ((Demi, 7)) - ((Bold, 8)) - ((Heavy, 9)) - ((Black, 10)) - ((ExtraBlack, 11)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + VeryLight = 2, + Light = 3, + Thin = 4, + Book = 5, + Medium = 6, + Demi = 7, + Bold = 8, + Heavy = 9, + Black = 10, + ExtraBlack = 11, + } value; } bWeight; struct Proportion { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((OldStyle, 2)) - ((Modern, 3)) - ((EvenWidth, 4)) - ((Expanded, 5)) - ((Condensed, 6)) - ((VeryExpanded, 7)) - ((VeryCondensed, 8)) - ((Monospaced, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + OldStyle = 2, + Modern = 3, + EvenWidth = 4, + Expanded = 5, + Condensed = 6, + VeryExpanded = 7, + VeryCondensed = 8, + Monospaced = 9, + } value; } bProportion; struct Contrast { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None, 2)) - ((VeryLow, 3)) - ((Low, 4)) - ((MediumLow, 5)) - ((Medium, 6)) - ((MediumHigh, 7)) - ((High, 8)) - ((VeryHigh, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None = 2, + VeryLow = 3, + Low = 4, + MediumLow = 5, + Medium = 6, + MediumHigh = 7, + High = 8, + VeryHigh = 9, + } value; } bContrast; #ifdef SK_WIN_PANOSE //This is what Windows (and FontForge and Apple TT spec) define. //The Impact font uses 9. struct StrokeVariation { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((GradualDiagonal, 2)) - ((GradualTransitional, 3)) - ((GradualVertical, 4)) - ((GradualHorizontal, 5)) - ((RapidVertical, 6)) - ((RapidHorizontal, 7)) - ((InstantVertical, 8)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + GradualDiagonal = 2, + GradualTransitional = 3, + GradualVertical = 4, + GradualHorizontal = 5, + RapidVertical = 6, + RapidHorizontal = 7, + InstantVertical = 8, + } value; } bStrokeVariation; #else //Stroke variation description in OT OS/2 ver0,ver1 is incorrect. //This is what HP Panose says. struct StrokeVariation { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((NoVariation, 2)) - ((Gradual_Diagonal, 3)) - ((Gradual_Transitional, 4)) - ((Gradual_Vertical, 5)) - ((Gradual_Horizontal, 6)) - ((Rapid_Vertical, 7)) - ((Rapid_Horizontal, 8)) - ((Instant_Vertical, 9)) - ((Instant_Horizontal, 10)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + NoVariation = 2, + Gradual_Diagonal = 3, + Gradual_Transitional = 4, + Gradual_Vertical = 5, + Gradual_Horizontal = 6, + Rapid_Vertical = 7, + Rapid_Horizontal = 8, + Instant_Vertical = 9, + Instant_Horizontal = 10, + } value; } bStrokeVariation; #endif struct ArmStyle { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((StraightArms_Horizontal, 2)) - ((StraightArms_Wedge, 3)) - ((StraightArms_Vertical, 4)) - ((StraightArms_SingleSerif, 5)) - ((StraightArms_DoubleSerif, 6)) - ((NonStraightArms_Horizontal, 7)) - ((NonStraightArms_Wedge, 8)) - ((NonStraightArms_Vertical, 9)) - ((NonStraightArms_SingleSerif, 10)) - ((NonStraightArms_DoubleSerif, 11)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + StraightArms_Horizontal = 2, + StraightArms_Wedge = 3, + StraightArms_Vertical = 4, + StraightArms_SingleSerif = 5, + StraightArms_DoubleSerif = 6, + NonStraightArms_Horizontal = 7, + NonStraightArms_Wedge = 8, + NonStraightArms_Vertical = 9, + NonStraightArms_SingleSerif = 10, + NonStraightArms_DoubleSerif = 11, + } value; } bArmStyle; struct Letterform { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Normal_Contact, 2)) - ((Normal_Weighted, 3)) - ((Normal_Boxed, 4)) - ((Normal_Flattened, 5)) - ((Normal_Rounded, 6)) - ((Normal_OffCenter, 7)) - ((Normal_Square, 8)) - ((Oblique_Contact, 9)) - ((Oblique_Weighted, 10)) - ((Oblique_Boxed, 11)) - ((Oblique_Flattened, 12)) - ((Oblique_Rounded, 13)) - ((Oblique_OffCenter, 14)) - ((Oblique_Square, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Normal_Contact = 2, + Normal_Weighted = 3, + Normal_Boxed = 4, + Normal_Flattened = 5, + Normal_Rounded = 6, + Normal_OffCenter = 7, + Normal_Square = 8, + Oblique_Contact = 9, + Oblique_Weighted = 10, + Oblique_Boxed = 11, + Oblique_Flattened = 12, + Oblique_Rounded = 13, + Oblique_OffCenter = 14, + Oblique_Square = 15, + } value; } bLetterform; struct Midline { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Standard_Trimmed, 2)) - ((Standard_Pointed, 3)) - ((Standard_Serifed, 4)) - ((High_Trimmed, 5)) - ((High_Pointed, 6)) - ((High_Serifed, 7)) - ((Constant_Trimmed, 8)) - ((Constant_Pointed, 9)) - ((Constant_Serifed, 10)) - ((Low_Trimmed, 11)) - ((Low_Pointed, 12)) - ((Low_Serifed, 13)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Standard_Trimmed = 2, + Standard_Pointed = 3, + Standard_Serifed = 4, + High_Trimmed = 5, + High_Pointed = 6, + High_Serifed = 7, + Constant_Trimmed = 8, + Constant_Pointed = 9, + Constant_Serifed = 10, + Low_Trimmed = 11, + Low_Pointed = 12, + Low_Serifed = 13, + } value; } bMidline; struct XHeight { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Constant_Small, 2)) - ((Constant_Standard, 3)) - ((Constant_Large, 4)) - ((Ducking_Small, 5)) - ((Ducking_Standard, 6)) - ((Ducking_Large, 7)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Constant_Small = 2, + Constant_Standard = 3, + Constant_Large = 4, + Ducking_Small = 5, + Ducking_Standard = 6, + Ducking_Large = 7, + } value; } bXHeight; } textAndDisplay; struct Script { struct ToolKind { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((FlatNib, 2)) - ((PressurePoint, 3)) - ((Engraved, 4)) - ((Ball, 5)) - ((Brush, 6)) - ((Rough, 7)) - ((FeltPen, 8)) - ((WildBrush, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + FlatNib = 2, + PressurePoint = 3, + Engraved = 4, + Ball = 5, + Brush = 6, + Rough = 7, + FeltPen = 8, + WildBrush = 9, + } value; } bToolKind; struct Weight { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((VeryLight, 2)) - ((Light, 3)) - ((Thin, 4)) - ((Book, 5)) - ((Medium, 6)) - ((Demi, 7)) - ((Bold, 8)) - ((Heavy, 9)) - ((Black, 10)) - ((ExtraBlack, 11)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + VeryLight = 2, + Light = 3, + Thin = 4, + Book = 5, + Medium = 6, + Demi = 7, + Bold = 8, + Heavy = 9, + Black = 10, + ExtraBlack = 11, + } value; } bWeight; struct Spacing { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((ProportionalSpaced, 2)) - ((Monospaced, 3)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + ProportionalSpaced = 2, + Monospaced = 3, + } value; } bSpacing; struct AspectRatio { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((VeryCondensed, 2)) - ((Condensed, 3)) - ((Normal, 4)) - ((Expanded, 5)) - ((VeryExpanded, 6)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + VeryCondensed = 2, + Condensed = 3, + Normal = 4, + Expanded = 5, + VeryExpanded = 6, + } value; } bAspectRatio; struct Contrast { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None, 2)) - ((VeryLow, 3)) - ((Low, 4)) - ((MediumLow, 5)) - ((Medium, 6)) - ((MediumHigh, 7)) - ((High, 8)) - ((VeryHigh, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None = 2, + VeryLow = 3, + Low = 4, + MediumLow = 5, + Medium = 6, + MediumHigh = 7, + High = 8, + VeryHigh = 9, + } value; } bContrast; struct Topology { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Roman_Disconnected, 2)) - ((Roman_Trailing, 3)) - ((Roman_Connected, 4)) - ((Cursive_Disconnected, 5)) - ((Cursive_Trailing, 6)) - ((Cursive_Connected, 7)) - ((Blackletter_Disconnected, 8)) - ((Blackletter_Trailing, 9)) - ((Blackletter_Connected, 10)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Roman_Disconnected = 2, + Roman_Trailing = 3, + Roman_Connected = 4, + Cursive_Disconnected = 5, + Cursive_Trailing = 6, + Cursive_Connected = 7, + Blackletter_Disconnected = 8, + Blackletter_Trailing = 9, + Blackletter_Connected = 10, + } value; } bTopology; struct Form { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Upright_NoWrapping, 2)) - ((Upright_SomeWrapping, 3)) - ((Upright_MoreWrapping, 4)) - ((Upright_ExtremeWrapping, 5)) - ((Oblique_NoWrapping, 6)) - ((Oblique_SomeWrapping, 7)) - ((Oblique_MoreWrapping, 8)) - ((Oblique_ExtremeWrapping, 9)) - ((Exaggerated_NoWrapping, 10)) - ((Exaggerated_SomeWrapping, 11)) - ((Exaggerated_MoreWrapping, 12)) - ((Exaggerated_ExtremeWrapping, 13)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Upright_NoWrapping = 2, + Upright_SomeWrapping = 3, + Upright_MoreWrapping = 4, + Upright_ExtremeWrapping = 5, + Oblique_NoWrapping = 6, + Oblique_SomeWrapping = 7, + Oblique_MoreWrapping = 8, + Oblique_ExtremeWrapping = 9, + Exaggerated_NoWrapping = 10, + Exaggerated_SomeWrapping = 11, + Exaggerated_MoreWrapping = 12, + Exaggerated_ExtremeWrapping = 13, + } value; } bForm; struct Finials { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None_NoLoops, 2)) - ((None_ClosedLoops, 3)) - ((None_OpenLoops, 4)) - ((Sharp_NoLoops, 5)) - ((Sharp_ClosedLoops, 6)) - ((Sharp_OpenLoops, 7)) - ((Tapered_NoLoops, 8)) - ((Tapered_ClosedLoops, 9)) - ((Tapered_OpenLoops, 10)) - ((Round_NoLoops, 11)) - ((Round_ClosedLoops, 12)) - ((Round_OpenLoops, 13)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None_NoLoops = 2, + None_ClosedLoops = 3, + None_OpenLoops = 4, + Sharp_NoLoops = 5, + Sharp_ClosedLoops = 6, + Sharp_OpenLoops = 7, + Tapered_NoLoops = 8, + Tapered_ClosedLoops = 9, + Tapered_OpenLoops = 10, + Round_NoLoops = 11, + Round_ClosedLoops = 12, + Round_OpenLoops = 13, + } value; } bFinials; struct XAscent { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((VeryLow, 2)) - ((Low, 3)) - ((Medium, 4)) - ((High, 5)) - ((VeryHigh, 6)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + VeryLow = 2, + Low = 3, + Medium = 4, + High = 5, + VeryHigh = 6, + } value; } bXAscent; } script; struct Decorative { struct Class { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Derivative, 2)) - ((NonStandard_Topology, 3)) - ((NonStandard_Elements, 4)) - ((NonStandard_Aspect, 5)) - ((Initials, 6)) - ((Cartoon, 7)) - ((PictureStems, 8)) - ((Ornamented, 9)) - ((TextAndBackground, 10)) - ((Collage, 11)) - ((Montage, 12)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Derivative = 2, + NonStandard_Topology = 3, + NonStandard_Elements = 4, + NonStandard_Aspect = 5, + Initials = 6, + Cartoon = 7, + PictureStems = 8, + Ornamented = 9, + TextAndBackground = 10, + Collage = 11, + Montage = 12, + } value; } bClass; struct Weight { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((VeryLight, 2)) - ((Light, 3)) - ((Thin, 4)) - ((Book, 5)) - ((Medium, 6)) - ((Demi, 7)) - ((Bold, 8)) - ((Heavy, 9)) - ((Black, 10)) - ((ExtraBlack, 11)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + VeryLight = 2, + Light = 3, + Thin = 4, + Book = 5, + Medium = 6, + Demi = 7, + Bold = 8, + Heavy = 9, + Black = 10, + ExtraBlack = 11, + } value; } bWeight; struct Aspect { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((SuperCondensed, 2)) - ((VeryCondensed, 3)) - ((Condensed, 4)) - ((Normal, 5)) - ((Extended, 6)) - ((VeryExtended, 7)) - ((SuperExtended, 8)) - ((Monospaced, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + SuperCondensed = 2, + VeryCondensed = 3, + Condensed = 4, + Normal = 5, + Extended = 6, + VeryExtended = 7, + SuperExtended = 8, + Monospaced = 9, + } value; } bAspect; struct Contrast { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None, 2)) - ((VeryLow, 3)) - ((Low, 4)) - ((MediumLow, 5)) - ((Medium, 6)) - ((MediumHigh, 7)) - ((High, 8)) - ((VeryHigh, 9)) - ((HorizontalLow, 10)) - ((HorizontalMedium, 11)) - ((HorizontalHigh, 12)) - ((Broken, 13)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None = 2, + VeryLow = 3, + Low = 4, + MediumLow = 5, + Medium = 6, + MediumHigh = 7, + High = 8, + VeryHigh = 9, + HorizontalLow = 10, + HorizontalMedium = 11, + HorizontalHigh = 12, + Broken = 13, + } value; } bContrast; struct SerifVariant { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Cove, 2)) - ((ObtuseCove, 3)) - ((SquareCove, 4)) - ((ObtuseSquareCove, 5)) - ((Square, 6)) - ((Thin, 7)) - ((Oval, 8)) - ((Exaggerated, 9)) - ((Triangle, 10)) - ((NormalSans, 11)) - ((ObtuseSans, 12)) - ((PerpendicularSans, 13)) - ((Flared, 14)) - ((Rounded, 15)) - ((Script, 16)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Cove = 2, + ObtuseCove = 3, + SquareCove = 4, + ObtuseSquareCove = 5, + Square = 6, + Thin = 7, + Oval = 8, + Exaggerated = 9, + Triangle = 10, + NormalSans = 11, + ObtuseSans = 12, + PerpendicularSans = 13, + Flared = 14, + Rounded = 15, + Script = 16, + } value; } bSerifVariant; struct Treatment { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None_StandardSolidFill, 2)) - ((White_NoFill, 3)) - ((PatternedFill, 4)) - ((ComplexFill, 5)) - ((ShapedFill, 6)) - ((DrawnDistressed, 7)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None_StandardSolidFill = 2, + White_NoFill = 3, + PatternedFill = 4, + ComplexFill = 5, + ShapedFill = 6, + DrawnDistressed = 7, + } value; } bTreatment; struct Lining { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((None, 2)) - ((Inline, 3)) - ((Outline, 4)) - ((Engraved, 5)) - ((Shadow, 6)) - ((Relief, 7)) - ((Backdrop, 8)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + None = 2, + Inline = 3, + Outline = 4, + Engraved = 5, + Shadow = 6, + Relief = 7, + Backdrop = 8, + } value; } bLining; struct Topology { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Standard, 2)) - ((Square, 3)) - ((MultipleSegment, 4)) - ((DecoWacoMidlines, 5)) - ((UnevenWeighting, 6)) - ((DiverseArms, 7)) - ((DiverseForms, 8)) - ((LombardicForms, 9)) - ((UpperCaseInLowerCase, 10)) - ((ImpliedTopology, 11)) - ((HorseshoeEandA, 12)) - ((Cursive, 13)) - ((Blackletter, 14)) - ((SwashVariance, 15)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Standard = 2, + Square = 3, + MultipleSegment = 4, + DecoWacoMidlines = 5, + UnevenWeighting = 6, + DiverseArms = 7, + DiverseForms = 8, + LombardicForms = 9, + UpperCaseInLowerCase = 10, + ImpliedTopology = 11, + HorseshoeEandA = 12, + Cursive = 13, + Blackletter = 14, + SwashVariance = 15, + } value; } bTopology; struct RangeOfCharacters { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((ExtendedCollection, 2)) - ((Litterals, 3)) - ((NoLowerCase, 4)) - ((SmallCaps, 5)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + ExtendedCollection = 2, + Litterals = 3, + NoLowerCase = 4, + SmallCaps = 5, + } value; } bRangeOfCharacters; } decorative; struct Pictoral { struct Kind { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((Montages, 2)) - ((Pictures, 3)) - ((Shapes, 4)) - ((Scientific, 5)) - ((Music, 6)) - ((Expert, 7)) - ((Patterns, 8)) - ((Boarders, 9)) - ((Icons, 10)) - ((Logos, 11)) - ((IndustrySpecific, 12)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + Montages = 2, + Pictures = 3, + Shapes = 4, + Scientific = 5, + Music = 6, + Expert = 7, + Patterns = 8, + Boarders = 9, + Icons = 10, + Logos = 11, + IndustrySpecific = 12, + } value; } bKind; struct Weight { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoFit, 1)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + NoFit = 1, + } value; } bWeight; struct Spacing { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((ProportionalSpaced, 2)) - ((Monospaced, 3)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + ProportionalSpaced = 2, + Monospaced = 3, + } value; } bSpacing; struct AspectRatioAndContrast { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((NoFit, 1)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + NoFit = 1, + } value; } bAspectRatioAndContrast; struct AspectRatio94 { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((NoWidth, 2)) - ((ExceptionallyWide, 3)) - ((SuperWide, 4)) - ((VeryWide, 5)) - ((Wide, 6)) - ((Normal, 7)) - ((Narrow, 8)) - ((VeryNarrow, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + NoWidth = 2, + ExceptionallyWide = 3, + SuperWide = 4, + VeryWide = 5, + Wide = 6, + Normal = 7, + Narrow = 8, + VeryNarrow = 9, + } value; } bAspectRatio94; struct AspectRatio119 { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((NoWidth, 2)) - ((ExceptionallyWide, 3)) - ((SuperWide, 4)) - ((VeryWide, 5)) - ((Wide, 6)) - ((Normal, 7)) - ((Narrow, 8)) - ((VeryNarrow, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + NoWidth = 2, + ExceptionallyWide = 3, + SuperWide = 4, + VeryWide = 5, + Wide = 6, + Normal = 7, + Narrow = 8, + VeryNarrow = 9, + } value; } bAspectRatio119; struct AspectRatio157 { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((NoWidth, 2)) - ((ExceptionallyWide, 3)) - ((SuperWide, 4)) - ((VeryWide, 5)) - ((Wide, 6)) - ((Normal, 7)) - ((Narrow, 8)) - ((VeryNarrow, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + NoWidth = 2, + ExceptionallyWide = 3, + SuperWide = 4, + VeryWide = 5, + Wide = 6, + Normal = 7, + Narrow = 8, + VeryNarrow = 9, + } value; } bAspectRatio157; struct AspectRatio163 { - SK_TYPED_ENUM(Value, SK_OT_BYTE, - ((Any, 0)) - ((NoFit, 1)) - ((NoWidth, 2)) - ((ExceptionallyWide, 3)) - ((SuperWide, 4)) - ((VeryWide, 5)) - ((Wide, 6)) - ((Normal, 7)) - ((Narrow, 8)) - ((VeryNarrow, 9)) - SK_SEQ_END, - (value)SK_SEQ_END) + enum Value : SK_OT_BYTE { + Any = 0, + NoFit = 1, + NoWidth = 2, + ExceptionallyWide = 3, + SuperWide = 4, + VeryWide = 5, + Wide = 6, + Normal = 7, + Narrow = 8, + VeryNarrow = 9, + } value; } bAspectRatio163; } pictoral; } data; diff --git a/src/sfnt/SkPreprocessorSeq.h b/src/sfnt/SkPreprocessorSeq.h deleted file mode 100644 index fed24181a9..0000000000 --- a/src/sfnt/SkPreprocessorSeq.h +++ /dev/null @@ -1,826 +0,0 @@ -/* - * Copyright 2012 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef SkPreprocessorSeq_DEFINED -#define SkPreprocessorSeq_DEFINED - -#define SK_CONCAT(a, b) SK_CONCAT_I(a, b) // allow for macro expansion -#define SK_CONCAT_I(a, b) a ## b - -//A preprocessor pair is of the form '(a, b)' -#define SK_PAIR_FIRST(pair) SK_PAIR_FIRST_I pair -#define SK_PAIR_FIRST_I(a, b) a -#define SK_PAIR_SECOND(pair) SK_PAIR_SECOND_I pair -#define SK_PAIR_SECOND_I(a, b) b - -//A preprocessor sequence is of the form (a)(b)(c)SK_SEQ_END -#if 0 -//The following is what we logically want to do. -//However, MSVC expands macros at the wrong time, causing an error on use of -//SK_SEQ_IGNORE_SECOND_I because it formally takes two parameters, but we only -//pass "one" parameter in SK_SEQ_IGNORE_SECOND. - -#define SK_SEQ_HEAD(seq) SK_SEQ_IGNORE_SECOND(SK_SEQ_FIRST seq) -#define SK_SEQ_IGNORE_SECOND(x) SK_SEQ_IGNORE_SECOND_I(x) // expand x -#define SK_SEQ_IGNORE_SECOND_I(x, _) x -#define SK_SEQ_FIRST(x) x, SK_NIL - -#else - -//This is less obvious, but works on GCC, clang, and MSVC. -#define SK_SEQ_HEAD(seq) SK_SEQ_HEAD_II((SK_SEQ_FIRST seq)) -#define SK_SEQ_HEAD_II(x) SK_SEQ_IGNORE_SECOND_I x -#define SK_SEQ_IGNORE_SECOND_I(x, _) x -#define SK_SEQ_FIRST(x) x, SK_NIL - -#endif - -#define SK_SEQ_TAIL(seq) SK_SEQ_TAIL_I seq -#define SK_SEQ_TAIL_I(x) - -#define SK_SEQ_SIZE(seq) SK_CONCAT(SK_SEQ_SIZE_, SK_SEQ_SIZE_TERMINATOR seq) - -#define SK_SEQ_SIZE_TERMINATOR(_) SK_SEQ_SIZE_0 -#define SK_SEQ_SIZE_0(_) SK_SEQ_SIZE_1 -#define SK_SEQ_SIZE_1(_) SK_SEQ_SIZE_2 -#define SK_SEQ_SIZE_2(_) SK_SEQ_SIZE_3 -#define SK_SEQ_SIZE_3(_) SK_SEQ_SIZE_4 -#define SK_SEQ_SIZE_4(_) SK_SEQ_SIZE_5 -#define SK_SEQ_SIZE_5(_) SK_SEQ_SIZE_6 -#define SK_SEQ_SIZE_6(_) SK_SEQ_SIZE_7 -#define SK_SEQ_SIZE_7(_) SK_SEQ_SIZE_8 -#define SK_SEQ_SIZE_8(_) SK_SEQ_SIZE_9 -#define SK_SEQ_SIZE_9(_) SK_SEQ_SIZE_10 -#define SK_SEQ_SIZE_10(_) SK_SEQ_SIZE_11 -#define SK_SEQ_SIZE_11(_) SK_SEQ_SIZE_12 -#define SK_SEQ_SIZE_12(_) SK_SEQ_SIZE_13 -#define SK_SEQ_SIZE_13(_) SK_SEQ_SIZE_14 -#define SK_SEQ_SIZE_14(_) SK_SEQ_SIZE_15 -#define SK_SEQ_SIZE_15(_) SK_SEQ_SIZE_16 -#define SK_SEQ_SIZE_16(_) SK_SEQ_SIZE_17 -#define SK_SEQ_SIZE_17(_) SK_SEQ_SIZE_18 -#define SK_SEQ_SIZE_18(_) SK_SEQ_SIZE_19 -#define SK_SEQ_SIZE_19(_) SK_SEQ_SIZE_20 -#define SK_SEQ_SIZE_20(_) SK_SEQ_SIZE_21 -#define SK_SEQ_SIZE_21(_) SK_SEQ_SIZE_22 -#define SK_SEQ_SIZE_22(_) SK_SEQ_SIZE_23 -#define SK_SEQ_SIZE_23(_) SK_SEQ_SIZE_24 -#define SK_SEQ_SIZE_24(_) SK_SEQ_SIZE_25 -#define SK_SEQ_SIZE_25(_) SK_SEQ_SIZE_26 -#define SK_SEQ_SIZE_26(_) SK_SEQ_SIZE_27 -#define SK_SEQ_SIZE_27(_) SK_SEQ_SIZE_28 -#define SK_SEQ_SIZE_28(_) SK_SEQ_SIZE_29 -#define SK_SEQ_SIZE_29(_) SK_SEQ_SIZE_30 -#define SK_SEQ_SIZE_30(_) SK_SEQ_SIZE_31 -#define SK_SEQ_SIZE_31(_) SK_SEQ_SIZE_32 -#define SK_SEQ_SIZE_32(_) SK_SEQ_SIZE_33 -#define SK_SEQ_SIZE_33(_) SK_SEQ_SIZE_34 -#define SK_SEQ_SIZE_34(_) SK_SEQ_SIZE_35 -#define SK_SEQ_SIZE_35(_) SK_SEQ_SIZE_36 -#define SK_SEQ_SIZE_36(_) SK_SEQ_SIZE_37 -#define SK_SEQ_SIZE_37(_) SK_SEQ_SIZE_38 -#define SK_SEQ_SIZE_38(_) SK_SEQ_SIZE_39 -#define SK_SEQ_SIZE_39(_) SK_SEQ_SIZE_40 -#define SK_SEQ_SIZE_40(_) SK_SEQ_SIZE_41 -#define SK_SEQ_SIZE_41(_) SK_SEQ_SIZE_42 -#define SK_SEQ_SIZE_42(_) SK_SEQ_SIZE_43 -#define SK_SEQ_SIZE_43(_) SK_SEQ_SIZE_44 -#define SK_SEQ_SIZE_44(_) SK_SEQ_SIZE_45 -#define SK_SEQ_SIZE_45(_) SK_SEQ_SIZE_46 -#define SK_SEQ_SIZE_46(_) SK_SEQ_SIZE_47 -#define SK_SEQ_SIZE_47(_) SK_SEQ_SIZE_48 -#define SK_SEQ_SIZE_48(_) SK_SEQ_SIZE_49 -#define SK_SEQ_SIZE_49(_) SK_SEQ_SIZE_50 -#define SK_SEQ_SIZE_50(_) SK_SEQ_SIZE_51 -#define SK_SEQ_SIZE_51(_) SK_SEQ_SIZE_52 -#define SK_SEQ_SIZE_52(_) SK_SEQ_SIZE_53 -#define SK_SEQ_SIZE_53(_) SK_SEQ_SIZE_54 -#define SK_SEQ_SIZE_54(_) SK_SEQ_SIZE_55 -#define SK_SEQ_SIZE_55(_) SK_SEQ_SIZE_56 -#define SK_SEQ_SIZE_56(_) SK_SEQ_SIZE_57 -#define SK_SEQ_SIZE_57(_) SK_SEQ_SIZE_58 -#define SK_SEQ_SIZE_58(_) SK_SEQ_SIZE_59 -#define SK_SEQ_SIZE_59(_) SK_SEQ_SIZE_60 -#define SK_SEQ_SIZE_60(_) SK_SEQ_SIZE_61 -#define SK_SEQ_SIZE_61(_) SK_SEQ_SIZE_62 -#define SK_SEQ_SIZE_62(_) SK_SEQ_SIZE_63 -#define SK_SEQ_SIZE_63(_) SK_SEQ_SIZE_64 -#define SK_SEQ_SIZE_64(_) SK_SEQ_SIZE_65 -#define SK_SEQ_SIZE_65(_) SK_SEQ_SIZE_66 -#define SK_SEQ_SIZE_66(_) SK_SEQ_SIZE_67 -#define SK_SEQ_SIZE_67(_) SK_SEQ_SIZE_68 -#define SK_SEQ_SIZE_68(_) SK_SEQ_SIZE_69 -#define SK_SEQ_SIZE_69(_) SK_SEQ_SIZE_70 -#define SK_SEQ_SIZE_70(_) SK_SEQ_SIZE_71 -#define SK_SEQ_SIZE_71(_) SK_SEQ_SIZE_72 -#define SK_SEQ_SIZE_72(_) SK_SEQ_SIZE_73 -#define SK_SEQ_SIZE_73(_) SK_SEQ_SIZE_74 -#define SK_SEQ_SIZE_74(_) SK_SEQ_SIZE_75 -#define SK_SEQ_SIZE_75(_) SK_SEQ_SIZE_76 -#define SK_SEQ_SIZE_76(_) SK_SEQ_SIZE_77 -#define SK_SEQ_SIZE_77(_) SK_SEQ_SIZE_78 -#define SK_SEQ_SIZE_78(_) SK_SEQ_SIZE_79 -#define SK_SEQ_SIZE_79(_) SK_SEQ_SIZE_80 -#define SK_SEQ_SIZE_80(_) SK_SEQ_SIZE_81 -#define SK_SEQ_SIZE_81(_) SK_SEQ_SIZE_82 -#define SK_SEQ_SIZE_82(_) SK_SEQ_SIZE_83 -#define SK_SEQ_SIZE_83(_) SK_SEQ_SIZE_84 -#define SK_SEQ_SIZE_84(_) SK_SEQ_SIZE_85 -#define SK_SEQ_SIZE_85(_) SK_SEQ_SIZE_86 -#define SK_SEQ_SIZE_86(_) SK_SEQ_SIZE_87 -#define SK_SEQ_SIZE_87(_) SK_SEQ_SIZE_88 -#define SK_SEQ_SIZE_88(_) SK_SEQ_SIZE_89 -#define SK_SEQ_SIZE_89(_) SK_SEQ_SIZE_90 -#define SK_SEQ_SIZE_90(_) SK_SEQ_SIZE_91 -#define SK_SEQ_SIZE_91(_) SK_SEQ_SIZE_92 -#define SK_SEQ_SIZE_92(_) SK_SEQ_SIZE_93 -#define SK_SEQ_SIZE_93(_) SK_SEQ_SIZE_94 -#define SK_SEQ_SIZE_94(_) SK_SEQ_SIZE_95 -#define SK_SEQ_SIZE_95(_) SK_SEQ_SIZE_96 -#define SK_SEQ_SIZE_96(_) SK_SEQ_SIZE_97 -#define SK_SEQ_SIZE_97(_) SK_SEQ_SIZE_98 -#define SK_SEQ_SIZE_98(_) SK_SEQ_SIZE_99 -#define SK_SEQ_SIZE_99(_) SK_SEQ_SIZE_100 -#define SK_SEQ_SIZE_100(_) SK_SEQ_SIZE_101 -#define SK_SEQ_SIZE_101(_) SK_SEQ_SIZE_102 -#define SK_SEQ_SIZE_102(_) SK_SEQ_SIZE_103 -#define SK_SEQ_SIZE_103(_) SK_SEQ_SIZE_104 -#define SK_SEQ_SIZE_104(_) SK_SEQ_SIZE_105 -#define SK_SEQ_SIZE_105(_) SK_SEQ_SIZE_106 -#define SK_SEQ_SIZE_106(_) SK_SEQ_SIZE_107 -#define SK_SEQ_SIZE_107(_) SK_SEQ_SIZE_108 -#define SK_SEQ_SIZE_108(_) SK_SEQ_SIZE_109 -#define SK_SEQ_SIZE_109(_) SK_SEQ_SIZE_110 -#define SK_SEQ_SIZE_110(_) SK_SEQ_SIZE_111 -#define SK_SEQ_SIZE_111(_) SK_SEQ_SIZE_112 -#define SK_SEQ_SIZE_112(_) SK_SEQ_SIZE_113 -#define SK_SEQ_SIZE_113(_) SK_SEQ_SIZE_114 -#define SK_SEQ_SIZE_114(_) SK_SEQ_SIZE_115 -#define SK_SEQ_SIZE_115(_) SK_SEQ_SIZE_116 -#define SK_SEQ_SIZE_116(_) SK_SEQ_SIZE_117 -#define SK_SEQ_SIZE_117(_) SK_SEQ_SIZE_118 -#define SK_SEQ_SIZE_118(_) SK_SEQ_SIZE_119 -#define SK_SEQ_SIZE_119(_) SK_SEQ_SIZE_120 -#define SK_SEQ_SIZE_120(_) SK_SEQ_SIZE_121 -#define SK_SEQ_SIZE_121(_) SK_SEQ_SIZE_122 -#define SK_SEQ_SIZE_122(_) SK_SEQ_SIZE_123 -#define SK_SEQ_SIZE_123(_) SK_SEQ_SIZE_124 -#define SK_SEQ_SIZE_124(_) SK_SEQ_SIZE_125 -#define SK_SEQ_SIZE_125(_) SK_SEQ_SIZE_126 -#define SK_SEQ_SIZE_126(_) SK_SEQ_SIZE_127 -#define SK_SEQ_SIZE_127(_) SK_SEQ_SIZE_128 -#define SK_SEQ_SIZE_128(_) SK_SEQ_SIZE_129 -#define SK_SEQ_SIZE_129(_) SK_SEQ_SIZE_130 -#define SK_SEQ_SIZE_130(_) SK_SEQ_SIZE_131 -#define SK_SEQ_SIZE_131(_) SK_SEQ_SIZE_132 -#define SK_SEQ_SIZE_132(_) SK_SEQ_SIZE_133 -#define SK_SEQ_SIZE_133(_) SK_SEQ_SIZE_134 -#define SK_SEQ_SIZE_134(_) SK_SEQ_SIZE_135 -#define SK_SEQ_SIZE_135(_) SK_SEQ_SIZE_136 -#define SK_SEQ_SIZE_136(_) SK_SEQ_SIZE_137 -#define SK_SEQ_SIZE_137(_) SK_SEQ_SIZE_138 -#define SK_SEQ_SIZE_138(_) SK_SEQ_SIZE_139 -#define SK_SEQ_SIZE_139(_) SK_SEQ_SIZE_140 -#define SK_SEQ_SIZE_140(_) SK_SEQ_SIZE_141 -#define SK_SEQ_SIZE_141(_) SK_SEQ_SIZE_142 -#define SK_SEQ_SIZE_142(_) SK_SEQ_SIZE_143 -#define SK_SEQ_SIZE_143(_) SK_SEQ_SIZE_144 -#define SK_SEQ_SIZE_144(_) SK_SEQ_SIZE_145 -#define SK_SEQ_SIZE_145(_) SK_SEQ_SIZE_146 -#define SK_SEQ_SIZE_146(_) SK_SEQ_SIZE_147 -#define SK_SEQ_SIZE_147(_) SK_SEQ_SIZE_148 -#define SK_SEQ_SIZE_148(_) SK_SEQ_SIZE_149 -#define SK_SEQ_SIZE_149(_) SK_SEQ_SIZE_150 -#define SK_SEQ_SIZE_150(_) SK_SEQ_SIZE_151 -#define SK_SEQ_SIZE_151(_) SK_SEQ_SIZE_152 -#define SK_SEQ_SIZE_152(_) SK_SEQ_SIZE_153 -#define SK_SEQ_SIZE_153(_) SK_SEQ_SIZE_154 -#define SK_SEQ_SIZE_154(_) SK_SEQ_SIZE_155 -#define SK_SEQ_SIZE_155(_) SK_SEQ_SIZE_156 -#define SK_SEQ_SIZE_156(_) SK_SEQ_SIZE_157 -#define SK_SEQ_SIZE_157(_) SK_SEQ_SIZE_158 -#define SK_SEQ_SIZE_158(_) SK_SEQ_SIZE_159 -#define SK_SEQ_SIZE_159(_) SK_SEQ_SIZE_160 -#define SK_SEQ_SIZE_160(_) SK_SEQ_SIZE_161 -#define SK_SEQ_SIZE_161(_) SK_SEQ_SIZE_162 -#define SK_SEQ_SIZE_162(_) SK_SEQ_SIZE_163 -#define SK_SEQ_SIZE_163(_) SK_SEQ_SIZE_164 -#define SK_SEQ_SIZE_164(_) SK_SEQ_SIZE_165 -#define SK_SEQ_SIZE_165(_) SK_SEQ_SIZE_166 -#define SK_SEQ_SIZE_166(_) SK_SEQ_SIZE_167 -#define SK_SEQ_SIZE_167(_) SK_SEQ_SIZE_168 -#define SK_SEQ_SIZE_168(_) SK_SEQ_SIZE_169 -#define SK_SEQ_SIZE_169(_) SK_SEQ_SIZE_170 -#define SK_SEQ_SIZE_170(_) SK_SEQ_SIZE_171 -#define SK_SEQ_SIZE_171(_) SK_SEQ_SIZE_172 -#define SK_SEQ_SIZE_172(_) SK_SEQ_SIZE_173 -#define SK_SEQ_SIZE_173(_) SK_SEQ_SIZE_174 -#define SK_SEQ_SIZE_174(_) SK_SEQ_SIZE_175 -#define SK_SEQ_SIZE_175(_) SK_SEQ_SIZE_176 -#define SK_SEQ_SIZE_176(_) SK_SEQ_SIZE_177 -#define SK_SEQ_SIZE_177(_) SK_SEQ_SIZE_178 -#define SK_SEQ_SIZE_178(_) SK_SEQ_SIZE_179 -#define SK_SEQ_SIZE_179(_) SK_SEQ_SIZE_180 -#define SK_SEQ_SIZE_180(_) SK_SEQ_SIZE_181 -#define SK_SEQ_SIZE_181(_) SK_SEQ_SIZE_182 -#define SK_SEQ_SIZE_182(_) SK_SEQ_SIZE_183 -#define SK_SEQ_SIZE_183(_) SK_SEQ_SIZE_184 -#define SK_SEQ_SIZE_184(_) SK_SEQ_SIZE_185 -#define SK_SEQ_SIZE_185(_) SK_SEQ_SIZE_186 -#define SK_SEQ_SIZE_186(_) SK_SEQ_SIZE_187 -#define SK_SEQ_SIZE_187(_) SK_SEQ_SIZE_188 -#define SK_SEQ_SIZE_188(_) SK_SEQ_SIZE_189 -#define SK_SEQ_SIZE_189(_) SK_SEQ_SIZE_190 -#define SK_SEQ_SIZE_190(_) SK_SEQ_SIZE_191 -#define SK_SEQ_SIZE_191(_) SK_SEQ_SIZE_192 -#define SK_SEQ_SIZE_192(_) SK_SEQ_SIZE_193 -#define SK_SEQ_SIZE_193(_) SK_SEQ_SIZE_194 -#define SK_SEQ_SIZE_194(_) SK_SEQ_SIZE_195 -#define SK_SEQ_SIZE_195(_) SK_SEQ_SIZE_196 -#define SK_SEQ_SIZE_196(_) SK_SEQ_SIZE_197 -#define SK_SEQ_SIZE_197(_) SK_SEQ_SIZE_198 -#define SK_SEQ_SIZE_198(_) SK_SEQ_SIZE_199 -#define SK_SEQ_SIZE_199(_) SK_SEQ_SIZE_200 -#define SK_SEQ_SIZE_200(_) SK_SEQ_SIZE_201 -#define SK_SEQ_SIZE_201(_) SK_SEQ_SIZE_202 -#define SK_SEQ_SIZE_202(_) SK_SEQ_SIZE_203 -#define SK_SEQ_SIZE_203(_) SK_SEQ_SIZE_204 -#define SK_SEQ_SIZE_204(_) SK_SEQ_SIZE_205 -#define SK_SEQ_SIZE_205(_) SK_SEQ_SIZE_206 -#define SK_SEQ_SIZE_206(_) SK_SEQ_SIZE_207 -#define SK_SEQ_SIZE_207(_) SK_SEQ_SIZE_208 -#define SK_SEQ_SIZE_208(_) SK_SEQ_SIZE_209 -#define SK_SEQ_SIZE_209(_) SK_SEQ_SIZE_210 -#define SK_SEQ_SIZE_210(_) SK_SEQ_SIZE_211 -#define SK_SEQ_SIZE_211(_) SK_SEQ_SIZE_212 -#define SK_SEQ_SIZE_212(_) SK_SEQ_SIZE_213 -#define SK_SEQ_SIZE_213(_) SK_SEQ_SIZE_214 -#define SK_SEQ_SIZE_214(_) SK_SEQ_SIZE_215 -#define SK_SEQ_SIZE_215(_) SK_SEQ_SIZE_216 -#define SK_SEQ_SIZE_216(_) SK_SEQ_SIZE_217 -#define SK_SEQ_SIZE_217(_) SK_SEQ_SIZE_218 -#define SK_SEQ_SIZE_218(_) SK_SEQ_SIZE_219 -#define SK_SEQ_SIZE_219(_) SK_SEQ_SIZE_220 -#define SK_SEQ_SIZE_220(_) SK_SEQ_SIZE_221 -#define SK_SEQ_SIZE_221(_) SK_SEQ_SIZE_222 -#define SK_SEQ_SIZE_222(_) SK_SEQ_SIZE_223 -#define SK_SEQ_SIZE_223(_) SK_SEQ_SIZE_224 -#define SK_SEQ_SIZE_224(_) SK_SEQ_SIZE_225 -#define SK_SEQ_SIZE_225(_) SK_SEQ_SIZE_226 -#define SK_SEQ_SIZE_226(_) SK_SEQ_SIZE_227 -#define SK_SEQ_SIZE_227(_) SK_SEQ_SIZE_228 -#define SK_SEQ_SIZE_228(_) SK_SEQ_SIZE_229 -#define SK_SEQ_SIZE_229(_) SK_SEQ_SIZE_230 -#define SK_SEQ_SIZE_230(_) SK_SEQ_SIZE_231 -#define SK_SEQ_SIZE_231(_) SK_SEQ_SIZE_232 -#define SK_SEQ_SIZE_232(_) SK_SEQ_SIZE_233 -#define SK_SEQ_SIZE_233(_) SK_SEQ_SIZE_234 -#define SK_SEQ_SIZE_234(_) SK_SEQ_SIZE_235 -#define SK_SEQ_SIZE_235(_) SK_SEQ_SIZE_236 -#define SK_SEQ_SIZE_236(_) SK_SEQ_SIZE_237 -#define SK_SEQ_SIZE_237(_) SK_SEQ_SIZE_238 -#define SK_SEQ_SIZE_238(_) SK_SEQ_SIZE_239 -#define SK_SEQ_SIZE_239(_) SK_SEQ_SIZE_240 -#define SK_SEQ_SIZE_240(_) SK_SEQ_SIZE_241 -#define SK_SEQ_SIZE_241(_) SK_SEQ_SIZE_242 -#define SK_SEQ_SIZE_242(_) SK_SEQ_SIZE_243 -#define SK_SEQ_SIZE_243(_) SK_SEQ_SIZE_244 -#define SK_SEQ_SIZE_244(_) SK_SEQ_SIZE_245 -#define SK_SEQ_SIZE_245(_) SK_SEQ_SIZE_246 -#define SK_SEQ_SIZE_246(_) SK_SEQ_SIZE_247 -#define SK_SEQ_SIZE_247(_) SK_SEQ_SIZE_248 -#define SK_SEQ_SIZE_248(_) SK_SEQ_SIZE_249 -#define SK_SEQ_SIZE_249(_) SK_SEQ_SIZE_250 -#define SK_SEQ_SIZE_250(_) SK_SEQ_SIZE_251 -#define SK_SEQ_SIZE_251(_) SK_SEQ_SIZE_252 -#define SK_SEQ_SIZE_252(_) SK_SEQ_SIZE_253 -#define SK_SEQ_SIZE_253(_) SK_SEQ_SIZE_254 -#define SK_SEQ_SIZE_254(_) SK_SEQ_SIZE_255 -#define SK_SEQ_SIZE_255(_) SK_SEQ_SIZE_256 - - -#define SK_SEQ_SIZE_SK_SEQ_SIZE_0 0 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_1 1 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_2 2 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_3 3 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_4 4 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_5 5 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_6 6 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_7 7 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_8 8 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_9 9 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_10 10 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_11 11 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_12 12 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_13 13 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_14 14 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_15 15 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_16 16 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_17 17 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_18 18 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_19 19 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_20 20 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_21 21 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_22 22 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_23 23 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_24 24 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_25 25 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_26 26 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_27 27 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_28 28 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_29 29 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_30 30 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_31 31 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_32 32 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_33 33 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_34 34 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_35 35 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_36 36 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_37 37 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_38 38 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_39 39 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_40 40 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_41 41 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_42 42 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_43 43 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_44 44 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_45 45 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_46 46 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_47 47 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_48 48 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_49 49 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_50 50 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_51 51 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_52 52 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_53 53 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_54 54 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_55 55 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_56 56 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_57 57 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_58 58 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_59 59 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_60 60 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_61 61 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_62 62 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_63 63 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_64 64 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_65 65 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_66 66 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_67 67 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_68 68 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_69 69 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_70 70 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_71 71 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_72 72 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_73 73 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_74 74 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_75 75 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_76 76 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_77 77 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_78 78 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_79 79 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_80 80 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_81 81 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_82 82 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_83 83 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_84 84 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_85 85 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_86 86 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_87 87 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_88 88 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_89 89 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_90 90 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_91 91 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_92 92 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_93 93 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_94 94 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_95 95 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_96 96 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_97 97 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_98 98 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_99 99 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_100 100 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_101 101 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_102 102 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_103 103 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_104 104 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_105 105 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_106 106 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_107 107 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_108 108 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_109 109 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_110 110 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_111 111 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_112 112 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_113 113 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_114 114 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_115 115 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_116 116 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_117 117 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_118 118 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_119 119 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_120 120 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_121 121 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_122 122 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_123 123 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_124 124 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_125 125 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_126 126 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_127 127 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_128 128 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_129 129 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_130 130 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_131 131 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_132 132 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_133 133 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_134 134 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_135 135 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_136 136 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_137 137 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_138 138 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_139 139 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_140 140 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_141 141 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_142 142 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_143 143 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_144 144 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_145 145 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_146 146 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_147 147 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_148 148 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_149 149 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_150 150 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_151 151 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_152 152 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_153 153 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_154 154 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_155 155 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_156 156 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_157 157 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_158 158 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_159 159 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_160 160 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_161 161 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_162 162 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_163 163 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_164 164 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_165 165 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_166 166 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_167 167 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_168 168 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_169 169 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_170 170 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_171 171 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_172 172 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_173 173 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_174 174 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_175 175 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_176 176 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_177 177 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_178 178 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_179 179 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_180 180 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_181 181 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_182 182 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_183 183 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_184 184 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_185 185 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_186 186 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_187 187 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_188 188 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_189 189 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_190 190 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_191 191 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_192 192 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_193 193 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_194 194 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_195 195 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_196 196 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_197 197 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_198 198 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_199 199 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_200 200 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_201 201 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_202 202 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_203 203 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_204 204 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_205 205 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_206 206 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_207 207 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_208 208 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_209 209 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_210 210 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_211 211 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_212 212 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_213 213 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_214 214 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_215 215 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_216 216 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_217 217 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_218 218 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_219 219 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_220 220 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_221 221 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_222 222 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_223 223 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_224 224 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_225 225 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_226 226 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_227 227 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_228 228 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_229 229 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_230 230 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_231 231 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_232 232 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_233 233 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_234 234 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_235 235 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_236 236 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_237 237 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_238 238 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_239 239 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_240 240 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_241 241 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_242 242 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_243 243 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_244 244 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_245 245 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_246 246 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_247 247 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_248 248 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_249 249 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_250 250 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_251 251 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_252 252 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_253 253 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_254 254 -#define SK_SEQ_SIZE_SK_SEQ_SIZE_255 255 - - -#define SK_SEQ_FOREACH(op, data, seq) SK_SEQ_FOREACH_L(op, op, data, seq) -#define SK_SEQ_FOREACH_L(op, lop, data, seq) SK_CONCAT(SK_SEQ_FOREACH_, SK_SEQ_SIZE(seq)) (op, lop, data, SK_SEQ_HEAD(seq), SK_SEQ_TAIL(seq)) - -#define SK_SEQ_FOREACH_0(op,lop,d,x,t) -#define SK_SEQ_FOREACH_1(op,lop,d,x,t) lop(d,x) -#define SK_SEQ_FOREACH_2(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_1(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_3(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_2(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_4(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_3(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_5(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_4(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_6(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_5(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_7(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_6(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_8(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_7(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_9(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_8(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_10(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_9(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_11(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_10(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_12(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_11(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_13(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_12(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_14(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_13(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_15(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_14(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_16(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_15(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_17(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_16(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_18(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_17(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_19(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_18(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_20(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_19(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_21(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_20(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_22(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_21(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_23(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_22(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_24(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_23(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_25(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_24(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_26(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_25(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_27(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_26(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_28(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_27(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_29(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_28(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_30(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_29(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_31(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_30(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_32(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_31(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_33(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_32(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_34(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_33(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_35(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_34(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_36(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_35(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_37(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_36(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_38(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_37(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_39(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_38(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_40(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_39(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_41(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_40(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_42(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_41(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_43(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_42(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_44(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_43(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_45(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_44(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_46(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_45(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_47(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_46(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_48(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_47(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_49(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_48(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_50(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_49(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_51(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_50(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_52(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_51(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_53(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_52(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_54(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_53(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_55(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_54(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_56(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_55(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_57(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_56(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_58(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_57(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_59(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_58(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_60(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_59(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_61(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_60(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_62(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_61(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_63(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_62(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_64(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_63(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_65(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_64(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_66(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_65(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_67(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_66(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_68(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_67(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_69(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_68(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_70(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_69(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_71(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_70(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_72(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_71(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_73(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_72(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_74(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_73(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_75(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_74(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_76(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_75(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_77(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_76(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_78(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_77(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_79(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_78(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_80(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_79(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_81(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_80(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_82(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_81(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_83(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_82(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_84(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_83(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_85(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_84(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_86(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_85(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_87(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_86(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_88(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_87(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_89(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_88(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_90(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_89(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_91(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_90(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_92(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_91(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_93(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_92(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_94(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_93(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_95(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_94(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_96(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_95(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_97(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_96(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_98(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_97(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_99(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_98(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_100(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_99(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_101(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_100(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_102(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_101(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_103(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_102(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_104(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_103(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_105(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_104(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_106(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_105(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_107(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_106(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_108(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_107(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_109(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_108(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_110(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_109(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_111(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_110(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_112(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_111(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_113(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_112(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_114(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_113(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_115(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_114(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_116(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_115(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_117(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_116(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_118(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_117(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_119(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_118(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_120(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_119(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_121(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_120(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_122(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_121(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_123(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_122(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_124(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_123(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_125(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_124(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_126(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_125(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_127(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_126(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_128(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_127(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_129(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_128(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_130(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_129(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_131(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_130(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_132(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_131(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_133(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_132(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_134(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_133(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_135(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_134(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_136(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_135(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_137(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_136(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_138(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_137(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_139(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_138(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_140(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_139(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_141(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_140(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_142(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_141(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_143(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_142(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_144(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_143(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_145(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_144(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_146(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_145(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_147(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_146(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_148(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_147(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_149(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_148(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_150(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_149(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_151(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_150(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_152(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_151(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_153(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_152(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_154(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_153(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_155(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_154(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_156(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_155(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_157(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_156(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_158(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_157(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_159(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_158(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_160(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_159(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_161(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_160(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_162(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_161(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_163(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_162(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_164(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_163(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_165(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_164(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_166(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_165(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_167(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_166(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_168(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_167(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_169(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_168(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_170(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_169(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_171(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_170(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_172(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_171(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_173(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_172(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_174(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_173(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_175(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_174(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_176(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_175(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_177(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_176(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_178(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_177(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_179(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_178(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_180(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_179(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_181(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_180(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_182(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_181(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_183(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_182(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_184(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_183(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_185(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_184(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_186(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_185(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_187(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_186(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_188(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_187(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_189(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_188(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_190(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_189(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_191(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_190(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_192(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_191(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_193(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_192(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_194(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_193(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_195(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_194(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_196(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_195(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_197(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_196(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_198(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_197(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_199(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_198(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_200(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_199(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_201(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_200(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_202(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_201(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_203(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_202(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_204(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_203(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_205(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_204(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_206(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_205(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_207(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_206(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_208(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_207(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_209(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_208(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_210(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_209(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_211(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_210(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_212(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_211(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_213(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_212(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_214(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_213(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_215(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_214(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_216(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_215(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_217(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_216(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_218(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_217(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_219(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_218(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_220(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_219(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_221(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_220(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_222(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_221(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_223(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_222(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_224(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_223(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_225(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_224(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_226(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_225(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_227(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_226(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_228(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_227(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_229(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_228(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_230(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_229(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_231(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_230(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_232(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_231(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_233(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_232(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_234(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_233(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_235(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_234(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_236(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_235(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_237(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_236(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_238(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_237(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_239(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_238(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_240(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_239(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_241(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_240(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_242(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_241(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_243(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_242(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_244(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_243(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_245(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_244(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_246(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_245(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_247(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_246(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_248(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_247(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_249(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_248(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_250(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_249(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_251(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_250(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_252(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_251(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_253(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_252(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_254(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_253(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) -#define SK_SEQ_FOREACH_255(op,lop,d,x,t) op(d,x) SK_SEQ_FOREACH_254(op, lop, d, SK_SEQ_HEAD(t), SK_SEQ_TAIL(t)) - -#define SK_SEQ_END (SK_NIL) - -#endif diff --git a/src/sfnt/SkTypedEnum.h b/src/sfnt/SkTypedEnum.h deleted file mode 100644 index 19d57acf0a..0000000000 --- a/src/sfnt/SkTypedEnum.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright 2012 Google Inc. - * - * Use of this source code is governed by a BSD-style license that can be - * found in the LICENSE file. - */ - -#ifndef SkTypedEnum_DEFINED -#define SkTypedEnum_DEFINED - -#include "SkPreprocessorSeq.h" - -//Compatibility with non-clang compilers. -#ifndef __has_feature - #define __has_feature(x) 0 -#endif -#ifndef __has_extension - #define __has_extension __has_feature -#endif - -//Detect if typed enums are supported. -#if defined(_MSC_VER) - #define SK_TYPED_ENUMS - -#elif defined(__clang__) && __has_extension(cxx_strong_enums) - #define SK_TYPED_ENUMS - -// Scoped enums are buggy in GCC 4.4.0 through 4.5.1. -// See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38064 -// __cplusplus should actually be accurate now. -// See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=1773 -#elif defined(__GNUC__) && (((__GNUC__*10000 + __GNUC_MINOR__*100 + __GNUC_PATCHLEVEL__ >= 40501) && defined(__GXX_EXPERIMENTAL_CXX0X__)) || __cplusplus >= 201103L) - #define SK_TYPED_ENUMS -#endif - -//Define what a typed enum looks like. -#ifdef SK_TYPED_ENUMS - - #define SK_TYPED_ENUM_VALUES(data, elem) \ - SK_PAIR_FIRST(elem) = SK_PAIR_SECOND(elem), - - #define SK_TYPED_ENUM_IDS(data, elem) \ - elem, - - #define SK_TYPED_ENUM_IDS_L(data, elem) \ - elem - - #define SK_TYPED_ENUM(enumName, enumType, enumSeq, idSeq) \ - enum enumName : enumType { \ - SK_SEQ_FOREACH(SK_TYPED_ENUM_VALUES, _, enumSeq) \ - } SK_SEQ_FOREACH_L(SK_TYPED_ENUM_IDS, SK_TYPED_ENUM_IDS_L, _, idSeq); - -#else - - #define SK_TYPED_ENUM_VALUES(enumType, elem) \ - static const enumType SK_PAIR_FIRST(elem) = SK_PAIR_SECOND(elem); - - #define SK_TYPED_ENUM_IDS(enumType, elem) \ - enumType elem; - - #define SK_TYPED_ENUM(enumName, enumType, enumSeq, idSeq) \ - typedef enumType enumName; \ - SK_SEQ_FOREACH(SK_TYPED_ENUM_VALUES, enumType, enumSeq) \ - SK_SEQ_FOREACH(SK_TYPED_ENUM_IDS, enumType, idSeq) - -#endif - -#endif |