Lines Matching refs:empty
8 [section:vmd_empty_ppdata Functionality for "empty" seqs and tuples]
10 Boost PP arrays and lists can be empty but seqs and tuples cannot.
11 The form of an empty array is '(0,())' and the form of an empty
13 an empty seq or an empty tuple. Instead for a seq it represents
14 a one element seq whose data is empty, while for a tuple it
15 represents a tuple with a size of 1 whose single element is empty.
17 Not having a way to represent an empty seq or tuple represents a
19 able to be "empty" is the only reason, when variadic macros are supported,
25 VMD as we have seen has functionality to tell when preprocessor data is "empty"
27 emptiness, when applied to a seq or tuple, as an empty seq or an empty tuple
28 respectively, thus allowing seqs and tuples to be empty, just as arrays and
31 However there is one large problem when treating emptiness as an empty seq or
32 empty tuple; Boost PP functionality for a seq or tuple knows nothing about it.
44 In order to use seqs and tuples which can be empty VMD defines a number
48 or tuple. A VMD seq is a seq which may be empty and a VMD tuple is a tuple
49 which may be empty. A VMD seq is therefore a superset of a normal seq and a
54 long as it is not empty. In other words there is no difference between a
55 non-empty VMD seq or a Boost PP seq, or between a non-empty VMD tuple and
75 [Converts an array to a VMD seq. If the array is empty the seq is empty, otherwise the conversion i…
82 [Converts an array to a VMD tuple. If the array is empty the tuple is empty, otherwise the conversi…
88 in Boost PP is that if the array is empty the VMD macros return emptiness
106 [Converts a list to a VMD seq. If the list is empty the seq is empty, otherwise the conversion is t…
113 [Converts a list to a VMD tuple. If the list is empty the tuple is empty, otherwise the conversion …
119 in Boost PP is that if the list is empty the VMD macros return emptiness
136 [Tests a sequence as a VMD seq. If the sequence is empty returns 1, otherwise returns the same as B…
143 [Pops an element from the end of a seq. If the seq has a single element returns an empty seq, other…
150 [Pops an element from the beginning of a seq. If the seq has a single element returns an empty seq,…
157 [Pushes an element onto the end of a VMD seq. If the VMD seq is empty the returned seq consists of …
164 [Pushes an element onto the beginning of a VMD seq. If the VMD seq is empty the returned seq consis…
171 … the seq has a single element and the index to be removed is 0 returns an empty seq, otherwise wor…
178 [Returns the number of elements in the VMD seq. If the seq is empty returns 0, otherwise works exac…
185 [Converts a VMD seq to a Boost PP array. If the seq is empty returns an empty array whose form is '…
192 [Converts a VMD seq to a Boost PP list. If the seq is empty returns an empty list whose form is 'BO…
199 [Converts a VMD seq to a VMD tuple. If the seq is empty returns an empty tuple, otherwise works exa…
206 but with the Boost PP equivalent macros working with an empty seq causes UB and
207 returning an empty seq can never occur.
223 [Tests a sequence as a VMD tuple. If the sequence is empty returns 1, otherwise returns the same as…
230 [Pops an element from the end of a tuple. If the tuple's size is 1 returns an empty tuple, otherwis…
237 [Pops an element from the beginning of a tuple. If the tuple's size is 1 returns an empty tuple, ot…
244 [Pushes an element onto the end of a VMD tuple. If the VMD tuple is empty the returned tuple consis…
251 [Pushes an element onto the beginning of a VMD tuple. If the VMD tuple is empty the returned tuple …
258 …he tuple has a single element and the index to be removed is 0 returns an empty tuple, otherwise w…
265 [Returns the number of elements in the VMD tuple. If the tuple is empty returns 0, otherwise works …
272 [Converts a VMD tuple to a Boost PP array. If the tuple is empty returns an empty array whose form …
279 [Converts a VMD tuple to a Boost PP list. If the tuple is empty returns an empty list whose form is…
286 [Converts a VMD tuple to a VMD seq. If the tuple is empty returns an empty seq, otherwise works exa…
293 but with the Boost PP equivalent macros working with an empty tuple causes UB and
294 returning an empty tuple can never occur.
305 sense when extended to work with a possible empty seq or empty tuple. For instance
306 BOOST_PP_SEQ_FIRST_N could not mean anything when passed an empty
307 seq and BOOST_PP_TUPLE_REM_CTOR could not mean anything when passed an empty tuple.
310 The set of functionality in VMD for working with a possibly empty seq or empty tuple makes
312 end up empty, take the seq or tuple size even when the seq or tuple is empty,
314 empty, and test for a VMD seq or a VMD tuple. This functionality should allow macro
315 programmers the ability to work with empty seqs and tuples while still using other
316 Boost PP seq and tuple functuionality to work with non-empty seqs and tuples. The
320 can never work with empty seqs or empty tuples.