From 429e46051dba814e7d6c74368eb1bba550222cbe Mon Sep 17 00:00:00 2001 From: Jonathan McCrohan Date: Thu, 1 Dec 2011 22:56:23 +0000 Subject: Imported Upstream version 1.4.8 --- TODO | 50 +++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 39 insertions(+), 11 deletions(-) (limited to 'TODO') diff --git a/TODO b/TODO index 3faa3e3..2df9070 100644 --- a/TODO +++ b/TODO @@ -1,16 +1,44 @@ +TO-DOs: -LONGER-TERM STUFF: +These are features that have been requested, and have been considered, +but are not yet implemented, because I'm undecided about how or whether they +should be implemented, and/or because they are difficult and/or time-consuming +to implement. -- Add a += operator, so that additional elements can be appended to a list or - array +Also, some of these features tend to push libconfig toward becoming a +general-purpose structured-data storage mechanism, which is really not the +intended purpose of this library. I think something like sqlite is better +suited for that sort of thing. -- Add support for #include's; a patch was submitted for this previously, but it - is not reentrant (uses static global variables), so can't be used as-is. I - just haven't gotten around to implementing this because it's not a trivial - change, and free time being in limited supply as it is... -- Add limited support for preserving comments? +* Add an option for safe type conversions; that is, report an error + rather than silently truncating out-of-range values to 0 (namely int64 -> + int). -- Add support for unicode strings? A bit problematic, since flex doesn't - support unicode input, AFAICT. But maybe a way to convert between - parsed UTF-8 strings and std::wstring. + +* Add support for copying settings from one configuration to another. Need a + recursive function to copy a setting and call itself on all child settings. + + +* Add a += operator, so that additional elements can be appended to a list or + array. The issue with this is defining a consistent syntax. For example: + + x = ( 1, 2, 3 ); + x += ( 4, 5 ); + + Should this result in ( 1, 2, 3, 4, 5 ), or ( 1, 2, 3, ( 4, 5 ))? I believe + it should be the latter. However, only the former makes sense for arrays. + + +* Add the ability to insert/delete elements at any position in a list or + array. A simple implementation would be expensive (shift all the elements + by one for every insert/delete), and a more efficient implementation would + add a lot of complexity to the library. + + +* Add limited support for preserving comments? + + +* Add support for unicode strings? A bit problematic, since flex doesn't + support unicode input, AFAICT. But maybe supply convenience functions to + convert between parsed UTF-8 strings and std::wstring. -- cgit v1.2.3