Commit graph

707 commits

Author SHA1 Message Date
Mathis Beer
ac5c8d0c85 Fix issue 22701: Remove is(typeof()) callable check in std.typecons.apply.
It creates unreadable template errors for no benefit.
2022-01-26 13:03:29 +01:00
The Dlang Bot
a86c1eba9f
Merge pull request #6876 from thaven/enhancement/autoimplement-add-abstract-parent
Also expose 'parent' when it's abstract

Signed-off-by: Nicholas Wilson <thewilsonator@users.noreply.github.com>
Merged-on-behalf-of: Nicholas Wilson <thewilsonator@users.noreply.github.com>
2022-01-18 03:54:04 +00:00
Nick Treleaven
9f336484dc [typecons] Tweak Tuple example and split out Rebindable example 2022-01-10 14:03:09 +00:00
Eduard Staniloiu
95d47777f9 Fix typecons Proxy.opCmp 2021-12-17 17:13:48 +00:00
thaven
47291bb0e6 Temporarily comment out overload in test to work around Issue 19715 2021-12-03 14:07:14 +01:00
Harry T. Vennik
eeccd10f8b Add specific test for parent alias 2021-12-03 14:07:14 +01:00
Harry T. Vennik
443c5d400f Also expose 'parent' when it's abstract 2021-12-03 14:07:14 +01:00
dkorpel
5d0cfcd13a Fix scope usage of SysTime/TimeZone 2021-11-18 23:49:51 +00:00
Ömer Faruk IRMAK
b141ae469b Fix Issue 22511 - Add explicit copy ctor for Nullable 2021-11-15 10:33:27 +03:00
DoctorNoobingstoneIPresume
eb66705762 refCounted: unittest now also checks object destruction..
One of the `unittest`'s has been modified to also check that
a `File` object managed via `RefCounted!File` handles is deleted
when its last handle is destroyed;
2021-09-27 02:19:34 +03:00
Paul Backus
1984e8d2a9 Fix Issue 22325 - ReplaceType fails on templated type instantiated with void-returning function
Previously, when recursing into a type's template arguments,
ReplaceTypeUnless would mistakenly attempt to evaluate a template alias
parameter as an expression. In cases where the alias parameter was not a
valid expression or could not be evaluated at compile time, this caused
a compilation failure; in other cases, it caused ReplaceTypeUnless to
give an incorrect result.

This change makes ReplaceTypeUnless correctly treat template alias
parameters as aliases.
2021-09-20 21:42:31 +00:00
Martin Kinkelin
d0bf92cab7 std.typecons: Minimize redundant template declarations/instantiations wrt. Tuple
While glancing over the Tuple template, I've noticed that it uses the
anti-pattern of nested template declarations *not* depending on the
outer Tuple template parameters.
2021-09-17 04:38:55 +00:00
Luís Ferreira
d19c437da9
std.typecons: make Nullable payload void initialized
Signed-off-by: Luís Ferreira <contact@lsferreira.net>
2021-08-29 18:41:47 +01:00
Martin Nowak
31a946b999 Merge remote-tracking branch 'upstream/stable' into merge_stable
Conflicts:
	std/typecons.d
