Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/syeopite/ctoml-cr
Crystal bindings to the tomlc99 library
https://github.com/syeopite/ctoml-cr
bindings c-bindings crystal crystal-bindings crystal-lang toml toml-parser tomlc99
Last synced: 4 days ago
JSON representation
Crystal bindings to the tomlc99 library
- Host: GitHub
- URL: https://github.com/syeopite/ctoml-cr
- Owner: syeopite
- License: mit
- Created: 2021-07-16T06:48:24.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-09-05T02:45:32.000Z (2 months ago)
- Last Synced: 2024-09-06T09:29:32.884Z (2 months ago)
- Topics: bindings, c-bindings, crystal, crystal-bindings, crystal-lang, toml, toml-parser, tomlc99
- Language: Crystal
- Homepage:
- Size: 54.7 KB
- Stars: 7
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# ctoml-cr
Crystal bindings to the [tomlc99](https://github.com/cktan/tomlc99) library. Compliant to TOML v1.0.0.
## Installation
1. Add the dependency to your `shard.yml`:
```yaml
dependencies:
ctoml-cr:
github: syeopite/ctoml-cr
```2. Run `shards install`
## Usage
```crystal
require "ctoml-cr"data = File.read("example.toml")
toml = TOML.parse(data)# API is the same as JSON::Any
typeof(toml) # => TOML::Anyexample_table = toml["example-table"].as_h
typeof(example_table) # => Hash(String, TOML::Any)
example_table["key"] # => "value"```
## Contributing
1. Fork it ()
2. Create your feature branch (`git checkout -b my-new-feature`)
3. Commit your changes (`git commit -am 'Add some feature'`)
4. Push to the branch (`git push origin my-new-feature`)
5. Create a new Pull Request## Credits
Special thanks to [@cktan](https://github.com/cktan) for creating tomlc99!