---
name: "HTML::Template::Compiled::Lazy"
section: "3pm"
platform: "linux"
package: "libhtml-template-compiled-perl"
version: "1.003-3"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/HTML::Template::Compiled::Lazy"
---

# HTML::Template::Compiled::Lazy(3pm)

Lazy Loading for HTML::Template::Compiled

## NAME

HTML::Template::Compiled::Lazy - Lazy Loading for HTML::Template::Compiled

## SYNOPSIS

```
    use HTML::Template::Compiled::Lazy;
    my $htcl = HTML::Template::Compiled::Lazy->new(
        # usual parameters for HTML::Template::Compiled
    );
    $htcl->param(...);
    # file wasn't compiled yet
    print $htcl->output; # now compile and output!
```

## DESCRIPTION

This class does not compile templates before calling `"output()"`. This includes `"TMPL_INCLUDE"`s. This can be useful in CGI environments. If your template has got a lot of includes HTML::Template::Compiled will compile all of them, even if they aren't needed because they are never reached (in a `"TMPL_IF"`, for example).

HTML::Template::Compiled::Lazy also won't complain if the file does not exist - it will complain when you call `"output()"`, though.
