@@ -39,6 +39,7 @@ data CompilerEnvironment = CompilerEnvironment
39 { compilerIdentifier :: Identifier -- ^ Target identifier
39 { compilerIdentifier :: Identifier -- ^ Target identifier
40 , compilerResourceProvider :: ResourceProvider -- ^ Resource provider
40 , compilerResourceProvider :: ResourceProvider -- ^ Resource provider
41 , compilerDependencyLookup :: DependencyLookup -- ^ Dependency lookup
41 , compilerDependencyLookup :: DependencyLookup -- ^ Dependency lookup
42+ , compilerRoute :: Maybe FilePath -- ^ Site route
44-- | The compiler monad
45-- | The compiler monad
@@ -67,18 +68,20 @@ instance Arrow Compiler where
68-- | Run a compiler, yielding the resulting target and it's dependencies
69-- | Run a compiler, yielding the resulting target and it's dependencies
70−runCompilerJob :: Compiler () a
71+runCompilerJob :: Compiler () a -- ^ Compiler to run
71− -> Identifier
72+ -> Identifier -- ^ Target identifier
72− -> ResourceProvider
73+ -> ResourceProvider -- ^ Resource provider
73− -> DependencyLookup
74+ -> DependencyLookup -- ^ Dependency lookup table
75+ -> Maybe FilePath -- ^ Route
75−runCompilerJob compiler identifier provider lookup' =
77+runCompilerJob compiler identifier provider lookup' route =
76 runReaderT (unCompilerM $ compilerJob compiler ()) env
78 runReaderT (unCompilerM $ compilerJob compiler ()) env
78 env = CompilerEnvironment
80 env = CompilerEnvironment
79 { compilerIdentifier = identifier
81 { compilerIdentifier = identifier
80 , compilerResourceProvider = provider
82 , compilerResourceProvider = provider
81 , compilerDependencyLookup = lookup'
83 , compilerDependencyLookup = lookup'
84+ , compilerRoute = route
84runCompilerDependencies :: Compiler () a
87runCompilerDependencies :: Compiler () a