Add new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros.
authorDean Camera <dean@fourwalledcubicle.com>
Thu, 14 Jul 2011 00:11:51 +0000 (00:11 +0000)
committerDean Camera <dean@fourwalledcubicle.com>
Thu, 14 Jul 2011 00:11:51 +0000 (00:11 +0000)
LUFA/Common/Common.h
LUFA/ManPages/ChangeLog.txt

index d46f921..162d851 100644 (file)
                        #if !defined(MIN) || defined(__DOXYGEN__)
                                #define MIN(x, y)               ((x < y) ? x : y)
                        #endif
+                       
+                       #if !defined(STRINGIFY) || defined(__DOXYGEN__)
+                               /** Converts the given input into a string, via the C Preprocessor. This macro puts literal quotation
+                                *  marks around the input, converting the source into a string literal.
+                                *
+                                *  \param[in] x  Input to convert into a string literal.
+                                *
+                                *  \return String version of the input.
+                                */
+                               #define STRINGIFY(x)            #x
+
+                               /** Converts the given input into a string after macro expansion, via the C Preprocessor. This macro puts
+                                *  literal quotation marks around the expanded input, converting the source into a string literal.
+                                *
+                                *  \param[in] x  Input to expand and convert into a string literal.
+                                *
+                                *  \return String version of the expanded input.
+                                */
+                               #define STRINGIFY_EXPANDED(x)   STRINGIFY(x)
+                       #endif
 
                        #if (ARCH == ARCH_AVR8) || defined(__DOXYGEN__)
                                /** Defines a volatile \c NOP statement which cannot be optimized out by the compiler, and thus can always
index 2a28338..3b01ffe 100644 (file)
@@ -27,6 +27,7 @@
   *   - Added new USB_Host_ConfigurationNumber global variable to indicate the selected configuration in an attached device
   *   - Added new USB_Host_GetDeviceStatus() function to the host standard request function set
   *   - Added AVR USB XMEGA architecture port (currently incomplete/experimental)
+  *   - Added new STRINGIFY() and STRINGIFY_EXPANDED() convenience macros
   *  - Library Applications:
   *   - Added RNDIS device mode to the Webserver project
   *   - Added new incomplete AndroidAccessoryHost Host LowLevel demo