2021-08-09 22:41:03 +02:00
Mathis Beer
f0372ae659 Fix issue 22176: Revert 51bdf472df
Revert "Fix Issue 20552 - Deprecated Nullable.get warning with Appenders"
`Nullable.get` is removed anyways.
2021-08-07 17:11:55 +00:00
aG0aep6G
26bb8fcae4
add cast(void) to silence warnings in tests (#8169) 2021-07-20 08:19:00 +08:00
Martin Nowak
3fff60bc50 Merge remote-tracking branch 'upstream/stable' into merge_stable 2021-07-13 12:24:06 +02:00
Vladimir Panteleev
73e51d395e Fix Issue 22100 - Support chained assignment of Nullable 2021-07-05 16:23:44 +00:00
Vladimir Panteleev
7d666a26c0
Fix Issue 22101 - Nullable.get(fallback) cannot be used with non-@safe/pure/nothrow types 2021-07-05 07:35:03 +00:00
Nathan Sashihara
c441b2ad59 Fix 22093 - [Reg 2.097] std.typecons.RefCounted!T for struct T without an explicit toString or alias this previously could be converted to string even when uninitialized but now cannot 2021-06-30 05:51:01 +00:00
Martin Nowak
dd2dc35c31 Merge remote-tracking branch 'upstream/stable' into merge_stable 2021-04-25 21:19:23 +02:00
berni44
b2019ebab0 Narrow imports of std.math in the rest of phobos. 2021-04-21 03:00:57 +02:00
berni44
1d713e6f73 Move unittests from std.format.internal.write at correct place. 2021-04-20 11:27:33 +02:00
Johan Engelen
b8cdef5ffc fix Issue 21801 - std.typecons.ReplaceType does not work for in parameters
See related: https://github.com/dlang/phobos/pull/7570
2021-04-15 09:36:51 +02:00
berni44
6237aa02a9 Deprecate public access of formatElement 2021-03-25 10:17:21 +01:00
Nick Treleaven
ea00d00937
std.concurrency docs: Group symbol links into table rows (#7892)
std.concurrency docs: Group symbol links into table rows
merged-on-behalf-of: Razvan Nitu <RazvanN7@users.noreply.github.com>
2021-03-22 10:21:12 +01:00
Boris Carvajal
c92818b58c Simplify some Proxy.opDispatch conditions 2021-03-22 03:36:54 +01:00
berni44
6f2a0934a7 Adapt imports of std.format to new structure of std.format. 2021-03-19 13:22:00 +01:00
Paul Backus
1645308482 Fix Issue 21705 - Nullable!T.opEquals fails for T with non-const opEquals overload 2021-03-15 12:30:01 +01:00
Paul Backus
164f1c16b3 Fix Issue 21704 - Nullable fails to destroy static array elements 2021-03-13 07:25:58 +01:00
Nathan Sashihara
90e9ce2cfd Fix Issue 20502: Converting std.typecons.RefCounted!T to a string gives T's storage location instead of T's fields when T is a struct without an explicit toString 2021-03-02 13:14:07 +01:00
Mathis Beer
36c309fc5f std.typecons.Nullable: Remove deprecated 'alias get this'. 2021-03-02 10:31:25 +01:00
Razvan Nitu
b74f782c8c
Merge pull request #7797 from n8sh/issue-21638
std.typecons.RefCounted!(T, RefCountedAutoInitialize.no) should still work when T.this() is annotated with `@disable`
2021-02-23 04:03:30 +08:00
Boris Carvajal
276053dd07
Remove a few uses of fully qualified names that rely on a DMD bug 2021-02-22 08:16:13 -03:00
Nathan Sashihara
35035d4cfe Fix Issue 21638 - std.typecons.RefCounted!(T, RefCountedAutoInitialize.no) should still work when T.this() is annotated with @disable 2021-02-17 08:31:24 -08:00
Martin Nowak
cd566a9fd3 Merge remote-tracking branch 'upstream/stable' into merge_stable 2021-02-12 21:29:21 +01:00
Martin Kinkelin
7558583c44 Replace usages of std.functional.forward with core.lifetime.forward
Where it has been moved to. Also get rid of the corresponding tests
in Phobos, an exact copy is in druntime (+ more forward tests).

Also extend a `scoped` test to make sure it properly forwards
r/lvalue-ness of its arguments. This required dlang/druntime#3352
and thus wasn't added in dlang/phobos#7776 directly.
2021-01-31 12:20:09 +01:00
Martin Kinkelin
b7c07eb396 std.typecons.RefCounted: Properly forward r/lvalue-ness of ctor arguments 2021-01-29 16:23:30 +01:00
RazvanN7
51bdf472df Fix Issue 20552 - Deprecated Nullable.get warning with Appenders 2021-01-25 09:39:49 +02:00
Razvan Nitu
89abc75f02
Merge pull request #7745 from kinke/emplace
Get rid of std.conv.emplace[Ref](), use core[.internal].lifetime
2021-01-25 15:36:04 +08:00
Bernhard Seckinger
d5efbe3273 Fix Issue 13663 - Comparison of Tuples with floating point fields 2021-01-19 16:38:01 +01:00
Martin Kinkelin
1a459c5996 Get rid of std.conv.emplace[Ref](), use core[.internal].lifetime
The emplace() stuff was moved to druntime; for some reason, it's still
in Phobos.

I've diffed the two versions, and they are still almost identical (incl.
unittests); the druntime version appears to have seen some improvements
(e.g., forwarding r/lvalueness of the arguments) in the meantime.
2021-01-17 16:02:25 +01:00
Andrei Alexandrescu
c5e6213dde
Issue 21250 - dirEntries on non-existent directory causes assert error (#7646)
Issue 21250 - dirEntries on non-existent directory causes assert error
merged-on-behalf-of: Andrei Alexandrescu <andralex@users.noreply.github.com>
2020-10-02 16:49:09 +02:00
Geod24
691847c61b std.typecons : AutoImplement: Handle 'in' storage class 2020-08-28 04:27:48 +02:00
Mathis Beer
4b269a86f2 Fix issue 21199: call unaryFun!fun in Nullable.apply to support shortcut string expressions as parameter. 2020-08-26 15:01:04 +02:00
MoonlightSentinel
c46c2c3aa6 Fix public examples failing due to missing imports 2020-06-28 18:12:56 +02:00
Biotronic
e6eaa8ea24 Fix issue 20850 - Can't assign enum of Tuple 2020-05-21 13:42:04 +02:00
Vladimir Panteleev
38febf9e5c
std.typecons: Fix inconsistent indentation in Nullable implementation
It was previously difficult to see where the implementation of
Nullable ends, because the indentation did not represent the nesting
level.

This also fixes the different DDoc styles used to document Nullable
entries to a single style.
2020-05-20 02:47:01 +00:00
Mathis Beer
a5c52a3630 Add get(default) same-type overload in Nullable.
Works around https://issues.dlang.org/show_bug.cgi?id=20670 , which may
cause `Nullable` with arrays of `immutable struct`s to incorrectly strip
away the `immutable`.
2020-04-16 09:35:03 +02:00
Geod24
04f3979317 Replace 'Issue XXX' with Bugzilla links
Make the links clickable, as was done in the DMD repository.
Also avoids any ambiguity w.r.t. where the issue is stored.
2020-04-13 16:28:09 +09:00