C assignment: json packer
The task is to read data in JSON format and using dictionary encoding write a compressed stream to disk.
It's allowed to use:
- Some json parser https://github.com/zserge/jsmn - as it provide necessary functionality and speed
- Apache Portable Runtime library - for dictionary
- Cmake
How to use: There are 3 main units:
- json_parser - allow to get tokens from raw string and extract key-value pair
- hashtable - store key-tag pair
- tvl - converts key-value to tvl record
Ver1 to ver2 upgrades:
INPUT_FILE - file with raw json strings to convert OUTPUT_FILE - created if conversion was successful
- Added config.h file to easy setup input/output files and max input string length
- Added tests
- Added Logging library
- All libraries compile separatly for reusable
- Code cleanup
- Error handling