NAME
Data::Sah::Compiler::human - Compile Sah schema to human language
VERSION
version 0.18
SYNOPSIS
DESCRIPTION
This class is derived from Data::Sah::Compiler. It generates human language text.
ATTRIBUTES
METHODS
new() => OBJ
$c->compile(%args) => RESULT
Aside from base class' arguments, this class supports these arguments (suffix *
denotes required argument):
format => STR (default:
inline_text
)Format of text to generate. Either
inline_text
,inline_err_text
, ormarkdown
. Note that you can easily convert Markdown to HTML, there are libraries in Perl, JavaScript, etc to do that.Sample
inline_text
output:integer, must satisfy all of the following: (divisible by 3, at least 10)
inline_err_text
is just likeinline_text
, except geared towards producing an error message. Currently, instead of producing "integer" from schema "int", it produces "Input is not of type integer". The rest is identical.Sample
markdown
output:integer, must satisfy all of the following: * divisible by 3 * at least 10
Compilation data
This subclass adds the following compilation data ($cd
).
Keys which contain compilation state:
Keys which contain compilation result:
AUTHOR
Steven Haryanto <stevenharyanto@gmail.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2013 by Steven Haryanto.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.