úÎA->t     None =K Yesod sub site for PureScript.4This is meant to be stored in synchronized variable.3A flag telling us if compiler subthread is running.`Results of file parsing, time and either errors as text or list of modules, keyed by file path.íCached modules compiled with "module" and "main" options to Text. Result of compilation is either compile error(s) as Text or the Text of compiled module. Values in map are tuples of time of compilation attempt and compilation result.Options for Yesod PureScript.'Mode of compilation: dynamic or static.-Source directories to look for ".purs" files..Ignores, list of regexps that prevent parsing. Defines what and how to compile.úOptionally specifies div id in parent page that will be used to display compilation error if any. This is because usually resulting JS is loaded by HTML page, and it might save a time (esp for trivial errors) if error is displayed directly in HTML.;Option passed to PureScript compiler, makes errors verbose.Per-module compile options.None 2346=EHKM +Shortcut type for handlers of this subsite. @Things that are Yesod master can also be YesodPureScript master. ÎDefault options for YesodPureScript. Needed when creating PureScriptSite. Please don't create YesodPureScriptOptions by calling constructor directly, so I can add more options without breaking your code. LCreate pure script site. Initialises MVar of compiled modules to empty map. 3For convenience: turns a path as list into a route.!DCreate JS error report that tries to insert itself into parent page."¬This is the main handler, "entry point" for YesodPureScript. It takes a path to module as a list of Text, then it parses and compiles stuff and returns results to client.#ÿ0Called by file-watching thread after loading module from purs file. Updates in-memory cache of modules. Result of compilation is either textual representation of parse errors or module. Cache of loaded modules is key-ed by purs filename - this way we can efficiently handle file deletions or renames.$]Executed when file disappears from watched dirs, removes module from PureScriptSite's state.%JExecuted on file change. Updates loaded modules MVar-ed in PureScriptSite.&1Start file-watching stuff if not already started.'’Creates thread that watches input dirs and fires events on files. This way modified files are instantly loaded, making dev setup more responsive.(9Take directory FilePath, find '*.purs' files recursively.)¬High level parse interface for PureScript. Takes file path as Text, returns either error as Text or parsed modules. Note: PureScript file can define more than one module.*)Find files in directories and parse them.+ØParse modules, return map of path -> parse result: either parse error or parsed modules. Current impl uses Filesystem.FilePath in hopes that it's faster than String-based impl and that it handles edge cases better.,&Compile PureScript modules in "--main  module" mode.-RTakes PureScriptSite and module name and tries to compile given module in "--main  moduleç" mode. PureScriptSite contains parsed modules. Compiled module is stored (cached) in PureScriptSite's state with time of compilation. Only compile result is returned. Cached and returned result of compilation has type of Text. PureScript Template Haskell©Either add link to dynamically compiled PureScript or return statically compiled PureScript. yesodPureScript :: Bool -> Route -> YesodPureScriptOptions -> Text -> Q Exp.yYesodPureScriptOptions thing is also Data.Default.Default, because it has "def", which is defaultYesodPureScriptOptions./WAll things that are "YesodPureScript master", are also this other thing, because they nobody knows, because TH. !0"#$%&'123()*+4,- ./    !0"#$%&'123()*+4,- ./5      !"#$%&'()*+,-./01234yesod-purescript-0.0.4.6Yesod.PureScriptYesod.PureScript.DataPureScriptSiteYesodPureScriptOptionsypsoModeypsoSourceDirectoriesypsoSourceIgnoresypsoCompileOptionsypsoErrorDivIdypsoVerboseErrorsYesodPureScriptdefaultYesodPureScriptOptionscreateYesodPureScriptSitegetPureScriptRouteaddPureScriptWidgetyesodPureScriptPureScriptSiteStatepsssWatchStarted psssModulespsssCompiledModulesCompileOptionspssState pssOptionscoMainModeStaticDynamicPureScriptCompiledRresourcesPureScriptSiteTFCo:R:RoutePureScriptSitePureScriptHandlercreateJavaScriptErrorgetPureScriptCompiledR addModule removeModulehandleFileEventensureWatchStartedstartWatchThread findFiles parseFile parseFilesparseSiteFilescompilePureScriptcompilePureScriptFile$fDefaultYesodPureScriptOptions($fYesodSubDispatchPureScriptSiteHandlerTgetPureScriptInfo matchPath matchPathAny matchPathNonepreludeModules