handlers.lua

changeset 2
3975fa5ed630
child 3
b2df1b3f2c83
equal deleted inserted replaced
1:e2face1be50e 2:3975fa5ed630
1
2 module("handlers", package.seeall)
3
4 require("handlers.render")
5 require("handlers.copy")
6 require("handlers.ignore")
7
8 local available={
9 { pattern = "%.page$", handler = handlers.render},
10 { pattern = "", handler = handlers.copy},
11 }
12
13
14 function find(f)
15 for _, h in ipairs(available) do
16 if string.match(h.pattern, f) then
17 return h.handler
18 end
19 end
20 return handlers.ignore
21 end
22
23 local cached={}
24
25 function choose(f, env)
26 cached[f] = find(f)
27 end
28
29 -- load
30 function phase1(f, env)
31 return cached[f].phase1(f, env)
32 end
33
34 -- write
35 function phase2(f, env)
36 return cached[f].phase2(f, env)
37 end
38

mercurial