mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-01-09 23:34:20 +00:00
JSON: Add new JSONUtils functions for working with JSON objects and pointers
This commit is contained in:
parent
d8b71b4eef
commit
33f999a9f0
41 changed files with 575 additions and 153 deletions
|
|
@ -1016,6 +1016,8 @@ add_library( ${BINARY_NAME}
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
@ -3082,6 +3084,8 @@ set_source_files_properties(
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
|
|||
|
|
@ -1313,6 +1313,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3332,6 +3335,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1930,6 +1930,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -5196,6 +5199,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1313,6 +1313,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3332,6 +3335,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1930,6 +1930,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -5196,6 +5199,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1313,6 +1313,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3332,6 +3335,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1930,6 +1930,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -5196,6 +5199,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -892,6 +892,8 @@ add_library( ${BINARY_NAME}
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
@ -2658,6 +2660,8 @@ set_source_files_properties(
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
|
|||
|
|
@ -1153,6 +1153,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -2888,6 +2891,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1639,6 +1639,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4476,6 +4479,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -925,6 +925,8 @@ add_library( ${BINARY_NAME}
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
@ -2844,6 +2846,8 @@ set_source_files_properties(
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
|
|||
|
|
@ -1161,6 +1161,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3068,6 +3071,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1714,6 +1714,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4752,6 +4755,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1161,6 +1161,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3068,6 +3071,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1714,6 +1714,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4752,6 +4755,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1161,6 +1161,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3068,6 +3071,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1714,6 +1714,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4752,6 +4755,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -220,6 +220,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -528,6 +531,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -160,6 +160,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -558,6 +561,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -896,6 +896,8 @@ add_library( ${BINARY_NAME}
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
@ -2742,6 +2744,8 @@ set_source_files_properties(
|
|||
"../../../../../modules/juce_core/javascript/juce_JSON.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation.h"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONSerialisation_test.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.cpp"
|
||||
"../../../../../modules/juce_core/javascript/juce_JSONUtils.h"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.cpp"
|
||||
"../../../../../modules/juce_core/logging/juce_FileLogger.h"
|
||||
"../../../../../modules/juce_core/logging/juce_Logger.cpp"
|
||||
|
|
|
|||
|
|
@ -1153,6 +1153,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -2979,6 +2982,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1669,6 +1669,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4617,6 +4620,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -356,6 +356,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -1821,6 +1824,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -637,6 +637,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -2631,6 +2634,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -356,6 +356,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -1821,6 +1824,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -637,6 +637,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -2631,6 +2634,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -356,6 +356,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -1821,6 +1824,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -637,6 +637,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -2631,6 +2634,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1169,6 +1169,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3134,6 +3137,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1738,6 +1738,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4842,6 +4845,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1169,6 +1169,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3134,6 +3137,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1738,6 +1738,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4842,6 +4845,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1169,6 +1169,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -3134,6 +3137,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1738,6 +1738,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4842,6 +4845,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -1152,6 +1152,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<ExcludedFromBuild>true</ExcludedFromBuild>
|
||||
</ClCompile>
|
||||
|
|
@ -2955,6 +2958,7 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_Javascript.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSON.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_Logger.h"/>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\maths\juce_BigInteger.h"/>
|
||||
|
|
|
|||
|
|
@ -1666,6 +1666,9 @@
|
|||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation_test.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.cpp">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClCompile>
|
||||
<ClCompile Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.cpp">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClCompile>
|
||||
|
|
@ -4584,6 +4587,9 @@
|
|||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONSerialisation.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\javascript\juce_JSONUtils.h">
|
||||
<Filter>JUCE Modules\juce_core\javascript</Filter>
|
||||
</ClInclude>
|
||||
<ClInclude Include="..\..\..\..\modules\juce_core\logging\juce_FileLogger.h">
|
||||
<Filter>JUCE Modules\juce_core\logging</Filter>
|
||||
</ClInclude>
|
||||
|
|
|
|||
|
|
@ -398,29 +398,32 @@ public:
|
|||
"hello world",
|
||||
{ 5, 6, 7 },
|
||||
{ { "foo", 4 }, { "bar", 5 } } }),
|
||||
makeObject ({ { "__version__", 2 },
|
||||
{ "a", 7 },
|
||||
{ "b", "hello world" },
|
||||
{ "c", Array<var> { 5, 6, 7 } },
|
||||
{ "d", Array<var> { makeObject ({ { "first", "bar" }, { "second", 5 } }),
|
||||
makeObject ({ { "first", "foo" }, { "second", 4 } }) } } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 2 },
|
||||
{ "a", 7 },
|
||||
{ "b", "hello world" },
|
||||
{ "c", Array<var> { 5, 6, 7 } },
|
||||
{ "d",
|
||||
Array<var> { JSONUtils::makeObject ({ { "first", "bar" },
|
||||
{ "second", 5 } }),
|
||||
JSONUtils::makeObject ({ { "first", "foo" },
|
||||
{ "second", 4 } }) } } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithInternalUnifiedSerialisation { 7.89,
|
||||
4.321f,
|
||||
"custom string",
|
||||
{ "foo", "bar", "baz" } }),
|
||||
makeObject ({ { "__version__", 5 },
|
||||
{ "a", 7.89 },
|
||||
{ "b", 4.321f },
|
||||
{ "c", "custom string" },
|
||||
{ "d", Array<var> { "foo", "bar", "baz" } } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 5 },
|
||||
{ "a", 7.89 },
|
||||
{ "b", 4.321f },
|
||||
{ "c", "custom string" },
|
||||
{ "d", Array<var> { "foo", "bar", "baz" } } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithExternalSplitSerialisation { "string", { 1, 2, 3 } }),
|
||||
makeObject ({ { "__version__", 10 },
|
||||
{ "a", makeObject ({ { "engaged", true }, { "value", "string" } }) },
|
||||
{ "b", Array<var> { "0x1", "0x2", "0x3" } } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 10 },
|
||||
{ "a", JSONUtils::makeObject ({ { "engaged", true }, { "value", "string" } }) },
|
||||
{ "b", Array<var> { "0x1", "0x2", "0x3" } } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithInternalSplitSerialisation { "string", { 16, 32, 48 } }),
|
||||
makeObject ({ { "__version__", 1 },
|
||||
{ "a", "string" },
|
||||
{ "b", Array<var> { "0x10", "0x20", "0x30" } } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 1 },
|
||||
{ "a", "string" },
|
||||
{ "b", Array<var> { "0x10", "0x20", "0x30" } } }));
|
||||
|
||||
expect (ToVar::convert (TypeWithBrokenObjectSerialisation { 1, 2 }) == std::nullopt);
|
||||
expect (ToVar::convert (TypeWithBrokenPrimitiveSerialisation { 1, 2 }) == std::nullopt);
|
||||
|
|
@ -429,69 +432,69 @@ public:
|
|||
expect (ToVar::convert (TypeWithBrokenDynamicSerialisation { std::vector<TypeWithBrokenObjectSerialisation> (10) }) == std::nullopt);
|
||||
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }),
|
||||
makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options{}.withVersionIncluded (false)),
|
||||
makeObject ({ { "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withVersionIncluded (false)),
|
||||
JSONUtils::makeObject ({ { "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
// Requested explicit version is higher than the type's declared version
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options{}.withExplicitVersion (4)),
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (4)),
|
||||
std::nullopt);
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (3)),
|
||||
makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (2)),
|
||||
makeObject ({ { "__version__", 2 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 2 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (1)),
|
||||
makeObject ({ { "__version__", 1 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 1 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (0)),
|
||||
makeObject ({ { "__version__", 0 },
|
||||
{ "a", 1 } }));
|
||||
JSONUtils::makeObject ({ { "__version__", 0 },
|
||||
{ "a", 1 } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithVersionedSerialisation { 1, 2, 3, 4 }, ToVar::Options {}.withExplicitVersion (std::nullopt)),
|
||||
makeObject ({ { "a", 1 } }));
|
||||
JSONUtils::makeObject ({ { "a", 1 } }));
|
||||
|
||||
expectDeepEqual (ToVar::convert (TypeWithRawVarLast { 200, "success", true }),
|
||||
makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", true } }));
|
||||
JSONUtils::makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", true } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithRawVarLast { 200,
|
||||
"success",
|
||||
makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) }),
|
||||
makeObject ({ { "status", 200 },
|
||||
{ "message", "success" },
|
||||
{ "extended", makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) } }));
|
||||
JSONUtils::makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) }),
|
||||
JSONUtils::makeObject ({ { "status", 200 },
|
||||
{ "message", "success" },
|
||||
{ "extended", JSONUtils::makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) } }));
|
||||
|
||||
expectDeepEqual (ToVar::convert (TypeWithRawVarFirst { 200, "success", true }),
|
||||
makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", true } }));
|
||||
JSONUtils::makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", true } }));
|
||||
expectDeepEqual (ToVar::convert (TypeWithRawVarFirst { 200,
|
||||
"success",
|
||||
makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) }),
|
||||
makeObject ({ { "status", 200 },
|
||||
{ "message", "success" },
|
||||
{ "extended", makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) } }));
|
||||
JSONUtils::makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) }),
|
||||
JSONUtils::makeObject ({ { "status", 200 },
|
||||
{ "message", "success" },
|
||||
{ "extended", JSONUtils::makeObject ({ { "status", 123.456 },
|
||||
{ "message", "failure" },
|
||||
{ "extended", true } }) } }));
|
||||
|
||||
const auto payload = makeObject ({ { "foo", 1 }, { "bar", 2 } });
|
||||
const auto payload = JSONUtils::makeObject ({ { "foo", 1 }, { "bar", 2 } });
|
||||
expectDeepEqual (ToVar::convert (TypeWithInnerVar { 404, payload }),
|
||||
makeObject ({ { "eventId", 404 }, { "payload", payload } }));
|
||||
JSONUtils::makeObject ({ { "eventId", 404 }, { "payload", payload } }));
|
||||
}
|
||||
|
||||
beginTest ("FromVar");
|
||||
|
|
@ -505,34 +508,37 @@ public:
|
|||
expect (FromVar::convert<int64> (JSON::fromString ("6")) == 6);
|
||||
expect (FromVar::convert<String> (JSON::fromString ("\"hello world\"")) == "hello world");
|
||||
expect (FromVar::convert<std::vector<int>> (JSON::fromString ("[1,2,3]")) == std::vector<int> { 1, 2, 3 });
|
||||
expect (FromVar::convert<TypeWithExternalUnifiedSerialisation> (makeObject ({ { "__version__", 2 },
|
||||
{ "a", 7 },
|
||||
{ "b", "hello world" },
|
||||
{ "c", Array<var> { 5, 6, 7 } },
|
||||
{ "d", Array<var> { makeObject ({ { "first", "bar" }, { "second", 5 } }),
|
||||
makeObject ({ { "first", "foo" }, { "second", 4 } }) } } }))
|
||||
expect (FromVar::convert<TypeWithExternalUnifiedSerialisation> (JSONUtils::makeObject ({ { "__version__", 2 },
|
||||
{ "a", 7 },
|
||||
{ "b", "hello world" },
|
||||
{ "c", Array<var> { 5, 6, 7 } },
|
||||
{ "d",
|
||||
Array<var> { JSONUtils::makeObject ({ { "first", "bar" },
|
||||
{ "second", 5 } }),
|
||||
JSONUtils::makeObject ({ { "first", "foo" },
|
||||
{ "second", 4 } }) } } }))
|
||||
== TypeWithExternalUnifiedSerialisation { 7,
|
||||
"hello world",
|
||||
{ 5, 6, 7 },
|
||||
{ { "foo", 4 }, { "bar", 5 } } });
|
||||
|
||||
expect (FromVar::convert<TypeWithInternalUnifiedSerialisation> (makeObject ({ { "__version__", 5 },
|
||||
{ "a", 7.89 },
|
||||
{ "b", 4.321f },
|
||||
{ "c", "custom string" },
|
||||
{ "d", Array<var> { "foo", "bar", "baz" } } }))
|
||||
expect (FromVar::convert<TypeWithInternalUnifiedSerialisation> (JSONUtils::makeObject ({ { "__version__", 5 },
|
||||
{ "a", 7.89 },
|
||||
{ "b", 4.321f },
|
||||
{ "c", "custom string" },
|
||||
{ "d", Array<var> { "foo", "bar", "baz" } } }))
|
||||
== TypeWithInternalUnifiedSerialisation { 7.89,
|
||||
4.321f,
|
||||
"custom string",
|
||||
{ "foo", "bar", "baz" } });
|
||||
|
||||
expect (FromVar::convert<TypeWithExternalSplitSerialisation> (makeObject ({ { "__version__", 10 },
|
||||
{ "a", makeObject ({ { "engaged", true }, { "value", "string" } }) },
|
||||
{ "b", Array<var> { "0x1", "0x2", "0x3" } } }))
|
||||
expect (FromVar::convert<TypeWithExternalSplitSerialisation> (JSONUtils::makeObject ({ { "__version__", 10 },
|
||||
{ "a", JSONUtils::makeObject ({ { "engaged", true }, { "value", "string" } }) },
|
||||
{ "b", Array<var> { "0x1", "0x2", "0x3" } } }))
|
||||
== TypeWithExternalSplitSerialisation { "string", { 1, 2, 3 } });
|
||||
expect (FromVar::convert<TypeWithInternalSplitSerialisation> (makeObject ({ { "__version__", 1 },
|
||||
{ "a", "string" },
|
||||
{ "b", Array<var> { "0x10", "0x20", "0x30" } } }))
|
||||
expect (FromVar::convert<TypeWithInternalSplitSerialisation> (JSONUtils::makeObject ({ { "__version__", 1 },
|
||||
{ "a", "string" },
|
||||
{ "b", Array<var> { "0x10", "0x20", "0x30" } } }))
|
||||
== TypeWithInternalSplitSerialisation { "string", { 16, 32, 48 } });
|
||||
|
||||
expect (FromVar::convert<TypeWithBrokenObjectSerialisation> (JSON::fromString ("null")) == std::nullopt);
|
||||
|
|
@ -541,47 +547,48 @@ public:
|
|||
expect (FromVar::convert<TypeWithBrokenNestedSerialisation> (JSON::fromString ("null")) == std::nullopt);
|
||||
expect (FromVar::convert<TypeWithBrokenDynamicSerialisation> (JSON::fromString ("null")) == std::nullopt);
|
||||
|
||||
expect (FromVar::convert<TypeWithInternalUnifiedSerialisation> (makeObject ({ { "a", 7.89 },
|
||||
{ "b", 4.321f } })) == std::nullopt);
|
||||
expect (FromVar::convert<TypeWithInternalUnifiedSerialisation> (JSONUtils::makeObject ({ { "a", 7.89 },
|
||||
{ "b", 4.321f } }))
|
||||
== std::nullopt);
|
||||
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "__version__", 3 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 2, 3, 4 });
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "__version__", 4 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "__version__", 4 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 },
|
||||
{ "d", 4 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 2, 3, 4 });
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "__version__", 2 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "__version__", 2 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 },
|
||||
{ "c", 3 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 2, 3, 0 });
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "__version__", 1 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "__version__", 1 },
|
||||
{ "a", 1 },
|
||||
{ "b", 2 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 2, 0, 0 });
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "__version__", 0 },
|
||||
{ "a", 1 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "__version__", 0 },
|
||||
{ "a", 1 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 0, 0, 0 });
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (makeObject ({ { "a", 1 } }))
|
||||
expect (FromVar::convert<TypeWithVersionedSerialisation> (JSONUtils::makeObject ({ { "a", 1 } }))
|
||||
== TypeWithVersionedSerialisation { 1, 0, 0, 0 });
|
||||
|
||||
const auto raw = makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", "another string" } });
|
||||
const auto raw = JSONUtils::makeObject ({ { "status", 200 }, { "message", "success" }, { "extended", "another string" } });
|
||||
expect (FromVar::convert<TypeWithRawVarLast> (raw) == TypeWithRawVarLast { 200, "success", "another string" });
|
||||
expect (FromVar::convert<TypeWithRawVarFirst> (raw) == TypeWithRawVarFirst { 200, "success", "another string" });
|
||||
|
||||
const var payloads[] { makeObject ({ { "foo", 1 }, { "bar", 2 } }),
|
||||
const var payloads[] { JSONUtils::makeObject ({ { "foo", 1 }, { "bar", 2 } }),
|
||||
var (Array<var> { 1, 2 }),
|
||||
var() };
|
||||
|
||||
for (const auto& payload : payloads)
|
||||
{
|
||||
const auto objectWithPayload = makeObject ({ { "eventId", 404 }, { "payload", payload } });
|
||||
const auto objectWithPayload = JSONUtils::makeObject ({ { "eventId", 404 }, { "payload", payload } });
|
||||
expect (FromVar::convert<TypeWithInnerVar> (objectWithPayload) == TypeWithInnerVar { 404, payload });
|
||||
}
|
||||
}
|
||||
|
|
@ -593,57 +600,12 @@ private:
|
|||
expect (deepEqual (a, b), a.has_value() && b.has_value() ? JSON::toString (*a) + " != " + JSON::toString (*b) : String());
|
||||
}
|
||||
|
||||
static var makeObject (const std::map<Identifier, var>& map)
|
||||
{
|
||||
auto obj = std::make_unique<DynamicObject>();
|
||||
|
||||
for (auto& [key, value] : map)
|
||||
obj->setProperty (key, value);
|
||||
|
||||
return obj.release();
|
||||
}
|
||||
|
||||
static bool deepEqual (const DynamicObject& a, const DynamicObject& b)
|
||||
{
|
||||
if (a.getProperties().size() != b.getProperties().size())
|
||||
return false;
|
||||
|
||||
for (const auto& [key, value] : a.getProperties())
|
||||
{
|
||||
if (! b.hasProperty (key))
|
||||
return false;
|
||||
|
||||
if (! deepEqual (value, b.getProperty (key)))
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
static bool deepEqual (const Array<var>& a, const Array<var>& b)
|
||||
{
|
||||
return std::equal (a.begin(), a.end(), b.begin(), b.end(), [] (const var& i, const var& j) { return deepEqual (i, j); });
|
||||
}
|
||||
|
||||
static bool deepEqual (const var& a, const var& b)
|
||||
{
|
||||
if (auto* i = a.getDynamicObject())
|
||||
if (auto* j = b.getDynamicObject())
|
||||
return deepEqual (*i, *j);
|
||||
|
||||
if (auto* i = a.getArray())
|
||||
if (auto* j = b.getArray())
|
||||
return deepEqual (*i, *j);
|
||||
|
||||
return a == b;
|
||||
}
|
||||
|
||||
static bool deepEqual (const std::optional<var>& a, const std::optional<var>& b)
|
||||
{
|
||||
if (a.has_value() != b.has_value())
|
||||
return false;
|
||||
if (a.has_value() && b.has_value())
|
||||
return JSONUtils::deepEqual (*a, *b);
|
||||
|
||||
return ! a.has_value() || deepEqual (*a, *b);
|
||||
return a == b;
|
||||
}
|
||||
};
|
||||
|
||||
|
|
|
|||
215
modules/juce_core/javascript/juce_JSONUtils.cpp
Normal file
215
modules/juce_core/javascript/juce_JSONUtils.cpp
Normal file
|
|
@ -0,0 +1,215 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This file is part of the JUCE library.
|
||||
Copyright (c) 2022 - Raw Material Software Limited
|
||||
|
||||
JUCE is an open source library subject to commercial or open-source
|
||||
licensing.
|
||||
|
||||
The code included in this file is provided under the terms of the ISC license
|
||||
http://www.isc.org/downloads/software-support-policy/isc-license. Permission
|
||||
To use, copy, modify, and/or distribute this software for any purpose with or
|
||||
without fee is hereby granted provided that the above copyright notice and
|
||||
this permission notice appear in all copies.
|
||||
|
||||
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
|
||||
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
|
||||
DISCLAIMED.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
namespace juce
|
||||
{
|
||||
|
||||
var JSONUtils::makeObject (const std::map<Identifier, var>& source)
|
||||
{
|
||||
auto result = std::make_unique<DynamicObject>();
|
||||
|
||||
for (const auto& [name, value] : source)
|
||||
result->setProperty (name, value);
|
||||
|
||||
return var (result.release());
|
||||
}
|
||||
|
||||
var JSONUtils::makeObjectWithKeyFirst (const std::map<Identifier, var>& source,
|
||||
Identifier key)
|
||||
{
|
||||
auto result = std::make_unique<DynamicObject>();
|
||||
|
||||
if (const auto iter = source.find (key); iter != source.end())
|
||||
result->setProperty (key, iter->second);
|
||||
|
||||
for (const auto& [name, value] : source)
|
||||
if (name != key)
|
||||
result->setProperty (name, value);
|
||||
|
||||
return var (result.release());
|
||||
}
|
||||
|
||||
std::optional<var> JSONUtils::setPointer (const var& v,
|
||||
String pointer,
|
||||
const var& newValue)
|
||||
{
|
||||
if (pointer.isEmpty())
|
||||
return newValue;
|
||||
|
||||
if (! pointer.startsWith ("/"))
|
||||
{
|
||||
// This is not a well-formed JSON pointer
|
||||
jassertfalse;
|
||||
return {};
|
||||
}
|
||||
|
||||
const auto findResult = pointer.indexOfChar (1, '/');
|
||||
const auto pos = findResult < 0 ? pointer.length() : findResult;
|
||||
const String head (pointer.begin() + 1, pointer.begin() + pos);
|
||||
const String tail (pointer.begin() + pos, pointer.end());
|
||||
|
||||
const auto unescaped = head.replace ("~1", "/").replace ("~0", "~");
|
||||
|
||||
if (auto* object = v.getDynamicObject())
|
||||
{
|
||||
if (const auto newProperty = setPointer (object->getProperty (unescaped), tail, newValue))
|
||||
{
|
||||
auto cloned = object->clone();
|
||||
cloned->setProperty (unescaped, *newProperty);
|
||||
return var (cloned.release());
|
||||
}
|
||||
}
|
||||
else if (auto* array = v.getArray())
|
||||
{
|
||||
const auto index = [&]() -> size_t
|
||||
{
|
||||
if (unescaped == "-")
|
||||
return (size_t) array->size();
|
||||
|
||||
if (unescaped == "0")
|
||||
return 0;
|
||||
|
||||
if (! unescaped.startsWith ("0"))
|
||||
return (size_t) unescaped.getLargeIntValue();
|
||||
|
||||
return std::numeric_limits<size_t>::max();
|
||||
}();
|
||||
|
||||
if (const auto newIndex = setPointer ((*array)[(int) index], tail, newValue))
|
||||
{
|
||||
auto copied = *array;
|
||||
|
||||
if ((int) index == copied.size())
|
||||
copied.add ({});
|
||||
|
||||
if (isPositiveAndBelow (index, copied.size()))
|
||||
{
|
||||
copied.getReference ((int) index) = *newIndex;
|
||||
return var (copied);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return {};
|
||||
}
|
||||
|
||||
bool JSONUtils::deepEqual (const var& a, const var& b)
|
||||
{
|
||||
const auto compareObjects = [] (const DynamicObject& x, const DynamicObject& y)
|
||||
{
|
||||
if (x.getProperties().size() != y.getProperties().size())
|
||||
return false;
|
||||
|
||||
for (const auto& [key, value] : x.getProperties())
|
||||
{
|
||||
if (! y.hasProperty (key))
|
||||
return false;
|
||||
|
||||
if (! deepEqual (value, y.getProperty (key)))
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
|
||||
if (auto* i = a.getDynamicObject())
|
||||
if (auto* j = b.getDynamicObject())
|
||||
return compareObjects (*i, *j);
|
||||
|
||||
if (auto* i = a.getArray())
|
||||
if (auto* j = b.getArray())
|
||||
return std::equal (i->begin(), i->end(), j->begin(), j->end(), [] (const var& x, const var& y) { return deepEqual (x, y); });
|
||||
|
||||
return a == b;
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
//==============================================================================
|
||||
#if JUCE_UNIT_TESTS
|
||||
|
||||
class JSONUtilsTests : public UnitTest
|
||||
{
|
||||
public:
|
||||
JSONUtilsTests() : UnitTest ("JSONUtils", UnitTestCategories::json) {}
|
||||
|
||||
void runTest() override
|
||||
{
|
||||
beginTest ("JSON pointers");
|
||||
{
|
||||
const auto obj = JSON::parse (R"({ "name": "PIANO 4"
|
||||
, "lfoSpeed": 30
|
||||
, "lfoWaveform": "triangle"
|
||||
, "pitchEnvelope": { "rates": [94,67,95,60], "levels": [50,50,50,50] }
|
||||
})");
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "", "hello world"), var ("hello world"));
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/lfoWaveform/foobar", "str"), std::nullopt);
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"({"foo":0,"bar":1})"), "/foo", 2), JSON::parse (R"({"foo":2,"bar":1})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"({"foo":0,"bar":1})"), "/baz", 2), JSON::parse (R"({"foo":0,"bar":1,"baz":2})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"({"foo":{},"bar":{}})"), "/foo/bar", 2), JSON::parse (R"({"foo":{"bar":2},"bar":{}})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/pitchEnvelope/rates/01", "str"), std::nullopt);
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/pitchEnvelope/rates/10", "str"), std::nullopt);
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/lfoSpeed", 10), JSON::parse (R"({ "name": "PIANO 4"
|
||||
, "lfoSpeed": 10
|
||||
, "lfoWaveform": "triangle"
|
||||
, "pitchEnvelope": { "rates": [94,67,95,60], "levels": [50,50,50,50] }
|
||||
})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"([0,1,2])"), "/0", "bang"), JSON::parse (R"(["bang",1,2])"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"([0,1,2])"), "/0", "bang"), JSON::parse (R"(["bang",1,2])"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"({"/":"fizz"})"), "/~1", "buzz"), JSON::parse (R"({"/":"buzz"})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (JSON::parse (R"({"~":"fizz"})"), "/~0", "buzz"), JSON::parse (R"({"~":"buzz"})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/pitchEnvelope/rates/0", 80), JSON::parse (R"({ "name": "PIANO 4"
|
||||
, "lfoSpeed": 30
|
||||
, "lfoWaveform": "triangle"
|
||||
, "pitchEnvelope": { "rates": [80,67,95,60], "levels": [50,50,50,50] }
|
||||
})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/pitchEnvelope/levels/0", 80), JSON::parse (R"({ "name": "PIANO 4"
|
||||
, "lfoSpeed": 30
|
||||
, "lfoWaveform": "triangle"
|
||||
, "pitchEnvelope": { "rates": [94,67,95,60], "levels": [80,50,50,50] }
|
||||
})"));
|
||||
expectDeepEqual (JSONUtils::setPointer (obj, "/pitchEnvelope/levels/-", 100), JSON::parse (R"({ "name": "PIANO 4"
|
||||
, "lfoSpeed": 30
|
||||
, "lfoWaveform": "triangle"
|
||||
, "pitchEnvelope": { "rates": [94,67,95,60], "levels": [50,50,50,50,100] }
|
||||
})"));
|
||||
}
|
||||
}
|
||||
|
||||
void expectDeepEqual (const std::optional<var>& a, const std::optional<var>& b)
|
||||
{
|
||||
expect (deepEqual (a, b), a.has_value() && b.has_value() ? JSON::toString (*a) + " != " + JSON::toString (*b) : String());
|
||||
}
|
||||
|
||||
static bool deepEqual (const std::optional<var>& a, const std::optional<var>& b)
|
||||
{
|
||||
if (a.has_value() && b.has_value())
|
||||
return JSONUtils::deepEqual (*a, *b);
|
||||
|
||||
return a == b;
|
||||
}
|
||||
};
|
||||
|
||||
static JSONUtilsTests jsonUtilsTests;
|
||||
|
||||
#endif
|
||||
|
||||
} // namespace juce
|
||||
67
modules/juce_core/javascript/juce_JSONUtils.h
Normal file
67
modules/juce_core/javascript/juce_JSONUtils.h
Normal file
|
|
@ -0,0 +1,67 @@
|
|||
/*
|
||||
==============================================================================
|
||||
|
||||
This file is part of the JUCE library.
|
||||
Copyright (c) 2022 - Raw Material Software Limited
|
||||
|
||||
JUCE is an open source library subject to commercial or open-source
|
||||
licensing.
|
||||
|
||||
The code included in this file is provided under the terms of the ISC license
|
||||
http://www.isc.org/downloads/software-support-policy/isc-license. Permission
|
||||
To use, copy, modify, and/or distribute this software for any purpose with or
|
||||
without fee is hereby granted provided that the above copyright notice and
|
||||
this permission notice appear in all copies.
|
||||
|
||||
JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER
|
||||
EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE
|
||||
DISCLAIMED.
|
||||
|
||||
==============================================================================
|
||||
*/
|
||||
|
||||
namespace juce
|
||||
{
|
||||
|
||||
/**
|
||||
A mini namespace to hold utility functions for working with juce::vars.
|
||||
|
||||
@tags{Core}
|
||||
*/
|
||||
struct JSONUtils
|
||||
{
|
||||
/** No constructor. */
|
||||
JSONUtils() = delete;
|
||||
|
||||
/** Given a JSON array/object 'v', a string representing a JSON pointer,
|
||||
and a new property value 'newValue', returns a copy of 'v' where the
|
||||
property or array index referenced by the pointer has been set to 'newValue'.
|
||||
|
||||
If the pointer cannot be followed, due to referencing missing array indices
|
||||
or fields, then this returns nullopt.
|
||||
|
||||
For more details, check the JSON Pointer RFC 6901:
|
||||
https://datatracker.ietf.org/doc/html/rfc6901
|
||||
*/
|
||||
static std::optional<var> setPointer (const var& v, String pointer, const var& newValue);
|
||||
|
||||
/** Converts the provided key/value pairs into a JSON object. */
|
||||
static var makeObject (const std::map<Identifier, var>& source);
|
||||
|
||||
/** Converts the provided key/value pairs into a JSON object with the provided
|
||||
key at the first position in the object.
|
||||
|
||||
This is useful because the MIDI-CI spec requires that certain fields (e.g.
|
||||
status) should be placed at the beginning of a MIDI-CI header.
|
||||
*/
|
||||
static var makeObjectWithKeyFirst (const std::map<Identifier, var>& source, Identifier key);
|
||||
|
||||
/** Returns true if and only if the contents of a match the contents of b.
|
||||
|
||||
Unlike var::operator==, this will recursively check that contained DynamicObject and Array
|
||||
instances compare equal.
|
||||
*/
|
||||
static bool deepEqual (const var& a, const var& b);
|
||||
};
|
||||
|
||||
} // namespace juce
|
||||
|
|
@ -178,6 +178,7 @@
|
|||
#include "unit_tests/juce_UnitTest.cpp"
|
||||
#include "containers/juce_Variant.cpp"
|
||||
#include "javascript/juce_JSON.cpp"
|
||||
#include "javascript/juce_JSONUtils.cpp"
|
||||
#include "javascript/juce_Javascript.cpp"
|
||||
#include "containers/juce_DynamicObject.cpp"
|
||||
#include "xml/juce_XmlDocument.cpp"
|
||||
|
|
|
|||
|
|
@ -309,6 +309,7 @@ JUCE_END_IGNORE_WARNINGS_MSVC
|
|||
#include "streams/juce_FileInputSource.h"
|
||||
#include "logging/juce_FileLogger.h"
|
||||
#include "javascript/juce_JSON.h"
|
||||
#include "javascript/juce_JSONUtils.h"
|
||||
#include "serialisation/juce_Serialisation.h"
|
||||
#include "javascript/juce_JSONSerialisation.h"
|
||||
#include "javascript/juce_Javascript.h"
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue