Rietveld Code Review Tool
Help | Bug tracker | Discussion group | Source code | Sign in
(433)

Unified Diff: lily/include/lily-guile-macros.hh

Issue 573670043: Refactor get/set_property to take the item as first argument
Patch Set: Manual completion of patch set Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Please Sign in to add in-line comments.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « lily/horizontal-bracket-engraver.cc ('k') | lily/instrument-name-engraver.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: lily/include/lily-guile-macros.hh
diff --git a/lily/include/lily-guile-macros.hh b/lily/include/lily-guile-macros.hh
index d2a752724749254df20a7b86ac85f88e0d7f3c5c..2b6ae03488b296b436751568f4c6099b6b40013e 100644
--- a/lily/include/lily-guile-macros.hh
+++ b/lily/include/lily-guile-macros.hh
@@ -202,24 +202,24 @@ void ly_check_name (const std::string &cxx, const std::string &fname);
LY_DEFINE_WITHOUT_DECL (CLASS ## FNAME, CLASS::FNAME, PRIMNAME, REQ, OPT, \
VAR, ARGLIST, DOCSTRING)
-#define get_property(x) internal_get_property (ly_symbol2scm (x))
-#define get_pure_property(x,y,z) \
- internal_get_pure_property (ly_symbol2scm (x), y, z)
-#define get_maybe_pure_property(w,x,y,z) \
- internal_get_maybe_pure_property (ly_symbol2scm (w), x, y, z)
-#define get_property_data(x) internal_get_property_data (ly_symbol2scm (x))
-#define get_object(x) internal_get_object (ly_symbol2scm (x))
-#define set_object(x, y) internal_set_object (ly_symbol2scm (x), y)
-#define del_property(x) internal_del_property (ly_symbol2scm (x))
+#define get_property(p,x) (p)->internal_get_property (ly_symbol2scm (x))
+#define get_pure_property(p,x,y,z) \
+ (p)->internal_get_pure_property (ly_symbol2scm (x), y, z)
+#define get_maybe_pure_property(p,w,x,y,z) \
+ (p)->internal_get_maybe_pure_property (ly_symbol2scm (w), x, y, z)
+#define get_property_data(p,x) (p)->internal_get_property_data (ly_symbol2scm (x))
+#define get_object(p,x) (p)->internal_get_object (ly_symbol2scm (x))
+#define set_object(p, x, y) (p)->internal_set_object (ly_symbol2scm (x), y)
+#define del_property(p,x) (p)->internal_del_property (ly_symbol2scm (x))
#ifdef DEBUG
/*
TODO: include modification callback support here, perhaps
through intermediate Grob::instrumented_set_property( .. __LINE__ ).
*/
-#define set_property(x, y) instrumented_set_property (ly_symbol2scm (x), y, __FILE__, __LINE__, __FUNCTION__)
+#define set_property(p, x, y) (p)->instrumented_set_property (ly_symbol2scm (x), y, __FILE__, __LINE__, __FUNCTION__)
#else
-#define set_property(x, y) internal_set_property (ly_symbol2scm (x), y)
+#define set_property(p, x, y) (p)->internal_set_property (ly_symbol2scm (x), y)
#endif
#define LY_ASSERT_TYPE(pred, var, number) \
« no previous file with comments | « lily/horizontal-bracket-engraver.cc ('k') | lily/instrument-name-engraver.cc » ('j') | no next file with comments »

Powered by Google App Engine
RSS Feeds Recent Issues | This issue
This is Rietveld f62528b