Biblioteca TOML Fortran#

TOML Fortran Licencia Versión Integración continua Documentos de la API Estado de la documentación Cobertura

Este proyecto proporciona una biblioteca para trabajar con archivos TOML y estructuras de datos, y permite definir la serialización y deserialización de datos en Fortran.El estándar TOML admitido actualmente es la versión 1.0.0. El proyecto TOML Fortran está hospedado en Github en toml-f/toml-f

Tutoriales

Guías y cursos para usar TOML con ejemplos completos y autocontenidos

Recetas

Ejemplos y recetas para resolver tareas comunes con TOML Fortran.

Referencia

Documentación generada de todos los procedimientos y tipos derivados disponibles.

Instalación

Instrucciones para la instalación, actualización o compilación de TOML Fortran.

Repositorio

Repositorio Github para el desarrollo de TOML Fortran.

Externos

Enlaces externos a otros recursos, blogs, etc.

News

  • 03 December - TOML Fortran 0.4.2 released

    Maintenance and bugfix release to address issues found for GFortran on MacOS/ppc32 and Cray compilers. Furthermore, parsing the header of an array of tables with whitespace and the tokenization of multiline strings with escape characters was fixed.

  • 01 April - TOML Fortran 0.4.0 released

    This release refactors the internal access of the storage structures to allow more efficient operations like deletion or renaming. Additionally, the serialization functionality has been reworked to allow writing to files, units or strings using similar interfaces.

  • 03 August - Jonquil: Bringing TOML blooms to JSON land

    Jonquil started out of the idea to make a TOML parser speak JSON. First explored as a way to connect to the toml-test validation suite, the implementation was brief and expressive enough to be explored as a tutorial. Since the implementation was taken serious enough to enter into JSON Fortran’s benchmarks and turned out to actually be competitive with JSON Fortran, revisiting the idea of a JSON parser in TOML Fortran was warranted.

  • 01 August - TOML Fortran 0.3.0 released

    This release comes with a new backend for the deserialization of TOML documents, making the parser more robust against unclosed inline tables and arrays. Furthermore, a context can now be captured which allows reporting messages like errors as annotations in TOML document, making both the default errors produced by the parsers more useful and also enabling users of TOML Fortran to create consistently formatted reports. Together with the refactoring of the internal representation for storing TOML values, the low-level interface to TOML values becomes more consistent and easier to use. A long-standing issue with supporting Unicode escape sequences in strings has been resolved and TOML Fortran now fully supports all TOML 1.0.0 escape sequences.

    Features spotlight

Users

TOML Fortran es usado por ejemplo en el Administrador de paquetes de Fortran (fpm). Un manifiesto típico para un paquete especificado en TOML es mostrado abajo

fpm.toml#
name = "toml-f"
version = "0.4.2"
license = "Apache-2.0 OR MIT"
maintainer = ["@awvwgk"]
author = ["Sebastian Ehlert"]
copyright = "2019-2022 Sebastian Ehlert"
homepage = "https://toml-f.github.io/toml-f"
keywords = ["toml", "io", "serde"]
description = "TOML parser implementation for data serialization and deserialization"

[library]
source-dir = "src"

[build]
auto-tests = false

[[test]]
name = "tftest"
source-dir = "test/unit"
[test.dependencies]
test-drive.git = "https://github.com/fortran-lang/test-drive.git"

[[executable]]
name = "toml2json"
source-dir = "test/compliance"
main = "toml2json.f90"

[[executable]]
name = "json2toml"
source-dir = "test/compliance"
main = "json2toml.f90"

A collection of projects using TOML Fortran is shown below:

GitHub Preview

Fortran package manager and build system.

GitHub Preview

Light-weight tight-binding framework.

GitHub Preview

Gaussian Process Regression engine written in Fortran90 designed to produce models for atomistic simulations.

GitHub Preview

Signed distance fields in Monte Carlo Radiative Transfer for modelling of smooth surfaces without the need to use triangle or similar meshes.

Your project is using TOML Fortran but not listed here? Let us know of your work by opening a discussion on GitHub or create a pull request to add it to the selection above.