VIn      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~  Safe-InferedRead all stuff from a process.  Safe-Infered Safe-Infered-=Convert a Haskell value to a value representing a Fay value. .=Convert a value representing a Fay value to a Haskell value. -.-.-.-.  Safe-InferedNone/BThese are the data types that are serializable directly to native E JS data types. Strings, floating points and arrays. The others are: 7 actiosn in the JS monad, which are thunks that shouldn' t be forced > when serialized but wrapped up as JS zero-arg functions, and  unknown types can'.t be converted but should at least be forced. 0 Unknown. 9Literal value type. ?Expression type. VStatement type. `&The JavaScript FFI interfacing monad. a Error type. xPrint some value. z2Just a convenience class to generalize the parsing/ printing of  various types of syntax. |2To be used to force name sanitization eventually. }*Convenience type for function parameters. ~Compile monad. State of the compiler. Configuration of the compiler. Default configuration. j/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~g/0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~gV_^]\[ZYXW?UTSRQPONMLKJIHGFEDCBA@9>=<;:}|awvutsrqponmlkjihgfedcb~z{xy`/876543210/ 8765432109>=<;:?UTSRQPONMLKJIHGFEDCBA@V _^]\[ZYXW`awvutsrqponmlkjihgfedcbxyz{|}~  Safe-Infered )Contains allowed foreign function types. 5In case you want to distinguish values with a JsPtr. Declare a foreign action. Functions are foreignable. JS values are foreignable. &Pointers to arbitrary objects are OK. Lists ! arrays are OK. Bools are OK. Characters are OK. All numbers in JS are double.  Unit is OK. The foreign value. Bottom.   Safe-Infered**'NoneJust to satisfy GHC. Just to satisfy GHC. ^  !"#$%&'()*+,`^` "#& '%$,+(!*)  Safe-Infered %Encode a Haskell name to JavaScript. $Helpful for writing variable names. /Helpful for writing qualified symbols (Fay.*). Print an expression. Print a single statement. Print a list of statements. $Print (and properly encode) a name. Print module name. 0Print special constructors (tuples, list, etc.) 4Print (and properly encode to JS) a qualified name. 5Print literals. These need some special encoding for 6 JS-format literals. Could use the Text.JSON library.   Safe-Infered 3Compile something that compiles to something else. Run the compiler. ?Compile a Haskell source string to a JavaScript source string. ?Compile a Haskell source string to a JavaScript source string. Compile from a string. ;Compile the given input and print the output out prettily. ?Compile a String of Fay and print it as beautified JavaScript. :Compile the given Fay code for the documentation. This is * specialised because the documentation isn't really real   compilation. "Compile the top-level Fay module. Compile Haskell module. Format a JS string using  js-beautify, or return the JS as-is if   js-beautify is unavailable. Compile Haskell expression.   Safe-Infered %Something to feed into the compiler. +A result of something the compiler writes. Compile file program to & Compile readable/writable values. Compile the given file. 0Compile the given module to a runnable program. !Print an this.x = x; export out. -Convert a Haskell filename to a JS filename. Simple file reader. Simple file writer.         !"#$ %&' () (* +, - . / 0 1 2 3 4 5 6 7 8 9 : ;< = (> ? @ ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklTmnopqrstuvwxyz{|}~o                   fay-0.9.1.0Language.Fay.PreludeLanguage.Fay.ConvertLanguage.Fay.TypesLanguage.Fay.FFI Language.FayLanguage.Fay.CompilerSystem.Process.Extra Paths_fayControl.Monad.IOLanguage.Fay.StdlibLanguage.Fay.PrintbaseGHC.Num-ghc-prim GHC.Classes==>=EqGHC.BaseMonad Data.DataDataGHC.ReadReadGHC.ShowShowData.Typeable.InternalTypeable GHC.TypesBoolCharDouble integer-gmpGHC.Integer.TypeIntegerStringFalseTrue Data.MaybeNothingMaybe Text.ReadreadgmapMogmapMpgmapMgmapQigmapQgmapQrgmapQlgmapT dataCast2 dataCast1 dataTypeOftoConstrgunfoldgfoldlGHC.Real/showJust*+typeOf/=<=&&||<> showToFay readFromFayFundamentalType UnknownTypeBoolType DoubleType StringTypeDateType UserDefinedListTypeJsType FunctionTypeJsLitJsBool JsFloatingJsIntJsStrJsCharJsExpJsObjJsInfixJsEqJsIndex JsInstanceOf JsThrowExpJsNewJsListJsUpdatePropExternJsGetPropExtern JsUpdatePropJsLookup JsGetPropJsParen JsSequenceJsNull JsTernaryIfJsAppJsFunJsRawExpJsNameJsStmtJsBlock JsContinue JsSetPropJsUpdateJsWhileJsThrow JsEarlyReturnJsIfJsVarFay CompileErrorFfiFormatInvalidJavaScriptFfiFormatIncompleteArgFfiFormatNoSuchArgFfiFormatBadCharsFfiNeedsTypeSigRecursiveDoUnsupportedInvalidDoBlockLetUnsupportedUnsupportedModuleSyntax EmptyDoBlockUnsupportedGuardedAltsUnsupportedRhsUnsupportedPatternUnsupportedOperatorUnsupportedLetBindingUnsupportedLiteralUnsupportedExpressionUnsupportedWhereInMatchUnsupportedMatchSyntaxUnsupportedExportSpecUnsupportedDeclaration ParseError PrintableprintJS CompilesTo compileToJsParamCompile unCompile CompileState stateConfig stateExportsstateExportAllstateModuleName stateRecords stateFayToJs stateJsToFay CompileConfig configTCOconfigInlineForceconfigFlattenAppsconfigExportBuiltinsconfigDirectoryIncludesconfigPrettyPrintconfigHtmlWrapperconfigHtmlJSLibs configAutorundefaultCompileStateForeignJsPtrffiOrderingEQLTGTsndfstfindanyfilternotnullmapnubelemsortcomparesortByinsertBywhenenumFrom enumFromTozipWithzipflipmaybe.++$concatfoldrfoldllookup intersperse prependToAll intercalateforM_mapM_constlengthmodminmax fromInteger fromRational>>>>=failreturncompile runCompile compileViaStr compileToAstcompileFromStr printCompileprintTestCompilecompileForDocscompileToplevelModule compileModuleprettyPrintString compileExpReaderreadinWriterwriteout compileFromTocompileReadWrite compileFilecompileProgram printExporttoJsNamereadAllFromProcessreadAllFromProcess'version getBinDir getLibDir getDataDir getLibexecDirgetDataFileNameio$fDefaultCompileConfig$fExceptionCompileError$fErrorCompileError $fForeign(->) $fForeignFay$fForeignJsPtr $fForeign[] $fForeignBool $fForeignChar$fForeignDouble $fForeign() jsEncodeName$fIsStringQName$fIsStringModuleName$fPrintableJsExp$fPrintableJsStmt $fPrintable[]$fPrintableName$fPrintableModuleName$fPrintableSpecialCon$fPrintableQName$fPrintableJsLit reservedWords$fIsStringName$fCompilesToExpJsExp$fCompilesToModule[] $fReader[] $fWriter[]