提交 39e1b6d0 编写于 作者: B Behdad Esfahbod

Convert boolean enum class consts to static constexpr

Part of https://github.com/harfbuzz/harfbuzz/issues/1553
上级 271cb7c1
......@@ -669,7 +669,7 @@ struct ClassTable
struct ObsoleteTypes
{
enum { extended = false };
static constexpr bool extended = false;
typedef HBUINT16 HBUINT;
typedef HBUINT8 HBUSHORT;
typedef ClassTable<HBUINT8> ClassTypeNarrow;
......@@ -699,7 +699,7 @@ struct ObsoleteTypes
};
struct ExtendedTypes
{
enum { extended = true };
static constexpr bool extended = true;
typedef HBUINT32 HBUINT;
typedef HBUINT16 HBUSHORT;
typedef Lookup<HBUINT16> ClassTypeNarrow;
......
......@@ -210,7 +210,7 @@ struct KerxSubTableFormat1
struct driver_context_t
{
enum { in_place = true };
static constexpr bool in_place = true;
enum
{
DontAdvance = Format1EntryT::DontAdvance,
......@@ -471,7 +471,7 @@ struct KerxSubTableFormat4
struct driver_context_t
{
enum { in_place = true };
static constexpr bool in_place = true;
enum Flags
{
Mark = 0x8000, /* If set, remember this glyph as the marked glyph. */
......
......@@ -54,7 +54,7 @@ struct RearrangementSubtable
struct driver_context_t
{
enum { in_place = true };
static constexpr bool in_place = true;
enum Flags
{
MarkFirst = 0x8000, /* If set, make the current glyph the first
......@@ -204,7 +204,7 @@ struct ContextualSubtable
struct driver_context_t
{
enum { in_place = true };
static constexpr bool in_place = true;
enum Flags
{
SetMark = 0x8000, /* If set, make the current glyph the marked glyph. */
......@@ -425,7 +425,7 @@ struct LigatureSubtable
struct driver_context_t
{
enum { in_place = false };
static constexpr bool in_place = false;
enum
{
DontAdvance = LigatureEntryT::DontAdvance,
......@@ -661,7 +661,7 @@ struct InsertionSubtable
struct driver_context_t
{
enum { in_place = false };
static constexpr bool in_place = false;
enum Flags
{
SetMark = 0x8000, /* If set, mark the current glyph. */
......
......@@ -553,26 +553,26 @@ hb_codepoint_parse (const char *s, unsigned int len, int base, hb_codepoint_t *o
struct HbOpOr
{
enum { passthru_left = true };
enum { passthru_right = true };
static constexpr bool passthru_left = true;
static constexpr bool passthru_right = true;
template <typename T> static void process (T &o, const T &a, const T &b) { o = a | b; }
};
struct HbOpAnd
{
enum { passthru_left = false };
enum { passthru_right = false };
static constexpr bool passthru_left = false;
static constexpr bool passthru_right = false;
template <typename T> static void process (T &o, const T &a, const T &b) { o = a & b; }
};
struct HbOpMinus
{
enum { passthru_left = true };
enum { passthru_right = false };
static constexpr bool passthru_left = true;
static constexpr bool passthru_right = false;
template <typename T> static void process (T &o, const T &a, const T &b) { o = a & ~b; }
};
struct HbOpXor
{
enum { passthru_left = true };
enum { passthru_right = true };
static constexpr bool passthru_left = true;
static constexpr bool passthru_right = true;
template <typename T> static void process (T &o, const T &a, const T &b) { o = a ^ b; }
};
......
......@@ -160,7 +160,7 @@ struct KernSubTable
struct KernOTSubTableHeader
{
enum { apple = false };
static constexpr bool apple = false;
typedef AAT::ObsoleteTypes Types;
unsigned int tuple_count () const { return 0; }
......@@ -215,7 +215,7 @@ struct KernOT : AAT::KerxTable<KernOT>
struct KernAATSubTableHeader
{
enum { apple = true };
static constexpr bool apple = true;
typedef AAT::ObsoleteTypes Types;
unsigned int tuple_count () const { return 0; }
......
......@@ -1300,7 +1300,7 @@ hb_ot_layout_feature_get_characters (hb_face_t *face,
struct GSUBProxy
{
enum { table_index = 0u };
enum { inplace = false };
static constexpr bool inplace = false;
typedef OT::SubstLookup Lookup;
GSUBProxy (hb_face_t *face) :
......@@ -1314,7 +1314,7 @@ struct GSUBProxy
struct GPOSProxy
{
enum { table_index = 1u };
enum { inplace = true };
static constexpr bool inplace = true;
typedef OT::PosLookup Lookup;
GPOSProxy (hb_face_t *face) :
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册