NAME

VERSION

SYNOPSIS

Taken directly from Dancer::Template::TemplateToolkit (which is core):

die "Template is needed by Dancer::Template::TemplateToolkit"
unless Dancer::ModuleLoader->load('Template');
# we now have Template loaded

DESCRIPTION

Sometimes in Dancer core we need to use modules, but we don't want to declare them all in advance in compile-time. These could be because the specific modules provide extra features which depend on code that isn't (and shouldn't) be in core, or perhaps because we only want these components loaded in lazy style, saving loading time a bit. For example, why load Template (which isn't required by Dancer) when you don't use Dancer::Template::TemplateToolkit?

To do such things takes a bit of code for localizing $@ and evaling. That code has been refactored into this module to help Dancer core developers.