123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220 |
- Legend:
- - Bug fix
- + New feature
- * Changes
- ! Important
- 2018-01-22 __vic
- * libc_error doesn't use sprintf() for message formatting
- 2017-12-26 __vic
- + meta.h: index_sequence, make_index_sequence
- 2017-12-13 __vic
- * doc/html.xsl: more tolerant to retarded XSLT processors (oracle) TOC
- generation code
- 2017-12-08 __vic
- * meta.h:
- + remove_reference, remove_cvref
- + Template aliases for type transformers
- + waitable_event.h:
- + waitable_event for C++11 mode only
- 2017-12-07 __vic
- + GNU Make makefiles
- 2017-12-05 __vic
- * string_buffer can be compiled even when old compatible ABI is used by
- GNU libstdc++
- + Intel C++ 17.0+ compiler support
- 2017-11-28 __vic
- + string_utils.h: starts_with(), ends_with()
- 2017-11-14 __vic
- * to_text_append():
- - Small buffer for 8-byte long types
- - printf() "ll" length modifier is not always available
- * Using snprint() in C++11 mode
- 2017-09-21 __vic
- * ascii.h:
- * Moved from bits.h:
- * to_hex_digit_upper() -> ascii::toxdigit_upper()
- * to_hex_digit_lower() -> ascii::toxdigit_lower()
- * hex_to_number() -> ascii::xdigit_to_number()
- + ascii::todigit()
- + ascii::digit_to_number()
- 2017-09-18 __vic
- * Renamed io.h -> stdio_file.h
- 2017-09-14 __vic
- * readers.h removed. All content moved to:
- + readers/range.h (range_reader, range_reader_n)
- + readers/container.h (container_reader)
- + readers/cstring.h (basic_cstring_reader, cstring_reader)
- * writers.h removed. All content moved to:
- + writers/push_back.h (push_back_writer)
- * string_utils.h:
- * string_reader moved to:
- + readers/string.h
- * string_writer moved to:
- + writers/string.h
- * io.h:
- * cstream_reader moved to:
- + readers/cstream.h
- * cstream_writer moved to:
- + writers/cstream.h
- + read(std::FILE *, unsigned char &)
- + readers/cstream.h: cstream_reader: read(unsigned char &)
- * readers/cstring.h:
- + basic_cstring_reader<char>: read(unsigned char &)
- * readers/string.h:
- + basic_string_reader
- + basic_string_reader<char>: read(unsigned char &)
- * writers/string.h:
- + basic_string_writer
- 2017-06-30 __vic
- * Renamed string_ops.h -> string_utils.h
- * Renamed static_string -> readonly_cstring
- 2017-01-31 __vic
- * str2num.h: std::strchr(s,0) returns non-const pointer on MinGW so
- tchar::end(s) is used instead
- 2017-01-30 __vic
- + readers.h:
- + range_reader
- + range_reader_n
- + container_reader
- + basic_cstring_reader, cstring_reader
- + writers.h:
- + push_back_writer
- * string_ops.h:
- + string_reader
- + string_writer
- * base16.h: base16: uses readers and writers
- * base64.h: base64: uses readers and writers
- * io.h:
- + read(std::FILE *, char &)
- + write(std::FILE *, char)
- + cstream_reader
- + cstream_writer
- 2017-01-23 __vic
- - str2num.h: C++98 mode
- + iterator.h:
- + begin(T[]), end(T[]), cbegin(T[]), cend(T[])
- + advance(), next(), prev()
- 2017-01-20 __vic
- + bin_file.h
- + bin_file
- + str2num.h: decimal_parser
- + base16.h:
- + base16::encode_lower(), base16::encode_upper(), base16::decode()
- + base64.h:
- + base64::encode(), base64::decode()
- + base64::encoded_length(), base64::max_decoded_length()
- 2017-01-16 __vic
- * throw_errno() moved: error.h -> throw_errno.h
- 2017-01-13 __vic
- + str2num.h
- + decimal_to_number()
- + decimal_to_number_range()
- 2017-01-12 __vic
- + meta.h:
- + integral_constant, true_type, false_type
- + is_same, is_const
- + remove_const, remove_volatile, remove_cv
- + remove_pointer
- + is_signed_integer, is_unsigned_integer
- + enable_if, disable_if
- + set_of_chars.h:
- + set_of_chars
- 2017-01-09 __vic
- * Renamed trim.h -> string_ops.h
- * string_ops.h:
- + pad_left(), pad_right()
- * sift() treats nullptr as an empty string
- + ascii_string.h:
- + toupper(), tolower() for strings
- + equal_icase() for strings
- 2016-12-30 __vic
- + ascii.h:
- + isdigit(), isxdigit(), isalpha(), isalnum(), isspace(), isascii()
- + islower(), isupper()
- + tolower(), toupper(), upper_to_lower(), lower_to_upper()
- + equal_icase(char,char)
- + date_time.h:
- + is_leap_year()
- + days_in_month()
- + days_between_years()
- + validate_date(), validate_time(), validate_date_time()
- 2016-12-29 __vic
- + stdint.h:
- + [u]int<N>_t, [u]int_least<N>_t, [u]int_fast<N>_t, [u]intmax_t,
- [u]intptr_t
- + int_exactly_bytes<>, uint_exactly_bytes<>
- + bits.h:
- + lo_nibble(), hi_nibble()
- + msb_ones(), lsb_ones()
- + get_lsbs()
- + ord()
- + to_hex_digit_upper(), to_hex_digit_lower()
- + hex_to_number()
- + swapped_nibbles()
- + rotl(), rotr()
- 2016-12-28 __vic
- + string_buffer: move constructor for std::string
- + logger.h:
- + logger
- 2016-12-26 __vic
- + string_ref.h:
- + basic_string_ref (string_ref)
- + string_buffer: string_ref support
- + trim.h:
- + trim(), trimmed(), trim_left(), ...
- + sift(), sift_if()
- 2016-12-23 __vic
- + io.h:
- + stdio_file
- + getline()
- + object_pool.h:
- + object_pool
- + tchar.h
- 2016-12-22 __vic
- + to_text.h:
- + to_text_append()
- + string_buffer.h:
- + string_buffer
- 2016-12-21 __vic
- + defs.h:
- + nullptr
- + non_copyable
- + non_heap_allocatable
- + array_size()
- + static_string.h:
- + static_string
- + error.h:
- + exception
- + libc_error
- + throw_errno()
- 2016-06-23 __vic
- * Total revision and rework started in order to publish the code
|