This is a BC break since this generates assertions by default. To maintain
BC, set `@allow-zero@' and `@allow-negative@' to `true' in existing template
applications.
* core/insurance.xml
(assert_ignore_premium_zero, assert_ignore_premium_negative): New params.
(_premium_): Generate assertions.
[@allow-zero@, @allow-negative@]: New params.
This is the start of a working build for core.
* .gitignore: Ignore generated files from configuration and build.
* build.xml: Copy from rater repo. This is the last remaining ant-based
dependency and can be gotten rid of; see comments.
* configure.ac: New file.
* rater/build-aux, rater/src: New symlinks.
This was broken by a previous commit, but was not noticed because
the test cases aren't being compiled as part of the build yet!
Now that we have tamed, that is an option.
* test/core/insurance.xml: Add missing @desc@.
* assert.xml (_assert_)[@neg-desc@]: New param to allow setting the
description of the negative classification. This is especially useful
when humans are going to be reading the assertion classifications; it can
otherwise be very confusing.
* assert.xml (_assert_)[@neg-as@, @neg-yields@]: Rename from `@neg_as@' and
`@neg_yields' respectively.
This renames these params to be consistent with modern standards.
We want to do this before they're actually in use.
This won't be a problem in practice if nothing imports the
package, so existing systems won't be affected.
* datetime.xml: New assertion for timestamp_current.
* test/core/suite.xml: Import new fold test package.
* test/core/vector/fold.xml: New test package.
* vector/fold.xml: New package. Adds `_unfold-vector-grouped_'.
This would be better handled by better template arithmetic features, but
that's for another time.
* tplgen.xml (_for-each-n_): Add `current_n_dec' for caller body, which
decrements `current_n` by 1 (for 0-indexed values).
This makes it more unlikely to actually occur in a table lookup;
the previous value worried me.
* vector/filter.xml (TABLE_WHEN_MASK_VALUE): Decrease value.
These need to be re-thought, as they are now just confusing. For now,
things should just use the _assert_ primitive.
* assert.xml (_assert-nonzero_, _fail-on-empty_): Remove templates.
Keep things consistent. A deprecation warning will be displayed for
`_fail-on-empty_'.
* assert.xml (_assert-nonzero_): Rename from `_fail-on-empty'.
(_fail-on-empty_): Alias to `_assert-nonzero'. Display deprecation
warning.