smithy4s
smithy4s copied to clipboard
Add xml-support [decoder only]
Add a number of construct that allow for the parsing of XML data into Smithy4s-generated datatypes. The heavy-lifting (parsing) is provided by fs2-data. We interop with it by implementing the DocumentBuilder typeclass to create instances of an XmlDocument ADT we control.
NB :
- Roughly half of the PR is the tests. Compare them with https://awslabs.github.io/smithy/2.0/spec/protocol-traits.html?highlight=xml#xml-bindings
- Encoding logic will come in a subsequent PR
- Partial decoding/encoding logic will come after
- Right now publishing is disabled on the xml module. The first relevant usecase will be some AWS-protocols, we won't be publishing until then.