Title: | 'Rcpp' Bindings to Parser for "Tom's Obvious Markup Language" |
---|---|
Description: | The configuration format defined by 'TOML' (which expands to "Tom's Obvious Markup Language") specifies an excellent format (described at <https://toml.io/en/>) suitable for both human editing as well as the common uses of a machine-readable format. This package uses 'Rcpp' to connect to the 'toml++' parser written by Mark Gillard to R. |
Authors: | Dirk Eddelbuettel [aut, cre] , Mark Gillard [aut] (Author of 'toml++' header library) |
Maintainer: | Dirk Eddelbuettel <[email protected]> |
License: | GPL (>= 2) |
Version: | 0.2.2 |
Built: | 2024-12-21 05:40:34 UTC |
Source: | https://github.com/eddelbuettel/rcpptoml |
TOML (“Tom's Obvious Markup Language”) is a configuration file grammar for humans. It is easier to read and edit than the alternatives yet arguably more useful as it is stronly types: values come back as integer, double, (multiline-) character (strings), boolean or Datetime. Moreover, complex nesting and arrays are supported as well.
At present, a single parsing function parseTOML
(with
convenience aliases tomlparse
and parseToml
) is implemented.
It returns a list object corresponding to the configuration from
the supplied file.
Dirk Eddelbuettel put togther the R package. Charles Geigle wrote the cpptoml parser. Tom Preston-Werner is the Tom behind TOML.
Maintainer: Dirk Eddelbuettel <[email protected]>
TOML: https://toml.io/en/
library(RcppTOML) file <- system.file("toml", "example.toml", package="RcppTOML") toml <- parseTOML(file) # given file, return parsed object summary(toml) # really sparse summary method print(toml) # print is a wrapper around str()
library(RcppTOML) file <- system.file("toml", "example.toml", package="RcppTOML") toml <- parseTOML(file) # given file, return parsed object summary(toml) # really sparse summary method print(toml) # print is a wrapper around str()
The function parseTOML
, also aliased to tomlparse
and parseToml
,
parse TOML content inout. This is usually a file given by its name, or a character variable
with a TOML expression.
parseTOML(input, verbose = FALSE, fromFile = TRUE, includize = FALSE, escape = TRUE) tomlparse(...) parseToml(...) ## S3 method for class 'toml' print(x, ...) ## S3 method for class 'toml' summary(object, ...)
parseTOML(input, verbose = FALSE, fromFile = TRUE, includize = FALSE, escape = TRUE) tomlparse(...) parseToml(...) ## S3 method for class 'toml' print(x, ...) ## S3 method for class 'toml' summary(object, ...)
input |
[character] TOML input, either as chracter value or path to TOML file |
verbose |
[logical] Optional verbosity flag, no current effect |
fromFile |
[logical] Optional with default value ‘TRUE’ indicating parsing from file |
includize |
[logical] Optional legacy option, no current effect |
escape |
[logical] Optional boolean whether strings should be escaped, defaults to ‘TRUE’ |
... |
Used for aliased function and S3 methods |
x |
Used for S3 method |
object |
Used for S3 method |
This implementation uses the ‘tomlplusplus’ library by Mark Gillar (see https://github.com/marzer/tomlplusplus) which is TOML 1.0 compliant. In earlier work the package used the ‘cpptoml’ library by Chase Geigle (see https://github.com/skystrife/cpptoml for which development ceased once TOML 0.5.0 parity was reached.
A list object with the parsed content as an S3 object of class ‘toml’