(Tcl) Load a JsonArray
Demonstrates how to load a JsonArray.
Note: This example requires Chilkat v9.5.0.64 or greater.
load ./chilkat.dll
# This example requires Chilkat v9.5.0.64 or greater.
# Loading into a new JSON array is simple and straightforward.
set a [new_CkJsonArray]
CkJsonArray_Load $a "[ 1,2,3,4 ]"
# Output: [1,2,3,4]
puts [CkJsonArray_emit $a]
puts "--------"
# The JsonArray's Load and LoadSb methods have a peculiar behavior when
# it is already part of a JSON document. In this case, the JsonArray
# becomes detached, and the original document remains unchanged.
# This is intentional due to the nature of the internal implementation.
# For example:
set json [new_CkJsonObject]
CkJsonObject_Load $json "{ \"abc\": [ 1,2,3,4 ] }"
# Output: (json) {"abc":[1,2,3,4]}
puts "(json) [CkJsonObject_emit $json]"
puts "--------"
# abc is a CkJsonArray
set abc [CkJsonObject_ArrayOf $json "abc"]
# When Load is called, abc becomes it's own document, and the original is not modified.
CkJsonArray_Load $abc "[ 5,6,7,8 ]"
# Output: (abc) [5,6,7,8]
puts "(abc) [CkJsonArray_emit $abc]"
puts "--------"
# Output: (json) {"abc":[1,2,3,4]}
puts "(json) [CkJsonObject_emit $json]"
puts "--------"
delete_CkJsonArray $abc
delete_CkJsonArray $a
delete_CkJsonObject $json
|