<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dhall_rust/serde_dhall, branch substitutions</title>
<subtitle>working copy forked from https://github.com/Nadrieril/dhall-rust
</subtitle>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/'/>
<entry>
<title>inject_types -&gt; with_builtin_types</title>
<updated>2021-05-08T16:38:37+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-08T16:38:37+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=3d4afe62809ad5263b303a29ec543e4c39310d97'/>
<id>3d4afe62809ad5263b303a29ec543e4c39310d97</id>
<content type='text'>
at request of Nadrieril.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
at request of Nadrieril.
</pre>
</div>
</content>
</entry>
<entry>
<title>substitute_names -&gt; inject_types</title>
<updated>2021-05-01T22:36:45+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-01T22:33:31+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=e65c53a8e22e2edf209a31ad28ba67ac5d78bed7'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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!
</pre>
</div>
</content>
</entry>
<entry>
<title>remove forgotten println</title>
<updated>2021-05-01T21:43:45+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-05-01T21:43:45+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=a0776173fabe05ed82e0283b55d85a2fffc511bf'/>
<id>a0776173fabe05ed82e0283b55d85a2fffc511bf</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>substitutions: add test to serde.rs</title>
<updated>2021-04-26T19:48:19+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-04-26T19:48:19+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=46adf95726727941f64cbf77dacc0bce41901d6b'/>
<id>46adf95726727941f64cbf77dacc0bce41901d6b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>substitutions: add documentation</title>
<updated>2021-04-10T21:28:29+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-04-10T21:28:29+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=9c3d04e84c8f22db4a616cf1a98bd90dc27819cb'/>
<id>9c3d04e84c8f22db4a616cf1a98bd90dc27819cb</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>add type substitutions to serde_dhall</title>
<updated>2021-04-10T20:59:07+00:00</updated>
<author>
<name>stuebinm</name>
</author>
<published>2021-04-10T20:59:07+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=2958333c83dce911463734e391fe3ccc76cfc9d5'/>
<id>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>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
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
</pre>
</div>
</content>
</entry>
<entry>
<title>release: serde_dhall version 0.10.1</title>
<updated>2021-04-03T17:30:34+00:00</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2021-04-03T17:30:34+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=c307b914eca192f8e8648345e365f9c0207bc18c'/>
<id>c307b914eca192f8e8648345e365f9c0207bc18c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>release: dhall_proc_macros version 0.5.1</title>
<updated>2021-04-03T17:30:34+00:00</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2021-04-03T17:30:34+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=74443904ed73aac763187608c1a303054469de82'/>
<id>74443904ed73aac763187608c1a303054469de82</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>release: dhall version 0.10.1</title>
<updated>2021-04-03T17:30:34+00:00</updated>
<author>
<name>Nadrieril</name>
</author>
<published>2021-04-03T17:30:34+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=299adf4ef35b78f97eb7582f1a73349fdf3100e3'/>
<id>299adf4ef35b78f97eb7582f1a73349fdf3100e3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove a redundant semicolon in a test for good measure.</title>
<updated>2021-03-27T10:51:05+00:00</updated>
<author>
<name>Ceri Storey</name>
</author>
<published>2021-03-27T09:48:05+00:00</published>
<link rel='alternate' type='text/html' href='https://stuebinm.eu/git/dhall_rust/commit/?id=87c120d6b728099cffc547d340ea4c4cc304acf9'/>
<id>87c120d6b728099cffc547d340ea4c4cc304acf9</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
