summaryrefslogtreecommitdiff
path: root/dhall/src/syntax/ast (follow)
Commit message (Collapse)AuthorAgeFilesLines
* add type substitutions to serde_dhallstuebinm2021-04-101-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | this adds subsititutions, which work similar to the `Dhall.substitutions` mechanism of the Haskell dhall package, and which can be used e.g. like this: ```rust serde_dhall.from_str(...) .substitute_names(hashmap!["Newtype" => static_type]) .parse::<SimpleType>()? ``` The idea behind this is to make it easy to add programmer-defined types which may be used in configs for programs, without forcing the program's users to re-import the same type definitions each time (or the programmers to keep the dhall-based definitions in sync with their rust types, since these are now generated automatically). Caveats so far: - makes some of the code ugly (dhall internals are now used in serde_dhall/src/lib.rs, for example) - haven't tested error messages so far - some unecessary copying of strings and static type values
* Untangle caching codeNadrieril2020-11-012-4/+3
|
* Prefer u64/i64 to usize/isizeNadrieril2020-10-281-3/+2
|
* Make `SimpleValue` deserializable within other typesNadrieril2020-10-271-0/+1
| | | | Fixes https://github.com/Nadrieril/dhall-rust/issues/184
* spec: Enable `with` optimizationsNadrieril2020-09-141-1/+0
|
* spec: fix precedence of `===` and `with`Nadrieril2020-06-251-0/+6
|
* Deserialize `Prelude.Map` and `toMap` to a map instead of a listNadrieril2020-04-101-0/+6
|
* Move duplicate field checking to parserNadrieril2020-04-073-286/+2
|
* Move BinOp and Builtin definitions in the relevant moduleNadrieril2020-04-061-68/+1
|
* Extract operation-related code to a new moduleNadrieril2020-04-061-63/+2
|
* Factor out operations in typecheckNadrieril2020-04-061-2/+2
|
* Split off operations from main expr enumNadrieril2020-04-062-106/+115
|
* Check code hashes in importNadrieril2020-04-051-0/+8
|
* Brutally make all of dhall pubNadrieril2020-03-314-13/+13
|
* Rename LitKind to NumKindNadrieril2020-03-312-4/+4
|
* Fix indexing for spans that go to the end of the inputNadrieril2020-03-311-5/+7
|
* Upgrade annotate-snippets versionNadrieril2020-03-311-8/+2
|
* Remove more unnecessary parens in printerNadrieril2020-03-202-2/+22
|
* Remove never_type featureNadrieril2020-03-171-2/+4
|
* Run clippyNadrieril2020-03-171-2/+2
|
* Implement record punsNadrieril2020-03-111-0/+1
|
* Add support for `with` keywordNadrieril2020-03-101-0/+1
|
* Implement remote imports and cleanup import chainingNadrieril2020-03-051-5/+5
|
* Implement `as Location` importsNadrieril2020-03-051-29/+0
|
* Implement some normalization simplificationsNadrieril2020-03-051-1/+1
|
* Normalization for ProjectionByExprBasile Henry2020-03-021-1/+1
|
* Add support for dotted field syntaxNadrieril2020-02-201-1/+2
|
* Add support for duplicate record fieldsNadrieril2020-02-202-1/+5
|
* Expose fewer pub thingsNadrieril2020-02-193-45/+7
|
* Remove some unused codeNadrieril2020-02-171-24/+0
|
* Start requiring Universe to build a TypeNadrieril2020-02-161-0/+7
|
* Introduce LitKind to factor out common enum nodesNadrieril2020-02-112-12/+15
|
* Simplify ExprKind visitorNadrieril2020-02-112-140/+84
|
* Remove the Embed variant from ExprKindNadrieril2020-02-112-57/+31
|
* Resolve by ref instead of by mutNadrieril2020-02-092-215/+4
|
* Workaround panic in a serde_dhall exampleNadrieril2020-02-041-2/+4
| | | | | Unsure what's causing it, most probably mixing of spans from different inputs
* Fix spans for unions and recordsNadrieril2020-02-021-0/+6
|
* Implement once nice error using annotate_snippetsNadrieril2020-02-011-0/+30
|
* Cleanup variable handlingNadrieril2020-01-291-11/+5
|
* Finally get rid of all of the shift/subst_shift !Nadrieril2020-01-291-22/+0
|
* Remove dead codeNadrieril2020-01-291-4/+0
|
* Add Expr visitor and improve tyexpr_to_exprNadrieril2020-01-182-46/+40
|
* Introduce intermediate representation that stores typed exprNadrieril2020-01-181-1/+1
|
* Replace all bulk shifting by a single shiftNadrieril2020-01-171-26/+0
|
* Implement bulk shiftingNadrieril2020-01-171-4/+29
|
* Simplify Shift and Subst instancesNadrieril2020-01-171-3/+0
|
* Remove binder idsNadrieril2020-01-171-0/+9
| | | | The underlying purpose of them turned out to be unsound
* Implement traverse_ref for ValueKindNadrieril2020-01-172-2/+3
|
* Deserialize more typesNadrieril2020-01-161-0/+4
|
* Add two new Integer builtinsNadrieril2019-12-231-0/+2
|