Penlight Documentation

## Penlight Lua Libraries 1.13.1

Penlight is a set of pure Lua libraries for making it easier to work with common tasks like iterating over directories, reading configuration files and the like. Provides functional operations on tables and sequences. Visit the GitHub project to review the code or file issues. Skip to the introduction.

## Libraries

pl | Entry point for loading all PL libraries only on demand, into the global space.
pl.app | Application support functions.
pl.array2d | Operations on two-dimensional arrays.
pl.class | Provides a reuseable and convenient framework for creating classes in Lua.
pl.compat | Lua 5.1/5.2/5.3 compatibility.
pl.comprehension | List comprehensions implemented in Lua.
pl.config | Reads configuration files into a Lua table.
pl.data | Reading and querying simple tabular data.
pl.dir | Listing files in directories and creating/removing directory paths.
pl.file | File manipulation functions: reading, writing, moving and copying.
pl.func | Functional helpers like composition, binding and placeholder expressions.
pl.import_into | PL loader, for loading all PL libraries, only on demand.
pl.input | Iterators for extracting words or numbers from an input source.
pl.lapp | Simple command-line parsing using human-readable specification.
pl.lexer | Lexical scanner for creating a sequence of tokens from text.
pl.luabalanced | Extract delimited Lua sequences from strings.
pl.operator | Lua operators available as functions.
pl.path | Path manipulation and file queries.
pl.permute | Permutation operations.
pl.pretty | Pretty-printing Lua tables.
pl.seq | Manipulating iterators as sequences.
pl.sip | Simple Input Patterns (SIP).
pl.strict | Checks uses of undeclared global variables.
pl.stringio | Reading and writing strings using file-like objects.
pl.stringx | Python-style extended string library.
pl.tablex | Extended operations on Lua tables.
pl.template | A template preprocessor.
pl.test | Useful test utilities.
pl.text | Text processing utilities.
pl.types | Dealing with Detailed Type Information
pl.url | Python-style URL quoting library.
pl.utils | Generally useful routines.
pl.xml | XML LOM Utilities.

## Classes

pl.Date | Date and Date Format classes.
pl.List | Python-style list class.
pl.Map | A Map class.
pl.MultiMap | MultiMap, a Map which has multiple values per key.
pl.OrderedMap | OrderedMap, a map which preserves ordering.
pl.Set | A Set class.

## Manual

01-introduction.md |
02-arrays.md |
03-strings.md |
04-paths.md |
05-dates.md |
06-data.md |
07-functional.md |
08-additional.md |
09-discussion.md |

## Examples

seesubst.lua |
sipscan.lua |
symbols.lua |
test-cmp.lua |
test-data.lua |
test-listcallbacks.lua |
test-pretty.lua |
test-symbols.lua |
testclone.lua |
testconfig.lua |
testglobal.lua |
testinputfields.lua |
testinputfields2.lua |
testxml.lua |
which.lua |

generated by LDoc 1.4.6