diff options
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 50 |
1 files changed, 39 insertions, 11 deletions
@@ -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. |