Commit graph

158 commits

Author SHA1 Message Date
Sönke Ludwig 8f95f81040 Add algebraic() as a quick way to make a TaggedAlgebraic from a TaggedUnion. 2020-10-03 10:53:31 +02:00
Leonid Kramer c76f18a92d
Merge pull request #60 from s-ludwig/tohash
Add TaggedUnion.toHash.
2020-09-01 21:12:08 +02:00
Sönke Ludwig bde8e6eeff Add TaggedUnion.toHash.
Allows using TaggedUnions as associative array keys.
2020-08-28 15:44:36 +02:00
Sönke Ludwig 2875f53c1d
Merge pull request #59 from Geod24/preview-in
Add support for upcoming '-preview=in' switch
2020-08-15 09:42:08 +02:00
Geod24 51d1832290 Change hasType parameter from in to const scope
The two overloads (`in` and `in ref`) will conflict in the future.
To allow for `-preview=in` to be tested with many projects,
this simple fix can be applied. Later one, the overloads should
be merged into a single, `in` overload.
2020-08-15 16:35:53 +09:00
Leonid Kramer 49ab092d02
Merge pull request #58 from s-ludwig/nothrow_postblit
Add forceNothrowPostblit attribute.
2020-06-26 23:22:09 +02:00
Sönke Ludwig 0ed8847e31 Add forceNothrowPostblit attribute.
Enforces that TaggedUnion's postblit constructor is nothrow, raising an assertion error otherwise.
2020-06-26 22:36:44 +02:00
Sönke Ludwig d9e4e1f1af Bump meson project version number. 2020-05-12 14:32:17 +02:00
Sönke Ludwig cdee545d82
Merge pull request #57 from s-ludwig/fix_test_script_error
Fix unbound variable error in test script.
2020-05-12 14:30:21 +02:00
Sönke Ludwig 67ab369fc4 Fix unbound variable error in test script. 2020-05-12 14:24:26 +02:00
Sönke Ludwig 1cc98ac281 Update meson.build version number. 2020-05-12 12:19:35 +02:00
Sönke Ludwig 310d617e4e
Merge pull request #51 from Cogitri/bionic-ci
ci: install ninja via pip
2020-05-12 12:15:59 +02:00
Sönke Ludwig a265d75bad
Merge pull request #56 from drug007/patch-1
`TaggedUnion.toString` supports @safe
2020-05-12 12:15:22 +02:00
drug007 c30b17f3f4 TaggedUnion.toString supports @safe
Currently used `void delegate(const(char)[])` is not @safe by definition. In contrast `toString(W)` is able to deduce @safe-ty
2020-05-12 12:22:05 +03:00
Rasmus Thomsen 9281d8216a build: sync meson version back up to release version 2020-04-17 20:58:38 +02:00
Rasmus Thomsen a6ca315865 ci: enable use of meson again 2020-04-17 19:14:48 +02:00
Rasmus Thomsen f135c3dcb8 ci: install ninja via pip 2020-04-17 19:08:56 +02:00
Leonid Kramer 6ed851b336
Merge pull request #55 from s-ludwig/underscore_improvement
Provide nicer aliases for fields with trailing underscore.
2020-04-17 18:58:24 +02:00
Sönke Ludwig d50f507368 Provide nicer aliases for fields with trailing underscore. 2020-04-17 16:47:20 +02:00
Sönke Ludwig d24256a907
Merge pull request #54 from s-ludwig/disable_meson
Make meson test optional for now.
2020-04-09 21:34:12 +02:00
Sönke Ludwig bcf515c94a Make meson test optional for now. 2020-04-09 21:18:21 +02:00
Sönke Ludwig 7c0926d17b
Merge pull request #53 from s-ludwig/field_name_fix
Fix compile error when naming a TaggedUnion field "move".
2020-04-07 15:43:36 +02:00
Sönke Ludwig 7b34bdadde Fix compile error when naming a TaggedUnion field "move". 2020-04-06 13:45:16 +02:00
Sönke Ludwig a3078c34fc Fix another compile error related to generic visitors. 2020-04-04 15:15:53 +02:00
Sönke Ludwig ab3e8c5cf8
Merge pull request #50 from s-ludwig/fix_generic_visitor_error
Avoid instantiating generic visitor with types it cannot handle.
2020-04-04 13:47:13 +02:00
Sönke Ludwig 96bff347b5 Update build status badge to travis-ci-com 2020-04-04 12:34:49 +02:00
Sönke Ludwig 7a6da0ff79 Avoid instantiating generic visitor with types it cannot handle.
In cases where statically typed visitors need to be defined to avoid compile errors in a generic visitor, the generic one was still instantiated with the types already handled by the statically typed one(s), possibly resulting in a compile error.
2020-04-04 12:23:14 +02:00
Sönke Ludwig f9eb5878ad
Merge pull request #49 from Cogitri/meson
meson: fix build on macOS
2020-03-29 18:55:37 +02:00
Rasmus Thomsen 30b6690dca meson: fix build on macOS 2020-03-29 08:35:24 +02:00
Sönke Ludwig 7ce23e7a2e
Merge pull request #48 from Cogitri/meson
Add support for building with meson
2020-03-27 20:31:18 +01:00
Rasmus Thomsen 5c29d590c9 Add meson builds to CI 2020-03-26 11:07:03 +01:00
Rasmus Thomsen 2800c0ceb2 Add support for building with meson
Also fix an import in taggedalgebraic.d
2020-03-26 10:51:43 +01:00
Sönke Ludwig c658b37bdb
Merge pull request #46 from dukc/copyableUnits
Allowed copying of tagged unions containing unit values
2020-02-21 15:42:26 +01:00
dukc c42c9a4e57 Allowed copying of tagged unions containing unit values 2020-02-21 18:00:19 +02:00
Sönke Ludwig 30de5843ba
Merge pull request #45 from Geod24/dip1000
Enable dip1000, drop support for < 2.085.1, test on OSX
2020-02-11 09:40:33 +01:00
Geod24 7d47caa87d Enable dip1000, drop support for < 2.085.1, test on OSX 2020-02-04 13:45:42 +09:00
Sönke Ludwig fe2447f71a
Merge pull request #40 from schveiguy/addsafeonly
Add safeOnly UDA, associated tests. Fix issue with opUnary.
2019-12-01 18:17:41 +01:00
Steven Schveighoffer af42d78bf6 Add safeOnly UDA, associated tests. Fix issue with opUnary. 2019-12-01 10:54:07 -05:00
Leonid Kramer 80d8504a17
Merge pull request #43 from s-ludwig/visit_refactor
Fix "visit" instantiation conflict
2019-12-01 00:22:44 +01:00
Sönke Ludwig 73a494f0ae Include the whole API in package.d 2019-12-01 00:03:18 +01:00
Sönke Ludwig 8f425b37b5 Merge all visit() implementations into a single module.
Avoids template instantiation conflicts introduced by adding the second visit() in taggedalgebraic.taggedalgebraic. A compatibility alias is left in the taggedunion module to avoid breaking backwards compatibility.
2019-12-01 00:03:00 +01:00
Sönke Ludwig 44a2b970af
Merge pull request #42 from schveiguy/addvisit
Add forwarder for visit and tryVisit from TaggedUnion to TaggedAlgebraic
2019-11-30 16:24:36 +01:00
Sönke Ludwig a6d7a8b2ad
Merge pull request #41 from schveiguy/addgetbykind
Add access of value via Kind enum. Fixes #38.
2019-11-30 16:14:08 +01:00
Steven Schveighoffer 4bcd34d417 Add forwarder for visit and tryVisit from TaggedUnion to TaggedAlgebraic 2019-11-30 09:53:45 -05:00
Steven Schveighoffer c322e43fd4 Add access of value via Kind enum. Fixes #38. 2019-11-30 09:30:29 -05:00
Sönke Ludwig 3d0305da16
Merge pull request #37 from schveiguy/addNullHandling
Allow typeof(null) to provide constructors and opAssign for TaggedUnion.
2019-11-01 09:00:47 +01:00
Steven Schveighoffer f0d324f43f Allow typeof(null) to provide constructors and opAssign for TaggedUnion.
Fixes #36.
2019-10-30 18:12:50 -04:00
Leonid Kramer 985d50b7aa
Merge pull request #35 from s-ludwig/taggedunion_tostring
Add TaggedAlgebraic.toString().
2019-10-25 23:20:22 +02:00
Sönke Ludwig b037967ed0 Add unit test. 2019-10-25 22:20:27 +02:00
Sönke Ludwig d6d480b647 Add TaggedAlgebraic.toString().
Enables a better string representation, mainly useful for debugging purposes.
2019-10-25 22:16:44 +02:00