1[/ 2 (C) Copyright Edward Diener 2011-2015 3 Distributed under the Boost Software License, Version 1.0. 4 (See accompanying file LICENSE_1_0.txt or copy at 5 http://www.boost.org/LICENSE_1_0.txt). 6] 7 8[section:vmd_detail Functional groups] 9 10The particular constructs for which VMD has functionality 11can be divided into these categories: 12 13# Emptiness 14# Identifiers 15# Numbers 16# Types 17# Boost PP data types ( array, list, seq, and tuple ) 18# Sequences 19# Additional helper variadic macros 20 21The first six categories delineate the data types which VMD can parse. 22The last category presents additional macros which will prove helpful 23for a macro programmer using variadic macros with VMD and Boost PP. 24 25A general explanation of each of these categories will follow in the 26appropriate place in the documentation. 27 28VMD macros for working with the above data types which VMD 29understands can be divided into 'specific' and 'generic' macros. 30 31The specific macros ask whether some input data is a particular 32data type. The generic macros work with input data as any data 33type while allowing the programmer to separately query the type 34of data. 35 36Both specific and generic macros have their place and the macro 37programmer can decide which to use for any given situation. 38 39[endsect] 40