[gtk/function-annotations: 14/16] csstypes: Add annotations and inlines
- From: Matthias Clasen <matthiasc src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk/function-annotations: 14/16] csstypes: Add annotations and inlines
- Date: Tue, 14 Sep 2021 17:17:53 +0000 (UTC)
commit 4bc8887e44d72ba233979ca65bddf78eea02f13f
Author: Matthias Clasen <mclasen redhat com>
Date: Tue Sep 14 13:13:18 2021 -0400
csstypes: Add annotations and inlines
Inline _gtk_css_change_for_sibling and
_gtk_css_change_for_child, and mark a few
other functions as const or malloc.
gtk/gtkcsstypes.c | 62 -------------------------------------------
gtk/gtkcsstypesprivate.h | 69 ++++++++++++++++++++++++++++++++++++++++++++----
2 files changed, 64 insertions(+), 67 deletions(-)
---
diff --git a/gtk/gtkcsstypes.c b/gtk/gtkcsstypes.c
index dd85bd58b1..fcbb47ca8d 100644
--- a/gtk/gtkcsstypes.c
+++ b/gtk/gtkcsstypes.c
@@ -22,68 +22,6 @@
#include "gtkcssnumbervalueprivate.h"
#include "gtkstylecontextprivate.h"
-GtkCssChange
-_gtk_css_change_for_sibling (GtkCssChange match)
-{
-#define BASE_STATES ( GTK_CSS_CHANGE_CLASS \
- | GTK_CSS_CHANGE_NAME \
- | GTK_CSS_CHANGE_ID \
- | GTK_CSS_CHANGE_FIRST_CHILD \
- | GTK_CSS_CHANGE_LAST_CHILD \
- | GTK_CSS_CHANGE_NTH_CHILD \
- | GTK_CSS_CHANGE_NTH_LAST_CHILD \
- | GTK_CSS_CHANGE_STATE \
- | GTK_CSS_CHANGE_HOVER \
- | GTK_CSS_CHANGE_DISABLED \
- | GTK_CSS_CHANGE_SELECTED \
- | GTK_CSS_CHANGE_BACKDROP)
-
-#define KEEP_STATES ( ~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE) \
- | GTK_CSS_CHANGE_NTH_CHILD \
- | GTK_CSS_CHANGE_NTH_LAST_CHILD)
-
- return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_SIBLING_SHIFT);
-
-#undef BASE_STATES
-#undef KEEP_STATES
-}
-
-GtkCssChange
-_gtk_css_change_for_child (GtkCssChange match)
-{
-#define BASE_STATES ( GTK_CSS_CHANGE_CLASS \
- | GTK_CSS_CHANGE_NAME \
- | GTK_CSS_CHANGE_ID \
- | GTK_CSS_CHANGE_FIRST_CHILD \
- | GTK_CSS_CHANGE_LAST_CHILD \
- | GTK_CSS_CHANGE_NTH_CHILD \
- | GTK_CSS_CHANGE_NTH_LAST_CHILD \
- | GTK_CSS_CHANGE_STATE \
- | GTK_CSS_CHANGE_HOVER \
- | GTK_CSS_CHANGE_DISABLED \
- | GTK_CSS_CHANGE_BACKDROP \
- | GTK_CSS_CHANGE_SELECTED \
- | GTK_CSS_CHANGE_SIBLING_CLASS \
- | GTK_CSS_CHANGE_SIBLING_NAME \
- | GTK_CSS_CHANGE_SIBLING_ID \
- | GTK_CSS_CHANGE_SIBLING_FIRST_CHILD \
- | GTK_CSS_CHANGE_SIBLING_LAST_CHILD \
- | GTK_CSS_CHANGE_SIBLING_NTH_CHILD \
- | GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD \
- | GTK_CSS_CHANGE_SIBLING_STATE \
- | GTK_CSS_CHANGE_SIBLING_HOVER \
- | GTK_CSS_CHANGE_SIBLING_DISABLED \
- | GTK_CSS_CHANGE_SIBLING_BACKDROP \
- | GTK_CSS_CHANGE_SIBLING_SELECTED)
-
-#define KEEP_STATES (~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE))
-
- return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_PARENT_SHIFT);
-
-#undef BASE_STATES
-#undef KEEP_STATES
-}
-
void
gtk_css_change_print (GtkCssChange change,
GString *string)
diff --git a/gtk/gtkcsstypesprivate.h b/gtk/gtkcsstypesprivate.h
index 8fc0c39c33..3846b1d581 100644
--- a/gtk/gtkcsstypesprivate.h
+++ b/gtk/gtkcsstypesprivate.h
@@ -452,16 +452,75 @@ typedef enum /*< skip >*/ {
GTK_CSS_FONT_VARIANT_EAST_ASIAN_RUBY = 1 << 9
} GtkCssFontVariantEastAsian;
-GtkCssChange _gtk_css_change_for_sibling (GtkCssChange match);
-GtkCssChange _gtk_css_change_for_child (GtkCssChange match);
+static inline GtkCssChange
+_gtk_css_change_for_sibling (GtkCssChange match)
+{
+#define BASE_STATES ( GTK_CSS_CHANGE_CLASS \
+ | GTK_CSS_CHANGE_NAME \
+ | GTK_CSS_CHANGE_ID \
+ | GTK_CSS_CHANGE_FIRST_CHILD \
+ | GTK_CSS_CHANGE_LAST_CHILD \
+ | GTK_CSS_CHANGE_NTH_CHILD \
+ | GTK_CSS_CHANGE_NTH_LAST_CHILD \
+ | GTK_CSS_CHANGE_STATE \
+ | GTK_CSS_CHANGE_HOVER \
+ | GTK_CSS_CHANGE_DISABLED \
+ | GTK_CSS_CHANGE_SELECTED \
+ | GTK_CSS_CHANGE_BACKDROP)
+
+#define KEEP_STATES ( ~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE) \
+ | GTK_CSS_CHANGE_NTH_CHILD \
+ | GTK_CSS_CHANGE_NTH_LAST_CHILD)
+
+ return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_SIBLING_SHIFT);
+
+#undef BASE_STATES
+#undef KEEP_STATES
+}
+
+static inline GtkCssChange
+_gtk_css_change_for_child (GtkCssChange match)
+{
+#define BASE_STATES ( GTK_CSS_CHANGE_CLASS \
+ | GTK_CSS_CHANGE_NAME \
+ | GTK_CSS_CHANGE_ID \
+ | GTK_CSS_CHANGE_FIRST_CHILD \
+ | GTK_CSS_CHANGE_LAST_CHILD \
+ | GTK_CSS_CHANGE_NTH_CHILD \
+ | GTK_CSS_CHANGE_NTH_LAST_CHILD \
+ | GTK_CSS_CHANGE_STATE \
+ | GTK_CSS_CHANGE_HOVER \
+ | GTK_CSS_CHANGE_DISABLED \
+ | GTK_CSS_CHANGE_BACKDROP \
+ | GTK_CSS_CHANGE_SELECTED \
+ | GTK_CSS_CHANGE_SIBLING_CLASS \
+ | GTK_CSS_CHANGE_SIBLING_NAME \
+ | GTK_CSS_CHANGE_SIBLING_ID \
+ | GTK_CSS_CHANGE_SIBLING_FIRST_CHILD \
+ | GTK_CSS_CHANGE_SIBLING_LAST_CHILD \
+ | GTK_CSS_CHANGE_SIBLING_NTH_CHILD \
+ | GTK_CSS_CHANGE_SIBLING_NTH_LAST_CHILD \
+ | GTK_CSS_CHANGE_SIBLING_STATE \
+ | GTK_CSS_CHANGE_SIBLING_HOVER \
+ | GTK_CSS_CHANGE_SIBLING_DISABLED \
+ | GTK_CSS_CHANGE_SIBLING_BACKDROP \
+ | GTK_CSS_CHANGE_SIBLING_SELECTED)
+
+#define KEEP_STATES (~(BASE_STATES|GTK_CSS_CHANGE_SOURCE|GTK_CSS_CHANGE_PARENT_STYLE))
+
+ return (match & KEEP_STATES) | ((match & BASE_STATES) << GTK_CSS_CHANGE_PARENT_SHIFT);
+
+#undef BASE_STATES
+#undef KEEP_STATES
+}
-GtkCssDimension gtk_css_unit_get_dimension (GtkCssUnit unit);
+GtkCssDimension gtk_css_unit_get_dimension (GtkCssUnit unit) G_GNUC_CONST;
-char * gtk_css_change_to_string (GtkCssChange change);
+char * gtk_css_change_to_string (GtkCssChange change) G_GNUC_MALLOC;
void gtk_css_change_print (GtkCssChange change,
GString *string);
-const char * gtk_css_pseudoclass_name (GtkStateFlags flags);
+const char * gtk_css_pseudoclass_name (GtkStateFlags flags) G_GNUC_CONST;
/* These hash functions are selected so they achieve 2 things:
* 1. collision free among each other
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]