https://github.com/note/xml-lens
XML Optics library for Scala
https://github.com/note/xml-lens
lenses optics scala xml
Last synced: about 1 month ago
JSON representation
XML Optics library for Scala
- Host: GitHub
- URL: https://github.com/note/xml-lens
- Owner: note
- License: mit
- Created: 2017-05-04T16:18:29.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2019-09-21T15:12:20.000Z (over 5 years ago)
- Last Synced: 2025-04-06T09:12:34.976Z (2 months ago)
- Topics: lenses, optics, scala, xml
- Language: Scala
- Homepage: https://note.github.io/xml-lens/
- Size: 2.77 MB
- Stars: 32
- Watchers: 2
- Forks: 5
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
XML Optics library for Scala. Documentation available here: https://note.github.io/xml-lens/
[](https://travis-ci.org/note/xml-lens)
[](https://coveralls.io/github/note/xml-lens?branch=master)## Motivation
XML scala libraries are kind of neglected. That stands in stark contrast to JSON for which Scala has dozens of projects.
Of course, JSON is much more popular and XML at the same time is regarded as a legacy standard but still - there are many situations where you need to work with XML.## Status of project
Some early versions of the project has been released. It's definitely not very mature yet.
In next releases I would like to focus on DSL and optics aspects as suprisingly in the first release
a lot of time was spent on io module. Don't expect rapid development as it's just side project
made in my free time.## Various
#### How to generate documentation
```
sbt docs/makeMicrosite
```After docs has been successfully generated you can serve it with:
```
cd docs/target/site
jekyll serve
```#### Pushing documentation to github page
You can push generated documentation with:
```
docs/ghpagesPushSite
```Mind that you have to have access to push to repository defined in `build.sbt` to make above snippet work.
#### How to run JMH benchmark
Example:```
bench/jmh:run -i 10 -wi 10 -f1 -t1 -prof gc .*Roundtrip*.
```## Contributing
Contributions are very welcome. All code or documentation that is provided must be licensed with
the same license `xml-lens` is licensed with (MIT license, available [here](https://github.com/note/xml-lens/blob/master/LICENSE).## License
All code is available to you under the MIT license, available [here](https://github.com/note/xml-lens/blob/master/LICENSE).
## Acknowledgements
Many thanks to [scalac](https://scalac.io/) that funded early development of `xml-lens`.