mirror of
https://github.com/edwinb/Idris2-boot.git
synced 2024-09-11 16:05:51 +03:00
These can give valuable information, but since they're not well typed, we have to rebuild as close an approximation as we can before passing it to the case tree compiler. We can do this in a type-directed way, but ignoring whether any of the arguments are convertible, and not trying to solve any of the implicits. If this fails, it doesn't use the impossible case, otherwise it uses it to find the missing cases in the resulting case tree.
137 lines
2.6 KiB
Plaintext
137 lines
2.6 KiB
Plaintext
package idris2
|
|
|
|
modules =
|
|
Compiler.Common,
|
|
Compiler.CompileExpr,
|
|
Compiler.Inline,
|
|
Compiler.Scheme.Chez,
|
|
Compiler.Scheme.Chicken,
|
|
Compiler.Scheme.Racket,
|
|
Compiler.Scheme.Common,
|
|
|
|
Control.Delayed,
|
|
|
|
Core.AutoSearch,
|
|
Core.Binary,
|
|
Core.CaseBuilder,
|
|
Core.CaseTree,
|
|
Core.Context,
|
|
Core.CompileExpr,
|
|
Core.Core,
|
|
Core.Coverage,
|
|
Core.Directory,
|
|
Core.Env,
|
|
Core.FC,
|
|
Core.GetType,
|
|
Core.Hash,
|
|
Core.LinearCheck,
|
|
Core.Metadata,
|
|
Core.Name,
|
|
Core.Normalise,
|
|
Core.Options,
|
|
Core.Reflect,
|
|
Core.Termination,
|
|
Core.TT,
|
|
Core.TTC,
|
|
Core.Unify,
|
|
Core.UnifyState,
|
|
Core.Value,
|
|
|
|
Data.ANameMap,
|
|
Data.Bool.Extra,
|
|
Data.IntMap,
|
|
Data.IOArray,
|
|
Data.NameMap,
|
|
Data.StringMap,
|
|
Data.These,
|
|
Data.StringTrie,
|
|
|
|
Idris.CommandLine,
|
|
Idris.Desugar,
|
|
Idris.Elab.Implementation,
|
|
Idris.Elab.Interface,
|
|
Idris.Error,
|
|
Idris.IDEMode.CaseSplit,
|
|
Idris.IDEMode.Commands,
|
|
Idris.IDEMode.MakeClause,
|
|
Idris.IDEMode.Parser,
|
|
Idris.IDEMode.REPL,
|
|
Idris.IDEMode.TokenLine,
|
|
Idris.ModTree,
|
|
Idris.Package,
|
|
Idris.Parser,
|
|
Idris.ProcessIdr,
|
|
Idris.REPL,
|
|
Idris.REPLCommon,
|
|
Idris.REPLOpts,
|
|
Idris.Resugar,
|
|
Idris.SetOptions,
|
|
Idris.Socket,
|
|
Idris.Socket.Data,
|
|
Idris.Socket.Raw,
|
|
Idris.Syntax,
|
|
|
|
Parser.Lexer,
|
|
Parser.Support,
|
|
|
|
Text.Lexer,
|
|
Text.Lexer.Core,
|
|
Text.Parser,
|
|
Text.Parser.Core,
|
|
Text.Quantity,
|
|
Text.Token,
|
|
|
|
TTImp.BindImplicits,
|
|
TTImp.Elab,
|
|
TTImp.Elab.Ambiguity,
|
|
TTImp.Elab.App,
|
|
TTImp.Elab.As,
|
|
TTImp.Elab.Binders,
|
|
TTImp.Elab.Case,
|
|
TTImp.Elab.Check,
|
|
TTImp.Elab.Dot,
|
|
TTImp.Elab.Hole,
|
|
TTImp.Elab.ImplicitBind,
|
|
TTImp.Elab.Lazy,
|
|
TTImp.Elab.Local,
|
|
TTImp.Elab.Prim,
|
|
TTImp.Elab.Quote,
|
|
TTImp.Elab.Record,
|
|
TTImp.Elab.Rewrite,
|
|
TTImp.Elab.Term,
|
|
TTImp.Elab.Utils,
|
|
TTImp.Impossible,
|
|
TTImp.Interactive.CaseSplit,
|
|
TTImp.Interactive.ExprSearch,
|
|
TTImp.Interactive.GenerateDef,
|
|
TTImp.Interactive.MakeLemma,
|
|
TTImp.Parser,
|
|
TTImp.ProcessData,
|
|
TTImp.ProcessDecls,
|
|
TTImp.ProcessDef,
|
|
TTImp.ProcessParams,
|
|
TTImp.ProcessRecord,
|
|
TTImp.ProcessType,
|
|
TTImp.Reflect,
|
|
TTImp.TTImp,
|
|
TTImp.Unelab,
|
|
TTImp.Utils,
|
|
TTImp.WithClause,
|
|
|
|
Utils.Binary,
|
|
Utils.Hex,
|
|
Utils.Shunting,
|
|
|
|
Yaffle.Main,
|
|
Yaffle.REPL
|
|
|
|
sourcedir = src
|
|
executable = idris2
|
|
-- opts = "--cg-opt -O2 --partial-eval"
|
|
-- opts = "--cg-opt -pg --partial-eval"
|
|
opts = "--partial-eval"
|
|
-- opts = "--partial-eval --cg-opt -lws2_32" -- windows
|
|
|
|
main = Idris.Main
|
|
|