-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathChangeLog
More file actions
402 lines (290 loc) · 16.3 KB
/
ChangeLog
File metadata and controls
402 lines (290 loc) · 16.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
2014-09-16 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/rangeio: New header file.
* include/input.hpp: New header file.
(std::input): New function template (two overloads).
(std::rangeio_detail::range_input_operation): New class template.
(std::rangeio_detail::operator>> with std::rangeio_detail::range_input_operation&): New extract operator.
(std::rangeio_detail::operator>> with std::rangeio_detail::range_input_operation&&): New extract operator.
(std::rangeio_detail::iterator_type_of): New helper type.
(std::rangeio_detail::value_type_of): New helper type.
* include/output.hpp: New header file.
(std::write_all): New function template (four overloads).
(std::rangeio_detail::range_writer): New class template.
(std::rangeio_detail::operator<< with std::rangeio_detail::range_writer&): New insert operator.
(std::rangeio_detail::operator<< with std::rangeio_detail::range_writer&&): New insert operator.
(std::rangeio_detail::range_writer_delimited): New class template.
(std::rangeio_detail::operator<< with std::rangeio_detail::range_writer_delimited&): New insert operator.
(std::rangeio_detail::operator<< with std::rangeio_detail::range_writer_delimited&&): New insert operator.
* include/overwrite.hpp: New header file.
(std::overwrite): New function template.
(std::rangeio_detail::overwrite_behaviour): New class template.
* include/back_insert.hpp: New header file.
(std::back_insert): New function template.
(std::back_insert_n): New function template.
(std::rangeio_detail::back_insert_behaviour): New class template.
* include/front_insert.hpp: New header file.
(std::front_insert): New function template.
(std::front_insert_n): New function template.
(std::rangeio_detail::front_insert_behaviour): New class template.
* include/insert.hpp: New header file.
(std::insert): New function template.
(std::insert_n): New function template.
(std::rangeio_detail::insert_behaviour): New class template.
* include/stream-formatting-saver.hpp: New header file.
(std::rangeio_detail::stream_formatting_saver): New class template.
* include/stream_range: Header removed.
* test/Makefile:
Updated list of test objects.
Updated list of headers.
Moved iterators test to Boost test list.
Changed test exe name.
* test/overwrite.cpp:
Updated header.
(Overwrite, Types): Changed count() to count.
(Overwrite, ErrorChecking): Changed count() to count, added next test.
* test/back_insert.cpp:
Updated header.
(BackInsert, Types): Added list test, removed non-default constructor tests, changed count() to count.
(BackInsert, ErrorChecking): Changed count() to count, added next test.
(BackInsertN, Types): Added list test, removed non-default constructor tests, changed count() to count.
(BackInsertN, ErrorChecking): Changed count() to count, added next test.
* test/front_insert.cpp:
Updated header.
(FrontInsert, Types): Added list test, removed non-default constructor tests, changed count() to count.
(FrontInsert, ErrorChecking): Changed count() to count, added next test.
(FrontInsertN, Types): Added list test, removed non-default constructor tests, changed count() to count.
(FrontInsertN, ErrorChecking): Changed count() to count, added next test.
* test/insert.cpp:
Updated header.
(Insert, Types): Added list test, removed non-default constructor tests, changed count() to count.
(Insert, ErrorChecking): Changed count() to count, added next test.
(InsertN, Types): Added list test, removed non-default constructor tests, changed count() to count.
(InsertN, ErrorChecking): Changed count() to count, added next test.
* test/write_all.cpp:
Updated header.
(WriteAll, Types): Changed count() to count.
(WriteAll, ErrorChecking): Changed count() to count, added next test.
* test/write_all_delimited.cpp:
Updated header.
(WriteAllDelim, Types): Changed count() to count.
(WriteAllDelim, ErrorChecking): Changed count() to count, added next test.
* test/iterators.cpp:
Updated header.
(Iterators, Input): Updated to write_all.
(Iterators, Output): Updated to write_all.
(Iterators, DelimitedOutput): Updated to write_all.
(incrementing_integer_delimiter): Removed mutable on counter.
(operator<< with incrementing_integer_delimiter&): Removed const on argument.
* test/boost.cpp:
Updated header.
(Boost, AdaptedOutput): Changed stream_range to write_all.
* test/input.cpp: Removed.
* test/output.cpp: Removed.
* doc/reference.html: Updated reference for v2.0.
* doc/specification.html: Updated specification for v2.0.
* doc/style/style.css: Fixed margins.
* doc/Ideas: Removed implemented ideas.
* AUTHORS: New project contributor records.
* README: Updated documentation.
* README.md: Updated documentation.
* INSTALL: Updated installation instructions.
* NEWS: Updated.
* .gitignore: Changed test exe name.
2014-08-02 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range:
(std::write_all): New function template (two overloads).
(std::range_writer): New class template.
(std::operator<< with std::range_writer const&): New insert operator.
(std::delimited_range_writer): New class template.
(std::operator<< with std::delimited_range_writer const&): New insert operator.
* test/Makefile: Added write_all.cpp and write_all_delimited.cpp tests.
* test/write_all.cpp: New test suite source file.
(WriteAll, Types): New test.
(WriteAll, LvalueRange): New test.
(WriteAll, RvalueRange): New test.
(WriteAll, ErrorChecking): New test.
(WriteAll, Formatting): New test.
(noncopyable_range): New class template.
(noncopyable_nonmoveable_range): New class template.
* test/write_all_delimited.cpp: New test suite source file.
(WriteAllDelim, Types): New test.
(WriteAllDelim, LvalueRange): New test.
(WriteAllDelim, RvalueRange): New test.
(WriteAllDelim, ErrorChecking): New test.
(WriteAllDelim, Formatting): New test.
(noncopyable_range): New class template.
(noncopyable_nonmoveable_range): New class template.
(incrementing_integer_delimiter): New class.
* doc/reference.html: New documentation file.
* doc/specification.html: Added documentation for write_all.
* doc/style/reference.css: New documentation style file.
* doc/style/specification.css: Style tweaks.
* doc/style/code.css: Style tweaks.
* doc/Ideas: New ideas added.
2014-07-25 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range: Removed documentation in comments.
(std::overwrite): New function template.
(std::range_overwriter): New class template.
(std::operator>> with std::range_overwriter&): New insert operator.
(std::operator>> with std::range_overwriter&&): New insert operator.
(std::back_insert_n): New function template (two overloads).
(std::range_back_inserter): Add support for n.
(std::operator>> with std::range_back_inserter&): Add support for n.
(std::operator>> with std::range_back_inserter&&): Add support for n.
(std::front_insert_n): New function template (two overloads).
(std::range_front_inserter): Add support for n.
(std::operator>> with std::range_front_inserter&): Add support for n.
(std::operator>> with std::range_front_inserter&&): Add support for n.
(std::insert): New function template (two overloads).
(std::insert_n): New function template (two overloads).
(std::range_inserter): New class template.
(std::operator>> with std::range_inserter&): New insert operator.
(std::operator>> with std::range_inserter&&): New insert operator.
(std::stream_range_detail::RangeIterator): New helper type.
(std::stream_range_detail::RangeValueType): New helper type.
* test/Makefile: Added overwrite.cpp and insert.cpp tests.
* test/back_insert.cpp: Added back_insert_n tests and swapped EXPECT_EQ args.
(BackInsert, Input): Swapped arguments in all EXPECT_EQ().
(BackInsert, ErrorChecking): Swapped arguments in all EXPECT_EQ().
(BackInsert, Formatting): Swapped arguments in all EXPECT_EQ().
(BackInsertN, Types): New test.
(BackInsertN, Input): New test.
* test/boost.cpp: Swapped arguments in all EXPECT_EQ().
(Boost, AdaptedOutput): Swapped arguments in all EXPECT_EQ().
* test/front_insert.cpp: Added front_insert_n tests and swapped EXPECT_EQ args.
(FrontInsert, Input): Swapped arguments in all EXPECT_EQ().
(FrontInsert, ErrorChecking): Swapped arguments in all EXPECT_EQ().
(FrontInsert, Formatting): Swapped arguments in all EXPECT_EQ().
(FrontInsertN, Types): New test.
(FrontInsertN, Input): New test.
* test/input.cpp: Swapped arguments in all EXPECT_EQ().
(Input, Range): Swapped arguments in all EXPECT_EQ().
(Input, Discarding): Swapped arguments in all EXPECT_EQ().
(Input, Formatting): Swapped arguments in all EXPECT_EQ().
* test/insert.cpp
(Insert, Types): New test.
(Insert, Input): New test.
(Insert, ErrorChecking): New test.
(Insert, Formatting): New test.
(InsertN, Types): New test.
(InsertN, Input): New test.
* test/iterators.cpp: Swapped arguments in all EXPECT_EQ().
(Iterators, Input): Test moved from input.cpp.
(Iterators, Output): Test moved from input.cpp.
(Iterators, DelimitedOutput): Test moved from output.cpp.
* test/output.cpp: Swapped arguments in all EXPECT_EQ().
(Output, LvalueRange): Swapped arguments in all EXPECT_EQ().
(Output, RvalueRange): Swapped arguments in all EXPECT_EQ().
(Output, Formatting): Swapped arguments in all EXPECT_EQ().
(DelimitedOutput, LvalueRange): Swapped arguments in all EXPECT_EQ().
(DelimitedOutput, RvalueRange): Swapped arguments in all EXPECT_EQ().
(DelimitedOutput, Formatting): Swapped arguments in all EXPECT_EQ().
* test/overwrite.cpp
(Overwrite, Types): New test.
(Overwrite, Input): New test.
(Overwrite, ErrorChecking): New test.
(Overwrite, Formatting): New test.
* doc/specification.html: Added documentation for overwrite and insert.
* doc/Ideas: New documentation file.
2014-07-24 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range: Removed documentation in comments.
* doc/specification.html: New documentation file.
* doc/style/specification.css: New documentation style file.
* doc/style/code.css: New documentation style file.
2014-07-23 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range: Added back_insert() and front_insert().
(std::back_insert): New function template (two overloads).
(std::range_back_inserter): New class template.
(std::operator>> with std::range_back_inserter&): New insert operator.
(std::operator>> with std::range_back_inserter&&): New insert operator.
(std::front_insert): New function template (two overloads).
(std::range_front_inserter): New class template.
(std::operator>> with std::range_front_inserter&): New insert operator.
(std::operator>> with std::range_front_inserter&&): New insert operator.
* test/Makefile: Added back_insert.cpp and front_insert.cpp tests.
* test/back_insert.cpp: New test suite source file.
(BackInsert, Types): New test.
(BackInsert, Input): New test.
(BackInsert, ErrorChecking): New test.
* test/front_insert.cpp: New test suite source file.
(FrontInsert, Types): New test.
(FrontInsert, Input): New test.
(FrontInsert, ErrorChecking): New test.
2014-07-22 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range: Added formatting support for input.
(std::operator>> with std::stream_range_detail::stream_range_proxy):
Added formatting save/restore
* test/input.cpp: Added test for formatted input (that currently fails).
(Input, Formatting): New test.
2014-07-21 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* include/stream_range: Added formatting support for output
(std::stream_range_detail::stream_formatting_saver): New class template.
(std::operator<< with std::stream_range_detail::stream_range_proxy):
Added formatting save/restore
(std::operator<< with std::stream_range_detail::stream_range_delimited_proxy):
Added formatting save/restore.
* test/Makefile: Added iterators.cpp test.
* test/input.cpp:
(Input, Iterators): Test moved to iterators.cpp.
* test/output.cpp: Fixed minor problems in formatting tests.
(Output, Formatting): Added missing negative sign from last double test
value.
(DelimitedOutput, Formatting): Added missing negative sign from last
double test value.
Removed delimiters from ends of expected.
(Output, Iterators): Test moved to iterators.cpp.
(DelimitedOutput, Iterators): Test moved to iterators.cpp.
* test/iterators.cpp: New test suite source file.
(Iterators, Input): Test moved from input.cpp.
(Iterators, Output): Test moved from input.cpp.
(Iterators, DelimitedOutput): Test moved from output.cpp.
2014-07-21 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* test/output.cpp: Added tests for formatted output (that currently fail).
(Output, Formatting): New test.
(DelimitedOutput, Formatting): New test.
2014-07-20 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* INSTALL: Reworded text about CXXFLAGS and added section for Boost testing.
* test/Makefile: Completely rewrote test suite makefile; now checks for
HAVE_BOOST option.
* test/boost.cpp: New test suite source file.
(Boost, AdaptedOutput): New test.
(is_even): New function object.
(is_odd): New function object.
2014-07-18 Mark A. Gibbs <indi.in.the.wired@gmail.com>
* COPYING: New project copyright documentaion.
Contains text of GPL3 from http://www.gnu.org/copyleft/gpl.html pages.
* AUTHORS: New project contributor records.
* THANKS: New project contributor records.
* README: New package information and documentation file.
* INSTALL: New installation documentation file.
* ChangeLog: New project change log.
* NEWS: New project history file.
* include/stream_range: New header file.
(std::stream_range): New function template (two overloads).
(std::stream_iterator_range): New function template (two overloads).
(std::stream_range_detail::iterator_range): New class template.
(std::stream_range_detail::make_iterator_range): New function template.
(std::stream_range_detail::stream_range_proxy): New class template.
(std::stream_range_detail::stream_range_delimited_proxy): New class template.
* test/Makefile: New test suite makefile.
* test/main.cpp: New test suite source file.
(main): New function.
* test/input.cpp: New test suite source file.
(Input, Range): New test.
(Input, Iterators): New test.
(Input, Discarding): New test.
* test/output.cpp: New test suite source file.
(Output, LvalueRange): New test.
(Output, RvalueRange): New test.
(Output, Iterators): New test.
(DelimitedOutput, LvalueRange): New test.
(DelimitedOutput, RvalueRange): New test.
(DelimitedOutput, Iterators): New test.
(noncopyable_range): New class template.
(noncopyable_nonmoveable_range): New class template.
(noncopyable_delimiter): New class template.
(noncopyable_nonmoveable_delimiter): New class template.
(incrementing_integer_delimiter): New class.
# Copyright 2014 Mark A. Gibbs
# Copying and distribution of this file, with or without modification, are
# permitted provided the copyright notice and this notice are preserved.