Commit Graph

18 Commits

Author SHA1 Message Date
Giuseppe Lomurno
7b903be9ed More precise token boundaries 2020-06-13 16:50:54 +02:00
Edwin Brady
02d371a94b Add reflection operation for adding declarations
Declarations can be quoted with `[ decl ]. See reflection004 for an
example.
2020-06-01 15:01:52 +01:00
Edwin Brady
e2aabd6602 Add syntax for quoting names
`{{ n }} gives a value of type Name. No name resolution is attempted (so
no namespaces added etc)
2020-06-01 13:39:18 +01:00
Edwin Brady
2eb2ce6097 Add Bits primitives
Including appropriate casts, and Num/Eq/Ord/Show implementations.
Also includes new primitives in Data.Buffer, and calls to foreign
functions in C as 'unsigned'.
2020-06-01 11:48:03 +01:00
Edwin Brady
85c002c771 Progress on elaborator reflection
Add %runElab and start on scripts, although all they can do so far is
check a term. This does gives us, sort of, "template Idris" (as
demonstrated in test reflection002)
2020-05-31 01:36:54 +01:00
Fabián Heredia Montiel
0537aa12f5 Let DocComments trough from Lexer to Parser 2020-05-29 10:37:04 +01:00
Fabián Heredia Montiel
97366f022d Add missing totality annotations 2020-05-28 15:17:14 +01:00
Edwin Brady
70b41ca5f8 Some small parser improvements
- %inline in a few places, which helps especially when it's known at
compile time whether something consumes
- a little bit of reordering so that the most likely alternative is
tried first
- (not really much effect, but...) use fastPack from the Prelude for
building tokens
2020-05-27 19:00:33 +01:00
Fabián Heredia Montiel
731a416043 Split Package Specific Lexer/Rules from Lexer/{Common,Source} and Refactor Idris/Package
Co-authored-by: Matus Tejiscak <ziman@functor.sk>
2020-05-24 16:01:17 -05:00
Edwin Brady
3ec8631480 More coverage checking fixes
Still a couple of things to resolve in coverage and totality checking
before we can switch on %default, so don't expect quite the right
behaviour just yet. More progress though!

Also working on this has caught a few totality errors in the Idris 2
code base that Idris 1 missed... so these are fixed on the way.
2020-05-24 18:33:43 +01:00
Fabián Heredia Montiel
af85cbefa7 Extract Common Lexer Utilities 2020-05-21 12:52:26 -05:00
Fabián Heredia Montiel
5265c70c71 Extract Common Lexer Rules 2020-05-21 12:52:26 -05:00
Fabián Heredia Montiel
acaddc1e9d Rename module Parser.Rule to Parser.Rule.Source 2020-05-21 12:52:26 -05:00
Fabián Heredia Montiel
662782503f Rename module Parser.Lexer to Parser.Lexer.Source 2020-05-21 12:52:26 -05:00
Fabián Heredia Montiel
6a5d6647c1 Split Parser.Support 2020-05-20 15:00:42 -05:00
Fabián Heredia Montiel
0c76796862 Create new mapError utility function and refactor some parser code 2020-05-19 11:08:21 -05:00
Edwin Brady
17b17be963 Add missing files (I knew there'd be a couple...) 2020-05-18 00:28:24 +01:00
Edwin Brady
1fd92f5518 Checking up to TTImp.Elab.Term 2020-05-17 01:20:53 +01:00