The pp-toml Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The pp-toml Reference Manual

This is the pp-toml Reference Manual, version 1.0.1, generated automatically by Declt version 4.0 beta 2 "William Riker" on Wed Jun 15 05:35:22 2022 GMT+0.

Table of Contents


1 Introduction

Paul's Parser for Tom's Own Minimal Language (0.1.0)

Common Lisp TOML parser.

Build Status

Needs

The library needs to be brought up to 1.0.0 spec.

Compliance notes

Testing

To run the tests, do this:

 sbcl --script run-sbcl-tests.lisp

Which will produce a test report.

Contributions

Gratefully accepted. Please add test cases for bug reports you fix or features you add.

License is LLGPL.

Remarks

Since Tom thought it'd be a good idea to put his name on the language, I'm putting my name on this parser.


2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 pp-toml

TOML parser

Maintainer

Paul Nathan <pnathan@alumni.uidaho.edu>

Author

Paul Nathan <pnathan@alumni.uidaho.edu>

License

LLGPL

Long Description

Implements a TOML parser. PARSE-TOML is the top-level function

Version

1.0.1

Dependencies
  • alexandria (system).
  • cl-ppcre (system).
  • generic-comparability (system).
  • local-time (system).
  • parse-number (system).
  • split-sequence (system).
  • esrap (system).
Source

pp-toml.asd.

Child Component

pp-toml.lisp (file).


3 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

3.1 Lisp


Next: , Previous: , Up: Lisp   [Contents][Index]

3.1.1 pp-toml/pp-toml.asd

Source

pp-toml.asd.

Parent Component

pp-toml (system).

ASDF Systems

pp-toml.


Previous: , Up: Lisp   [Contents][Index]

3.1.2 pp-toml/pp-toml.lisp

Source

pp-toml.asd.

Parent Component

pp-toml (system).

Packages

pp-toml.

Public Interface
Internals

4 Packages

Packages are listed by definition order.


Previous: , Up: Packages   [Contents][Index]

4.1 pp-toml

Source

pp-toml.lisp.

Use List
  • common-lisp.
  • esrap.
  • generic-comparability.
Public Interface
Internals

5 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

5.1 Public Interface


5.1.1 Ordinary functions

Function: parse-string (string)

Returns the toml parsed structure from ‘string‘ or :parse-error

Package

pp-toml.

Source

pp-toml.lisp.

Function: parse-toml (string &key strict)

Parse a TOML ‘string‘, returning a hash table comparable by EQUAL.

‘strict‘ is not supported at present.

Package

pp-toml.

Source

pp-toml.lisp.

Function: strip-comments (string)

Strips the comments from the string

Package

pp-toml.

Source

pp-toml.lisp.


5.2 Internals


Next: , Previous: , Up: Internals   [Contents][Index]

5.2.1 Special variables

Special Variable: *comment-scanner*

Scanner for # comments. Handles "#" strings

Package

pp-toml.

Source

pp-toml.lisp.


Previous: , Up: Internals   [Contents][Index]

5.2.2 Ordinary functions

Function: explode-hash-table (table)
Package

pp-toml.

Source

pp-toml.lisp.

Function: extract-lisp-structure (parsed-structure)
Package

pp-toml.

Source

pp-toml.lisp.

Function: key-p (key table)

Does ‘key‘ exist in ‘table?

Package

pp-toml.

Source

pp-toml.lisp.

Function: make-nested-hash (table key-list value)
Package

pp-toml.

Source

pp-toml.lisp.

Function: not-bracket (char)
Package

pp-toml.

Source

pp-toml.lisp.

Function: not-doublequote (char)
Package

pp-toml.

Source

pp-toml.lisp.

Function: not-integer (string)
Package

pp-toml.

Source

pp-toml.lisp.

Function: not-special-case (char)
Package

pp-toml.

Source

pp-toml.lisp.

Function: process-value-data (value)

‘value‘ may be any of the standard toml value types: array,
datetime, bool, number, or string. Of those, arrays are a special case:
Supposing an array is encountered, process-value-data recurses upon the array.

Toml does not support references as of v0.1, and there for we can traverse arrays without cyles of references.

Package

pp-toml.

Source

pp-toml.lisp.

Function: splode-y (table splitter key value)
Package

pp-toml.

Source

pp-toml.lisp.

Function: transliterate-to-specials (string)

Transliterate escape characters into Common Lisp characters

Package

pp-toml.

Source

pp-toml.lisp.

Function: transliterate-unicode (string)
Package

pp-toml.

Source

pp-toml.lisp.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   E   F   K   M   N   P   S   T  
Index Entry  Section

E
explode-hash-table: Private ordinary functions
extract-lisp-structure: Private ordinary functions

F
Function, explode-hash-table: Private ordinary functions
Function, extract-lisp-structure: Private ordinary functions
Function, key-p: Private ordinary functions
Function, make-nested-hash: Private ordinary functions
Function, not-bracket: Private ordinary functions
Function, not-doublequote: Private ordinary functions
Function, not-integer: Private ordinary functions
Function, not-special-case: Private ordinary functions
Function, parse-string: Public ordinary functions
Function, parse-toml: Public ordinary functions
Function, process-value-data: Private ordinary functions
Function, splode-y: Private ordinary functions
Function, strip-comments: Public ordinary functions
Function, transliterate-to-specials: Private ordinary functions
Function, transliterate-unicode: Private ordinary functions

K
key-p: Private ordinary functions

M
make-nested-hash: Private ordinary functions

N
not-bracket: Private ordinary functions
not-doublequote: Private ordinary functions
not-integer: Private ordinary functions
not-special-case: Private ordinary functions

P
parse-string: Public ordinary functions
parse-toml: Public ordinary functions
process-value-data: Private ordinary functions

S
splode-y: Private ordinary functions
strip-comments: Public ordinary functions

T
transliterate-to-specials: Private ordinary functions
transliterate-unicode: Private ordinary functions

Jump to:   E   F   K   M   N   P   S   T  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *  
S  
Index Entry  Section

*
*comment-scanner*: Private special variables

S
Special Variable, *comment-scanner*: Private special variables

Jump to:   *  
S