summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaciej Borzecki <maciej.borzecki@open-rnd.pl>2015-05-12 14:31:02 +0200
committerAlan Antonuk <alan.antonuk@gmail.com>2015-05-14 21:39:43 -0700
commit9027a94d7e9639c7a56f8886118097eca5aae9b4 (patch)
tree674563f6ad97a29500bd9c7544751b35d7ffedee
parent3ef3f5fe3180dde40b2716cb10c2143e8b396672 (diff)
downloadrabbitmq-c-9027a94d7e9639c7a56f8886118097eca5aae9b4.tar.gz
amqp: helper macro to generate AMQP_VERSION code
The helper macro makes it easier to add #if/#endif build time checks.
-rw-r--r--librabbitmq/amqp.h28
1 files changed, 23 insertions, 5 deletions
diff --git a/librabbitmq/amqp.h b/librabbitmq/amqp.h
index a19d5a8..8528669 100644
--- a/librabbitmq/amqp.h
+++ b/librabbitmq/amqp.h
@@ -229,6 +229,24 @@ AMQP_BEGIN_DECLS
/**
+ * \def AMQP_VERSION_CODE
+ *
+ * Helper macro to geneate a packed version code suitable for
+ * comparison with AMQP_VERSION.
+ *
+ * \sa amqp_version_number() AMQP_VERSION_MAJOR, AMQP_VERSION_MINOR,
+ * AMQP_VERSION_PATCH, AMQP_VERSION_IS_RELEASE, AMQP_VERSION
+ *
+ * \since v0.6.1
+ */
+#define AMQP_VERSION_CODE(major, minor, patch, release) \
+ ((major << 24) | \
+ (minor << 16) | \
+ (patch << 8) | \
+ (release))
+
+
+/**
* \def AMQP_VERSION
*
* Packed version number
@@ -242,14 +260,14 @@ AMQP_BEGIN_DECLS
* 0x02030401
*
* \sa amqp_version_number() AMQP_VERSION_MAJOR, AMQP_VERSION_MINOR,
- * AMQP_VERSION_PATCH, AMQP_VERSION_IS_RELEASE
+ * AMQP_VERSION_PATCH, AMQP_VERSION_IS_RELEASE, AMQP_VERSION_CODE
*
* \since v0.4.0
*/
-#define AMQP_VERSION ((AMQP_VERSION_MAJOR << 24) | \
- (AMQP_VERSION_MINOR << 16) | \
- (AMQP_VERSION_PATCH << 8) | \
- (AMQP_VERSION_IS_RELEASE))
+#define AMQP_VERSION AMQP_VERSION_CODE(AMQP_VERSION_MAJOR, \
+ AMQP_VERSION_MINOR, \
+ AMQP_VERSION_PATCH, \
+ AMQP_VERSION_IS_RELEASE)
/** \cond HIDE_FROM_DOXYGEN */
#define AMQ_STRINGIFY(s) AMQ_STRINGIFY_HELPER(s)