Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(152)

Side by Side Diff: third_party/harfbuzz-ng/src/hb-private.hh

Issue 1005693006: Roll harfbuzz-ng to 0.9.40 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright © 2007,2008,2009 Red Hat, Inc. 2 * Copyright © 2007,2008,2009 Red Hat, Inc.
3 * Copyright © 2011,2012 Google, Inc. 3 * Copyright © 2011,2012 Google, Inc.
4 * 4 *
5 * This is part of HarfBuzz, a text shaping library. 5 * This is part of HarfBuzz, a text shaping library.
6 * 6 *
7 * Permission is hereby granted, without written agreement and without 7 * Permission is hereby granted, without written agreement and without
8 * license or royalty fees, to use, copy, modify, and distribute this 8 * license or royalty fees, to use, copy, modify, and distribute this
9 * software and its documentation for any purpose, provided that the 9 * software and its documentation for any purpose, provided that the
10 * above copyright notice and the following two paragraphs appear in 10 * above copyright notice and the following two paragraphs appear in
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
87 #endif 87 #endif
88 88
89 #ifndef HB_INTERNAL 89 #ifndef HB_INTERNAL
90 # if !defined(__MINGW32__) && !defined(__CYGWIN__) 90 # if !defined(__MINGW32__) && !defined(__CYGWIN__)
91 # define HB_INTERNAL __attribute__((__visibility__("hidden"))) 91 # define HB_INTERNAL __attribute__((__visibility__("hidden")))
92 # else 92 # else
93 # define HB_INTERNAL 93 # define HB_INTERNAL
94 # endif 94 # endif
95 #endif 95 #endif
96 96
97 #ifdef _MSC_VER
98 #undef inline
99 #define inline __inline
100 #endif
101
102 #ifdef __STRICT_ANSI__
103 #undef inline
104 #define inline __inline__
105 #endif
106
107 #if __GNUC__ >= 3 97 #if __GNUC__ >= 3
108 #define HB_FUNC __PRETTY_FUNCTION__ 98 #define HB_FUNC __PRETTY_FUNCTION__
109 #elif defined(_MSC_VER) 99 #elif defined(_MSC_VER)
110 #define HB_FUNC __FUNCSIG__ 100 #define HB_FUNC __FUNCSIG__
111 #else 101 #else
112 #define HB_FUNC __func__ 102 #define HB_FUNC __func__
113 #endif 103 #endif
114 104
115 #if defined(_WIN32) || defined(__CYGWIN__) 105 #if defined(_WIN32) || defined(__CYGWIN__)
116 /* We need Windows Vista for both Uniscribe backend and for 106 /* We need Windows Vista for both Uniscribe backend and for
(...skipping 459 matching lines...) Expand 10 before | Expand all | Expand 10 after
576 static inline bool 566 static inline bool
577 _hb_debug (unsigned int level, 567 _hb_debug (unsigned int level,
578 unsigned int max_level) 568 unsigned int max_level)
579 { 569 {
580 return level < max_level; 570 return level < max_level;
581 } 571 }
582 572
583 #define DEBUG_LEVEL_ENABLED(WHAT, LEVEL) (_hb_debug ((LEVEL), HB_DEBUG_##WHAT)) 573 #define DEBUG_LEVEL_ENABLED(WHAT, LEVEL) (_hb_debug ((LEVEL), HB_DEBUG_##WHAT))
584 #define DEBUG_ENABLED(WHAT) (DEBUG_LEVEL_ENABLED (WHAT, 0)) 574 #define DEBUG_ENABLED(WHAT) (DEBUG_LEVEL_ENABLED (WHAT, 0))
585 575
576 static inline void
577 _hb_print_func (const char *func)
578 {
579 if (func)
580 {
581 unsigned int func_len = strlen (func);
582 /* Skip "static" */
583 if (0 == strncmp (func, "static ", 7))
584 func += 7;
585 /* Skip "typename" */
586 if (0 == strncmp (func, "typename ", 9))
587 func += 9;
588 /* Skip return type */
589 const char *space = strchr (func, ' ');
590 if (space)
591 func = space + 1;
592 /* Skip parameter list */
593 const char *paren = strchr (func, '(');
594 if (paren)
595 func_len = paren - func;
596 fprintf (stderr, "%.*s", func_len, func);
597 }
598 }
599
586 template <int max_level> static inline void 600 template <int max_level> static inline void
587 _hb_debug_msg_va (const char *what, 601 _hb_debug_msg_va (const char *what,
588 const void *obj, 602 const void *obj,
589 const char *func, 603 const char *func,
590 bool indented, 604 bool indented,
591 unsigned int level, 605 unsigned int level,
592 int level_dir, 606 int level_dir,
593 const char *message, 607 const char *message,
594 va_list ap) HB_PRINTF_FUNC(7, 0); 608 va_list ap) HB_PRINTF_FUNC(7, 0);
595 template <int max_level> static inline void 609 template <int max_level> static inline void
(...skipping 25 matching lines...) Expand all
621 #define ULBAR "\342\225\257" /* U+256F BOX DRAWINGS LIGHT ARC UP AND LEFT */ 635 #define ULBAR "\342\225\257" /* U+256F BOX DRAWINGS LIGHT ARC UP AND LEFT */
622 #define LBAR "\342\225\264" /* U+2574 BOX DRAWINGS LIGHT LEFT */ 636 #define LBAR "\342\225\264" /* U+2574 BOX DRAWINGS LIGHT LEFT */
623 static const char bars[] = VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR; 637 static const char bars[] = VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR VBAR;
624 fprintf (stderr, "%2u %s" VRBAR "%s", 638 fprintf (stderr, "%2u %s" VRBAR "%s",
625 level, 639 level,
626 bars + sizeof (bars) - 1 - MIN ((unsigned int) sizeof (bars), (unsi gned int) (sizeof (VBAR) - 1) * level), 640 bars + sizeof (bars) - 1 - MIN ((unsigned int) sizeof (bars), (unsi gned int) (sizeof (VBAR) - 1) * level),
627 level_dir ? (level_dir > 0 ? DLBAR : ULBAR) : LBAR); 641 level_dir ? (level_dir > 0 ? DLBAR : ULBAR) : LBAR);
628 } else 642 } else
629 fprintf (stderr, " " VRBAR LBAR); 643 fprintf (stderr, " " VRBAR LBAR);
630 644
631 if (func) 645 _hb_print_func (func);
632 {
633 unsigned int func_len = strlen (func);
634 #ifndef HB_DEBUG_VERBOSE
635 /* Skip "typename" */
636 if (0 == strncmp (func, "typename ", 9))
637 func += 9;
638 /* Skip return type */
639 const char *space = strchr (func, ' ');
640 if (space)
641 func = space + 1;
642 /* Skip parameter list */
643 const char *paren = strchr (func, '(');
644 if (paren)
645 func_len = paren - func;
646 #endif
647 fprintf (stderr, "%.*s: ", func_len, func);
648 }
649 646
650 if (message) 647 if (message)
648 {
649 fprintf (stderr, ": ");
651 vfprintf (stderr, message, ap); 650 vfprintf (stderr, message, ap);
651 }
652 652
653 fprintf (stderr, "\n"); 653 fprintf (stderr, "\n");
654 } 654 }
655 template <> inline void 655 template <> inline void
656 _hb_debug_msg_va<0> (const char *what HB_UNUSED, 656 _hb_debug_msg_va<0> (const char *what HB_UNUSED,
657 const void *obj HB_UNUSED, 657 const void *obj HB_UNUSED,
658 const char *func HB_UNUSED, 658 const char *func HB_UNUSED,
659 bool indented HB_UNUSED, 659 bool indented HB_UNUSED,
660 unsigned int level HB_UNUSED, 660 unsigned int level HB_UNUSED,
661 int level_dir HB_UNUSED, 661 int level_dir HB_UNUSED,
(...skipping 151 matching lines...) Expand 10 before | Expand all | Expand 10 after
813 template <> class hb_assert_unsigned_t<unsigned short> {}; 813 template <> class hb_assert_unsigned_t<unsigned short> {};
814 template <> class hb_assert_unsigned_t<unsigned int> {}; 814 template <> class hb_assert_unsigned_t<unsigned int> {};
815 template <> class hb_assert_unsigned_t<unsigned long> {}; 815 template <> class hb_assert_unsigned_t<unsigned long> {};
816 816
817 template <typename T> static inline bool 817 template <typename T> static inline bool
818 hb_in_range (T u, T lo, T hi) 818 hb_in_range (T u, T lo, T hi)
819 { 819 {
820 /* The sizeof() is here to force template instantiation. 820 /* The sizeof() is here to force template instantiation.
821 * I'm sure there are better ways to do this but can't think of 821 * I'm sure there are better ways to do this but can't think of
822 * one right now. Declaring a variable won't work as HB_UNUSED 822 * one right now. Declaring a variable won't work as HB_UNUSED
823 * is unsable on some platforms and unused types are less likely 823 * is unusable on some platforms and unused types are less likely
824 * to generate a warning than unused variables. */ 824 * to generate a warning than unused variables. */
825 ASSERT_STATIC (sizeof (hb_assert_unsigned_t<T>) >= 0); 825 ASSERT_STATIC (sizeof (hb_assert_unsigned_t<T>) >= 0);
826 826
827 /* The casts below are important as if T is smaller than int, 827 /* The casts below are important as if T is smaller than int,
828 * the subtract results will become a signed int! */ 828 * the subtract results will become a signed int! */
829 return (T)(u - lo) <= (T)(hi - lo); 829 return (T)(u - lo) <= (T)(hi - lo);
830 } 830 }
831 831
832 template <typename T> static inline bool 832 template <typename T> static inline bool
833 hb_in_ranges (T u, T lo1, T hi1, T lo2, T hi2) 833 hb_in_ranges (T u, T lo1, T hi1, T lo2, T hi2)
(...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after
931 hb_options (void) 931 hb_options (void)
932 { 932 {
933 if (unlikely (!_hb_options.i)) 933 if (unlikely (!_hb_options.i))
934 _hb_options_init (); 934 _hb_options_init ();
935 935
936 return _hb_options.opts; 936 return _hb_options.opts;
937 } 937 }
938 938
939 939
940 #endif /* HB_PRIVATE_HH */ 940 #endif /* HB_PRIVATE_HH */
OLDNEW
« no previous file with comments | « third_party/harfbuzz-ng/src/hb-ot-shape-fallback.cc ('k') | third_party/harfbuzz-ng/src/hb-set-private.hh » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698