<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dhall_rust/serde_dhall/src/options, branch substitutions</title>
<subtitle>working copy forked from https://github.com/Nadrieril/dhall-rust</subtitle>
<id>https://stuebinm.eu/git/dhall_rust/atom/serde_dhall/src/options?h=substitutions</id>
<link rel='self' href='https://stuebinm.eu/git/dhall_rust/atom/serde_dhall/src/options?h=substitutions'/>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/'/>
<updated>2021-05-08T16:38:37Z</updated>
<entry>
<title>inject_types -&gt; with_builtin_types</title>
<updated>2021-05-08T16:38:37Z</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-08T16:38:37Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=3d4afe62809ad5263b303a29ec543e4c39310d97'/>
<id>urn:sha1:3d4afe62809ad5263b303a29ec543e4c39310d97</id>
<content type='text'>
at request of Nadrieril.
</content>
</entry>
<entry>
<title>substitute_names -&gt; inject_types</title>
<updated>2021-05-01T22:36:45Z</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-01T22:33:31Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=e65c53a8e22e2edf209a31ad28ba67ac5d78bed7'/>
<id>urn:sha1:e65c53a8e22e2edf209a31ad28ba67ac5d78bed7</id>
<content type='text'>
This does three things:
1. rename the substitute_names function into inject_types, and makes
   it accept anything that implements IntoIterator instead of just HashMaps
2. adds an extra function to inject just a single type
3. makes these functions chainable; before, each call to
   substitute_names would discard previous invocations. However, this
   currently comes at the cost of a lot of ugly copying.

also, more tests!
</content>
</entry>
<entry>
<title>remove forgotten println</title>
<updated>2021-05-01T21:43:45Z</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-01T21:43:45Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=a0776173fabe05ed82e0283b55d85a2fffc511bf'/>
<id>urn:sha1:a0776173fabe05ed82e0283b55d85a2fffc511bf</id>
<content type='text'>
</content>
</entry>
<entry>
<title>substitutions: add documentation</title>
<updated>2021-04-10T21:28:29Z</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-04-10T21:28:29Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=9c3d04e84c8f22db4a616cf1a98bd90dc27819cb'/>
<id>urn:sha1:9c3d04e84c8f22db4a616cf1a98bd90dc27819cb</id>
<content type='text'>
</content>
</entry>
<entry>
<title>add type substitutions to serde_dhall</title>
<updated>2021-04-10T20:59:07Z</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-04-10T20:59:07Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=2958333c83dce911463734e391fe3ccc76cfc9d5'/>
<id>urn:sha1:2958333c83dce911463734e391fe3ccc76cfc9d5</id>
<content type='text'>
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" =&gt; static_type])
  .parse::&lt;SimpleType&gt;()?
```

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
</content>
</entry>
<entry>
<title>chore: convert doc links to intra-doc links</title>
<updated>2020-12-18T22:19:23Z</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2020-12-18T22:10:54Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=71ef15a3d41af43697b9c96feef80dd88425e7d4'/>
<id>urn:sha1:71ef15a3d41af43697b9c96feef80dd88425e7d4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Unify `skip_resolve_expr` with normal resolution</title>
<updated>2020-12-07T19:34:39Z</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2020-12-07T15:24:36Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=922199ab322efa7b62bf4698cf5ed9e2d7a378c0'/>
<id>urn:sha1:922199ab322efa7b62bf4698cf5ed9e2d7a378c0</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Thread cx everywhere else imports are read</title>
<updated>2020-12-07T19:34:39Z</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2020-12-07T14:15:43Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=8c5b3ff15f2125e9d731fc199e194e1993c36b37'/>
<id>urn:sha1:8c5b3ff15f2125e9d731fc199e194e1993c36b37</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Thread cx through normalization</title>
<updated>2020-12-07T19:34:38Z</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2020-12-06T23:55:21Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=c785b7c0c6cd8b3b1cc15eb79caf982a757020ba'/>
<id>urn:sha1:c785b7c0c6cd8b3b1cc15eb79caf982a757020ba</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Don't store internal structures of `dhall` in `serde_dhall`</title>
<updated>2020-12-07T19:34:38Z</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2020-12-07T11:56:00Z</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=697e93e0f56e3c063ce253983f703be88d468b47'/>
<id>urn:sha1:697e93e0f56e3c063ce253983f703be88d468b47</id>
<content type='text'>
</content>
</entry>
</feed>
