diff --git a/source/diet/html.d b/source/diet/html.d
index 44a98f6..0c9d259 100644
--- a/source/diet/html.d
+++ b/source/diet/html.d
@@ -59,29 +59,36 @@ template compileHTMLDietFileString(string filename, alias contents, ALIASES...)
import std.conv : to;
enum _diet_files = collectFiles!(filename, contents);
- version (DietUseCache) enum _diet_use_cache = true;
- else enum _diet_use_cache = false;
-
-
- ulong computeTemplateHash()
+ version (DietUseCache)
{
- ulong ret = 0;
- void hash(string s)
+ enum _diet_use_cache = true;
+ ulong computeTemplateHash()
{
- foreach (char c; s) {
- ret *= 9198984547192449281;
- ret += c * 7576889555963512219;
+ ulong ret = 0;
+ void hash(string s)
+ {
+ foreach (char c; s) {
+ ret *= 9198984547192449281;
+ ret += c * 7576889555963512219;
+ }
}
+ foreach (ref f; _diet_files) {
+ hash(f.name);
+ hash(f.contents);
+ }
+ return ret;
}
- foreach (ref f; _diet_files) {
- hash(f.name);
- hash(f.contents);
- }
- return ret;
+
+ enum _diet_hash = computeTemplateHash();
+ enum _diet_cache_file_name = filename~"_cached_"~_diet_hash.to!string~".d";
}
+ else
+ {
+ enum _diet_use_cache = false;
+ enum _diet_cache_file_name = "***INVALID***"; // not used anyway
+ }
+
- enum _diet_hash = computeTemplateHash();
- enum _diet_cache_file_name = "_cached_"~filename~"_"~_diet_hash.to!string~".d";
static if (_diet_use_cache && is(typeof(import(_diet_cache_file_name)))) {
pragma(msg, "Using cached Diet HTML template "~filename~"...");