aboutsummaryrefslogtreecommitdiff
path: root/src/Text/Pandoc/Lua/StackInstances.hs
AgeCommit message (Collapse)AuthorFilesLines
2017-04-07Lua filter: improve doc filter performanceAlbert Krewinkel1-36/+47
Pandoc elements are pushed and pulled from the lua stack via custom instances.
2017-04-06Lua filter: Improve block filter performanceAlbert Krewinkel1-7/+44
Reading of simple block values from the lua stack is handled manually, but most block constructors are still handled via instances of aeson's Value type.
2017-04-06Lua filter: Improve inline filter performanceAlbert Krewinkel1-7/+73
Getting inline instances from the lua stack is handled manually for some simple inline constructors, including the `Str` constructor. This avoids the indirect route through aeson's Value type and improves performance considerably (approx. 30% speedup for some filters).
2017-04-02Lua module: add readers submoduleAlbert Krewinkel1-0/+75
Plain text readers are exposed to lua scripts via the `pandoc.reader` submodule, which is further subdivided by format. Converting e.g. a markdown string into a pandoc document is possible from within lua: doc = pandoc.reader.markdown.read_doc("Hello, World!") A `read_block` convenience function is provided for all formats, although it will still parse the whole string but return only the first block as the result. Custom reader options are not supported yet, default options are used for all parsing operations.