aboutsummaryrefslogtreecommitdiffstats
path: root/teal-src/util
Commit message (Collapse)AuthorAgeFilesLines
...
* util.jsonschema: Fix "uniqueItems" prematurely declaring a matchKim Alvefur2021-03-091-1/+0
|
* util.jsonschema: Implement the "prefixItems" keywordKim Alvefur2021-03-091-1/+13
| | | | This may have been what got me confused about "items" being an array.
* util.jsonschema: Implement the "contains" keywordKim Alvefur2021-03-091-1/+14
| | | | And apparently I had mistaken this for an array
* util.jsonschema: Allow a boolean as schemaKim Alvefur2021-03-091-1/+4
| | | | | | Apparently a schema must be either an object or a boolean. Not sure where I got this string shortcut from, but I think I will keep it as it is very convenient.
* util.jsonschema: Correct "items" keywordKim Alvefur2021-03-091-13/+5
| | | | | | Upon re-reading the JSON Schema spec, I found that 'items' wasn't a union of an array of schemas or a single schema, not sure where I got that from.
* util.datamapper: Add support for mapping of elements where only one ↵Kim Alvefur2021-03-072-0/+35
| | | | | | | attribute matters E.g. <feature var='foo'/> in XEP-0030 and some other simple specifications.
* util.datamapper: Add logic for "boolean" tags here the presence means trueKim Alvefur2021-03-071-3/+9
|
* util.datamapper: Invent extension for using tag name as valueKim Alvefur2021-03-062-2/+16
| | | | | Useful for certain enum-like uses where the element name is the relevant information, e.g. chat states.
* util.datamapper: Add 'unparse' for turning tables into XMLKim Alvefur2021-03-071-1/+102
|
* util.datamapper: Library for extracting data from stanzasKim Alvefur2021-03-071-0/+100
| | | | Based on the XML support in the OpenAPI specification.
* util.jsonschema: Library for JSON Schema validationKim Alvefur2021-03-061-0/+327
|
* util: Add Teal interface definition filesKim Alvefur2021-03-0924-0/+489
Enables writing code in Teal that is aware of the interfaces and function prototypes in these other utils. Could also be used to do type checks on Lua sources, but this tends to have a lot of noise.