You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+83-30Lines changed: 83 additions & 30 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,37 @@
1
1
## coreJSON Library
2
2
3
-
This repository contains the coreJSON library, a parser that strictly enforces the ECMA-404 JSON standard and is suitable for low memory footprint embedded devices. The coreJSON library is distributed under the [MIT Open Source License](LICENSE).
4
-
5
-
This library has gone through code quality checks including verification that no function has a [GNU Complexity](https://www.gnu.org/software/complexity/manual/complexity.html) score over 8, and checks against deviations from mandatory rules in the [MISRA coding standard](https://www.misra.org.uk). Deviations from the MISRA C:2012 guidelines are documented under [MISRA Deviations](MISRA.md). This library has also undergone both static code analysis from [Coverity static analysis](https://scan.coverity.com/), and validation of memory safety through the [CBMC automated reasoning tool](https://www.cprover.org/cbmc/).
6
-
7
-
See memory requirements for this library [here](./docs/doxygen/include/size_table.md).
8
-
9
-
**coreJSON v3.2.0 [source code](https://github.com/FreeRTOS/coreJSON/tree/v3.2.0/source) is part of the [FreeRTOS 202210.00 LTS](https://github.com/FreeRTOS/FreeRTOS-LTS/tree/202210.00-LTS) release.**
10
-
11
-
**coreJSON v3.0.0 [source code](https://github.com/FreeRTOS/coreJSON/tree/v3.0.0/source) is part of the [FreeRTOS 202012.00 LTS](https://github.com/FreeRTOS/FreeRTOS-LTS/tree/202012.00-LTS) release.**
3
+
**[API Documentation Pages for current and previous releases of this library can be found here](https://freertos.github.io/coreJSON/)**
4
+
5
+
This repository contains the coreJSON library, a parser that strictly enforces
6
+
the ECMA-404 JSON standard and is suitable for low memory footprint embedded
7
+
devices. The coreJSON library is distributed under the
8
+
[MIT Open Source License](LICENSE).
9
+
10
+
This library has gone through code quality checks including verification that no
A search may descend through nested objects when the `queryKey` contains matching key strings joined by a separator, `.`. In the example above, `bar` has the value `{"foo":"xyz"}`. Therefore, a search for query key `bar.foo` would output `xyz`.
77
+
78
+
A search may descend through nested objects when the `queryKey` contains
79
+
matching key strings joined by a separator, `.`. In the example above, `bar` has
80
+
the value `{"foo":"xyz"}`. Therefore, a search for query key `bar.foo` would
81
+
output `xyz`.
55
82
56
83
## Building coreJSON
57
84
58
-
A compiler that supports **C90 or later** such as *gcc* is required to build the library.
85
+
A compiler that supports **C90 or later** such as _gcc_ is required to build the
86
+
library.
59
87
60
-
Additionally, the library uses 2 header files introduced in ISO C99, `stdbool.h` and `stdint.h`. For compilers that do not provide this header file, the [source/include](source/include) directory contains [stdbool.readme](source/include/stdbool.readme) and [stdint.readme](source/include/stdint.readme), which can be renamed to `stdbool.h` and `stdint.h` respectively.
88
+
Additionally, the library uses 2 header files introduced in ISO C99, `stdbool.h`
89
+
and `stdint.h`. For compilers that do not provide this header file, the
By default, the submodules in this repository are configured with `update=none` in [.gitmodules](.gitmodules), to avoid increasing clone time and disk space usage of other repositories (like [amazon-freertos](https://github.com/aws/amazon-freertos) that submodules this repository).
98
137
99
-
To build unit tests, the submodule dependency of Unity is required. Use the following command to clone the submodule:
138
+
By default, the submodules in this repository are configured with `update=none`
139
+
in [.gitmodules](.gitmodules), to avoid increasing clone time and disk space
140
+
usage of other repositories (like
141
+
[amazon-freertos](https://github.com/aws/amazon-freertos) that submodules this
142
+
repository).
143
+
144
+
To build unit tests, the submodule dependency of Unity is required. Use the
The `test/cbmc/proofs` directory contains CBMC proofs.
131
181
132
-
In order to run these proofs you will need to install CBMC and other tools by following the instructions [here](https://model-checking.github.io/cbmc-training/installation.html).
182
+
In order to run these proofs you will need to install CBMC and other tools by
0 commit comments