Skip to content

Commit 4ac4cac

Browse files
committed
Merge pull request open-source-parsers#185 from open-source-parsers/drop-internal-map
`JSON_VALUE_USE_INTERNAL_MAP` and `JSON_USE_SIMPLE_INTERNAL_ALLOCATOR` did not actually compile with current compilers. In fact, as far as I can tell, they haven't worked since just after the 0.6.0-rc2 release. And according to blep, there are bugs, e.g. [this one](https://sourceforge.net/p/jsoncpp/bugs/27). It's probably better to hide the implementation of Value (maybe in the next major release) and to put experiments like this into completely separate classes.
2 parents 6c89844 + 4788764 commit 4ac4cac

13 files changed

+2
-1662
lines changed

amalgamate.py

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,6 @@ def amalgamate_source(source_top_dir=None,
118118
lib_json = "src/lib_json"
119119
source.add_file(os.path.join(lib_json, "json_tool.h"))
120120
source.add_file(os.path.join(lib_json, "json_reader.cpp"))
121-
source.add_file(os.path.join(lib_json, "json_batchallocator.h"))
122121
source.add_file(os.path.join(lib_json, "json_valueiterator.inl"))
123122
source.add_file(os.path.join(lib_json, "json_value.cpp"))
124123
source.add_file(os.path.join(lib_json, "json_writer.cpp"))

doc/doxyfile.in

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1946,8 +1946,7 @@ INCLUDE_FILE_PATTERNS = *.h
19461946
PREDEFINED = "_MSC_VER=1400" \
19471947
_CPPRTTI \
19481948
_WIN32 \
1949-
JSONCPP_DOC_EXCLUDE_IMPLEMENTATION \
1950-
JSON_VALUE_USE_INTERNAL_MAP
1949+
JSONCPP_DOC_EXCLUDE_IMPLEMENTATION
19511950

19521951
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
19531952
# tag can be used to specify a list of macro names that should be expanded. The

doc/web_doxyfile.in

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1946,8 +1946,7 @@ INCLUDE_FILE_PATTERNS = *.h
19461946
PREDEFINED = "_MSC_VER=1400" \
19471947
_CPPRTTI \
19481948
_WIN32 \
1949-
JSONCPP_DOC_EXCLUDE_IMPLEMENTATION \
1950-
JSON_VALUE_USE_INTERNAL_MAP
1949+
JSONCPP_DOC_EXCLUDE_IMPLEMENTATION
19511950

19521951
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
19531952
# tag can be used to specify a list of macro names that should be expanded. The

include/json/config.h

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,6 @@
1515
/// std::map
1616
/// as Value container.
1717
//# define JSON_USE_CPPTL_SMALLMAP 1
18-
/// If defined, indicates that Json specific container should be used
19-
/// (hash table & simple deque container with customizable allocator).
20-
/// THIS FEATURE IS STILL EXPERIMENTAL! There is know bugs: See #3177332
21-
//# define JSON_VALUE_USE_INTERNAL_MAP 1
22-
/// Force usage of standard new/malloc based allocator instead of memory pool
23-
/// based allocator.
24-
/// The memory pools allocator used optimization (initializing Value and
25-
/// ValueInternalLink
26-
/// as if it was a POD) that may cause some validation tool to report errors.
27-
/// Only has effects if JSON_VALUE_USE_INTERNAL_MAP is defined.
28-
//# define JSON_USE_SIMPLE_INTERNAL_ALLOCATOR 1
2918

3019
// If non-zero, the library uses exceptions to report bad input instead of C
3120
// assertion macros. The default is to use exceptions.

include/json/forwards.h

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,12 +31,6 @@ class Value;
3131
class ValueIteratorBase;
3232
class ValueIterator;
3333
class ValueConstIterator;
34-
#ifdef JSON_VALUE_USE_INTERNAL_MAP
35-
class ValueMapAllocator;
36-
class ValueInternalLink;
37-
class ValueInternalArray;
38-
class ValueInternalMap;
39-
#endif // #ifdef JSON_VALUE_USE_INTERNAL_MAP
4034

4135
} // namespace Json
4236

0 commit comments

Comments
 (0)