Skip to content

TOML parser for Free Pascal Compiler.

Notifications You must be signed in to change notification settings

mitgedanken/pas-fpTOML

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 

Repository files navigation

fpTOML Parser

TOML parser for Free Pascal Compiler. Learn more about Tom's Obvious, Minimal Language at https://toml.io/.

# This is a TOML document.

# TOML aims to be a minimal configuration file format that's easy to read due to obvious semantics. 
# TOML is designed to map unambiguously to a hash table. TOML should be easy to parse into 
# data structures in a wide variety of languages.

title = "TOML Example"

[owner]
name = "Tom Preston-Werner"
dob = 1979-05-27T07:32:00-08:00 # First class dates

[database]
server = "192.168.1.1"
ports = [ 8001, 8001, 8002 ]
connection_max = 5000
enabled = true

[servers]

  # Indentation (tabs and/or spaces) is allowed but not required
  [servers.alpha]
  ip = "10.0.0.1"
  dc = "eqdc10"

  [servers.beta]
  ip = "10.0.0.2"
  dc = "eqdc10"

[clients]
data = [ ["gamma", "delta"], [1, 2] ]

# Line breaks are OK when inside arrays
hosts = [
  "alpha",
  "omega"
]

TOML v1.0.0-rc.1 compliant.

👌 Features:

  • Fast. Single stream tokenizer and lexer which doesn't use regex.
  • Convert TOML data to TJSONData (see fpJSON in RTL).

🛠 TODO:

  • Line endings/white space rules are not 100% correct
  • Output TOML data structures as TOML text.
  • Better support for building TOML data programmatically.

About

TOML parser for Free Pascal Compiler.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Pascal 99.7%
  • Makefile 0.3%