Skip to content

Commit 3982b35

Browse files
committed
feat(xml): add initial XML 1.0 parser with dot-notation query system
Comprehensive XML parsing library with lexer, parser, and query engine. Supports elements, attributes, CDATA, entities, and processing instructions.
1 parent de5a6d7 commit 3982b35

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+13574
-3
lines changed

.genlinxrc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ build:
4242
- ./UIUtils
4343
- ./Url
4444
- ./WebSocket
45+
- ./Xml
4546
- ./__tests__/include/aes128
4647
- ./__tests__/include/hash-table
4748
- ./__tests__/include/path-utils
@@ -81,3 +82,4 @@ build:
8182
- ./__tests__/include/cloudlog
8283
- ./__tests__/include/core
8384
- ./__tests__/include/socket-utils
85+
- ./__tests__/include/xml

Json/NAVFoundation.JsonQuery.h.axi

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@ DEFINE_TYPE
139139
* // Query ".user.items[2]" produces tokens:
140140
* // DOT, IDENTIFIER("user"), DOT, IDENTIFIER("items"), LEFT_BRACKET, NUMBER(2), RIGHT_BRACKET
141141
*/
142-
structure _NAVJsonQueryToken {
142+
struct _NAVJsonQueryToken {
143143
integer type
144144
char identifier[NAV_JSON_QUERY_MAX_IDENTIFIER_LENGTH]
145145
integer number
@@ -158,7 +158,7 @@ structure _NAVJsonQueryToken {
158158
* // Query ".user.items[2]" produces path steps:
159159
* // PROPERTY("user"), PROPERTY("items"), ARRAY_INDEX(2)
160160
*/
161-
structure _NAVJsonQueryPathStep {
161+
struct _NAVJsonQueryPathStep {
162162
integer type
163163
char propertyKey[NAV_JSON_QUERY_MAX_IDENTIFIER_LENGTH]
164164
integer arrayIndex

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,8 @@ For more detailed guides and documentation, please refer the `README.md` files i
154154
- Provides functions for URL manipulation and encoding.
155155
- [WebSocket](./WebSocket)
156156
- Provides a WebSocket client implementation for AMX.
157+
- [Xml](./Xml)
158+
- Provides functions for working with XML data.
157159

158160
## Support :question:
159161

0 commit comments

Comments
 (0)