The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

separator_pattern

A pattern that will match on lines that count as section separators in record templates. Separator string text is remembered as $1.

comment_pattern

A pattern that will match on lines that count as comments in record templates.

build_separator $text

Takes a string and returns it in separator form. A separator is a line of text that denotes a section in a template.

build_template_section header => '=== foo ===' [, data => 'bar']

Takes a header text string and (optionally) a data string and formats them into a template section.

try_to_edit template => \$tmpl [, record => $record ]

Edits the given template if possible. Passes the updated template in to process_template (errors in the updated template must be handled there, not here).

handle_template_errors error => 'foo', template_ref => \$tmpl_str, bad_template => 'bar', rtype => 'ticket'

Should be called in process_template if errors (usually validation ones) occur while processing a record template. This method prompts the user to re-edit and updates the template given by template_ref to contain the bad template (given by the arg bad_template prefixed with the error messages given in the error arg. If an errors section already exists in the template, it is replaced with an errors section containing the new errors.

If the template you are editing is not section-based, you can override what will be prepended to the template by passing in the errors_pattern argument, and passing in old_errors if a template errors out repeatedly and there are old errors in the template that need to be replaced.

Other arguments are: rtype: the type of the record being edited. All arguments except overrides (errors_pattern and old_errors are required.

calling code must implement

run process_template