https://github.com/librepcb/parseagle
C++/Qt library to parse Eagle XML files
https://github.com/librepcb/parseagle
Last synced: 12 months ago
JSON representation
C++/Qt library to parse Eagle XML files
- Host: GitHub
- URL: https://github.com/librepcb/parseagle
- Owner: LibrePCB
- License: apache-2.0
- Created: 2017-10-14T09:21:15.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-09-26T14:08:30.000Z (over 1 year ago)
- Last Synced: 2025-06-22T15:36:07.340Z (12 months ago)
- Language: C++
- Size: 64.5 KB
- Stars: 4
- Watchers: 3
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE-APACHE
Awesome Lists containing this project
README
# ParsEagle
This is a C++/Qt library for parsing XML files created by EAGLE.
## Build Systems
The library provides both support for qmake (Qt5) and cmake (Qt5/Qt6).
## Error Handling
- Fatal errors while parsing an EAGLE XML file (e.g. invalid numbers) will
throw a `std::exception`.
- Non-fatal parsing errors (e.g. unknown XML nodes or unknown enum values)
will be ignored, i.e. parsing is not aborted. Optionally, a `QStringList`
can be provided where these error messages are appended to. Unknown
enum attributes will be set to a special value named `Unknown`.
- Any errors after parsing (e.g. failed type conversions in getters) won't
throw any exceptions but report their success e.g. with a boolean return
value. So users of this library don't need to handle exceptions anymore
once the parsing succeeded.
## License
Licensed under either of
- Apache License, Version 2.0, ([LICENSE-APACHE](LICENSE-APACHE) or
http://www.apache.org/licenses/LICENSE-2.0)
- MIT license ([LICENSE-MIT](LICENSE-MIT) or http://opensource.org/licenses/MIT)
at your option.