summaryrefslogtreecommitdiff
path: root/dhall/src/phase (unfollow)
Commit message (Collapse)AuthorFilesLines
2019-08-12Remove ensure_... macros in typecheckNadrieril1-115/+89
They weren't worth it
2019-08-10Remove dhall::expr!() macroNadrieril2-29/+81
It's a lot of hassle for not a lot of benefit
2019-08-10Update dhall-lang submoduleNadrieril1-0/+13
2019-08-08Update dhall-lang submoduleNadrieril1-0/+1
2019-08-08Add support for dependent typesNadrieril3-23/+56
2019-08-07Update dhall-lang submoduleNadrieril1-0/+3
2019-08-07Flatten nested let bindingsNadrieril1-6/+40
2019-08-07Remove an annoying redundancy in the test harnessNadrieril1-2/+2
2019-08-07Add binary-decode testsNadrieril1-0/+21
2019-08-07Add truncated Natural subtractionNadrieril2-0/+11
2019-08-07Remove union literals from the languageNadrieril3-25/+3
2019-08-07Various parsing tweaksNadrieril1-3/+3
2019-08-06Generalize empty list annotationsNadrieril1-2/+6
2019-08-06Prepare for https://github.com/dhall-lang/dhall-lang/pull/630Nadrieril3-42/+66
2019-08-06rustfmtNadrieril1-1/+2
2019-08-06Auto-generate typechecking tests listNadrieril1-395/+0
2019-08-06Change some testsNadrieril1-0/+5
2019-08-06RFC3986 URLsNadrieril1-1/+7
2019-08-06Add some testsNadrieril1-0/+10
2019-08-06Add some new tests and implement import alternativesNadrieril2-3/+3
2019-08-06rustfmtNadrieril1-7/+10
2019-08-06Update dhall-lang submoduleNadrieril1-0/+2
2019-08-06Remove old-style optional literalsNadrieril3-37/+16
2019-08-06Inline headersNadrieril3-15/+21
2019-08-03rustfmtNadrieril2-26/+64
2019-08-03Update dhall-lang submoduleNadrieril1-12/+12
2019-08-03Update dhall-lang submoduleNadrieril1-2/+2
2019-08-03Simplify Const checking logicFintanH1-11/+7
2019-08-01Add typechecking for RecursiveRecordTypeMerge.FintanH2-7/+117
The implementation brings with it intersection_with_key over HashMaps to help with the type checking of records of records. The implementation first checks that the Const values line up with the LHS and RHS. Then checks that combining the records does not result in a FieldCollision. It will finally return the shared Const type of the arguments.
2019-08-01Mark RecursiveRecordMerge as unreachableFintanH1-0/+1
2019-08-01Add the typechecking of RecursiveRecordMerge.FintanH2-8/+126
This introduces an external function for HashMaps to perform an outer join so that you can do a unionWith but with more power by having a new tagert type. Using outer_join and recursively looking through records of records we have an implementation for combining records.
2019-07-31Add unreachable call for RightBasedRecordMerge caseFintanH1-0/+1
2019-07-31Reuse the merge_maps function to implement the right-biased unionFintanH2-7/+7
2019-07-31Add case for RightBasedRecordMerge in the typechecking phase.Fintan Halpenny1-5/+46
The implementation checks the types and kinds of the LHS and RHS. In the happy path it unions the HashMap prefering keys on the RHS over the LHS, and the result is the type of the resulting HashMap. The error cases are: - If the kinds of the records differ it results in a RecordMismatch error. - If either the LHS or RHS are not records it results in a MustCombineRecord error.
2019-05-12Finish implementing binary encodingNadrieril1-6/+8
2019-05-12clippyNadrieril2-120/+112
2019-05-12Include success or failure prefix in test filteringNadrieril2-6/+6
2019-05-12Implement binary encodingNadrieril5-25/+310
Closes #39
2019-05-10Write a custom map type that allows duplicatesNadrieril1-29/+38
2019-05-09Merge Type and TypedNadrieril2-104/+54
2019-05-09Fix missing methods for testsNadrieril1-0/+8
2019-05-09Make visibilities more consistentNadrieril5-57/+51
2019-05-09Rewrite Deserialize trait around new Value and TypeNadrieril1-7/+1
2019-05-09Rewrite the StaticType trait and everything around itNadrieril2-47/+12
2019-05-09Tweak TypedNadrieril1-15/+16
2019-05-09Reduce the distance between Type and TypedNadrieril2-109/+97
2019-05-09Remove TypeIntermediate in favor of special-purpose functionsNadrieril1-214/+183
2019-05-09Small utility SubExpr::from_builtinNadrieril1-9/+3
2019-05-09ExprF need not be generic in LabelNadrieril2-7/+5
2019-05-09Make shift fallible and improve shift ergonomicsNadrieril2-11/+20