Commit graph

630 commits

Author SHA1 Message Date
Johan Engelen
63a8b22665
std.traits.FieldNameTuple: clarify documentation and add testing for classes 2018-03-11 19:20:48 +01:00
Walter Bright
86d212aadf AA key needs at least one data field 2018-03-05 22:16:30 -08:00
Jack Stouffer
663b5b9278 Revert addition of StdUnittest 2018-02-20 13:32:32 -05:00
Sebastian Wilzbach
d9830b739e Fix DScanner warnings 2018-02-10 22:46:32 +01:00
Jack Stouffer
18cbb29b04 Replaced version(unittest) blocks with version(StdUnittest) 2018-02-01 19:56:59 -05:00
The Dlang Bot
2a6df1f84b
Merge pull request #6085 from Biotronic/Issue-18314
Issue 18314 - std.traits.getSymbolsByUDA only considers the first sym…
merged-on-behalf-of: Sebastian Wilzbach <sebi.wilzbach@gmail.com>
2018-02-01 14:15:21 +01:00
biotronic
20c3e7f163 Issue 18314 - std.traits.getSymbolsByUDA only considers the first symbol of an overload set 2018-02-01 13:01:43 +01:00
The Dlang Bot
931a25126b
Merge pull request #5291 from jmdavis/fix_isSomeString
Fix it so that isSomeString and isNarrowString are false for enums.
merged-on-behalf-of: H. S. Teoh <quickfur@users.noreply.github.com>
2018-01-31 03:58:01 +01:00
Jack Stouffer
677d5b6703 Removed extra imports from std.traits examples 2018-01-30 13:07:55 -05:00
Sebastian Wilzbach
d2a83195dd
Merge pull request #6078 from jacob-carlborg/revert-5968-searching-findSplit
Revert "findSplit: return named tuples instead of an anonymous tuple"
2018-01-27 22:45:51 +01:00
Jacob Carlborg
83adbc3079
Revert "findSplit: return named tuples instead of an anonymous tuple" 2018-01-27 16:23:24 +01:00
Jonathan M Davis
3f8a13d474 Add warning to isConvertibleToString. 2018-01-26 23:30:02 -07:00
Jonathan M Davis
b0df44c868 Fix it so that isSomeString and isNarrowString are false for enums.
Having isSomeString and isNarrowString be true for enums whose base type
is a string type is a problem, because the enums will not work with the
same code that strings will, resulting either in compilation errors or
subtle bugs which result in variables of an enum type that contain
values that are not members of that enum type. As with other types that
implicitly convert to a string type, the enums need to be converted to
be used with the code that's designed for strings, which happens when
the function explicitly takes a string type or when the function takes
an array and is templated on the character/element type but does not
happen when the function is templated on the whole parameter type.

In addition to fixing isSomeString and isNarrowString for enums, these
changes catch and fix the fact that isNarrowString did not work
correctly with null - something that isSomeString did test for and
handle appropriately.
2018-01-26 14:08:23 -07:00
The Dlang Bot
c07b09e214
Merge pull request #5968 from wilzbach/searching-findSplit
findSplit: return named tuples instead of an anonymous tuple
merged-on-behalf-of: Jack Stouffer <jack@jackstouffer.com>
2018-01-24 17:10:43 +01:00
Mathis Beer
2d4d1be4bf std.traits: move isDesiredUDA out of getUDAs, since it depends only on attribute and uda.
This conserves memory, since isDesiredUDA instances can be reused between symbols.
2018-01-22 18:16:30 +01:00
The Dlang Bot
976cb990f1
Merge pull request #6014 from wilzbach/complex
Start to move away from complex and imaginary types
merged-on-behalf-of: Andrei Alexandrescu <andralex@users.noreply.github.com>
2018-01-18 22:34:40 +01:00
Sebastian Wilzbach
8becc70da7 Fix CTFE Error: reinterpreting cast from inout(string)*
std/typecons.d(648): Error: reinterpreting cast from inout(string)* to inout(Tuple!(string, string, string))* is not supported in CTFE
std/traits.d(566):        called from here: findSplit(s, "(").asTuple._Tuple_super()
std/traits.d(568):        called from here: adjustIdent("std")
std/traits.d(556): Error: template instance std.traits.fqnSym!(std) error instantiating
std/traits.d(556):        instantiated from here: fqnSym!(traits)
std/traits.d(478):        instantiated from here: fqnSym!(fullyQualifiedName)
std/traits.d(484):        instantiated from here: fullyQualifiedName!(fullyQualifiedName)
std/traits.d(484):        while evaluating: static assert(fullyQualifiedName!(fullyQualifiedName) == "std.traits.fullyQualifiedName")
2018-01-17 12:50:00 +01:00
Sebastian Wilzbach
a972e266ed Allow running all unittest with -transition=complex 2018-01-17 11:14:32 +01:00
The Dlang Bot
9fe884ddaf
Merge pull request #6016 from wilzbach/fix-18214
Fix Issue 18214 - TemplateOf should return void for non-templated symbols
merged-on-behalf-of: MetaLang <MetaLang@users.noreply.github.com>
2018-01-16 23:03:26 +01:00
Jack Stouffer
faa7300361 Added note to isInstanceOf docs on template usage 2018-01-08 19:57:27 -05:00
Sebastian Wilzbach
997f4fe64a Fix Issue 18214 - TemplateOf should return void for non-templated symbols 2018-01-09 00:20:25 +01:00
Sebastian Wilzbach
7de3787876 Use static foreach in Phobos 2018-01-03 17:30:11 +01:00
Jonathan M Davis
87fbbbc390 Simplify hasElaborateConstructor.
__postblit represents a directly declared postblit constructor, but any
struct which either has a postblit constructor or which has a member
which has a postblit constructor will have __xpostblit. So, we should
only need to check for __xpostblit instead of recursively checking all
of the member variables for __postblit.
2017-11-18 22:57:03 -07:00
Alexandru Caciulescu
1d26b5fef7 Fix issue 6895 std.traits.isCovariantWith doesn't work for function, function pointer and delegate 2017-10-24 15:48:53 +03:00
Sebastian Wilzbach
41de215c91 Remove invalid private access by getSymbolsByUDA from unittest 2017-10-05 21:55:33 +02:00
Sebastian Wilzbach
3cc63005e1 Issue 16984 - Make std.traits runnable 2017-10-05 21:30:13 +02:00
Martin Nowak
f9b2d42e9e Merge remote-tracking branch 'upstream/stable' into merge_stable
Conflicts:
	std/uni.d
2017-10-01 14:44:58 +02:00
Basile Burg
b4aeee6050
fix issue 11389 - template arity does not work with function type 2017-09-14 12:06:38 +02:00
Basile Burg
cb6d70a995
ddoc, add missing isSIMDVector to the index trait 2017-09-10 23:23:25 +02:00
Steven Schveighoffer
373babe48e fix issue 13262 - Ensure shared data can be sent and received via
send/receive. Also now allows all types of shared items to be stored in
a Variant.
2017-08-16 11:35:11 -04:00
Martin Nowak
deb28da3ee Merge remote-tracking branch 'upstream/stable' into merge_stable 2017-08-16 12:17:39 +02:00
Martin Nowak
477c4ea6d8 safe unittest 2017-08-16 12:12:30 +02:00
anonymous
2e063e9246 fix issue 17192 - ParameterDefaults fails when parameter is called "i" 2017-08-02 22:33:21 +02:00
H. S. Teoh
80401a8729 [trivial] Enable ddocs for QualifierOf. 2017-08-02 11:19:43 -07:00
John Colvin
1676b867fe refer to std.meta not std.typetuple 2017-08-01 14:47:53 +01:00
Sebastian Wilzbach
be351ebe20 Revert "Fix Issue 16744: Add Typeof" 2017-07-31 20:50:33 +02:00
The Dlang Bot
674f87e061 Merge pull request #5662 from dlang/MetaLang-patch-1-3
Fix Issue 16744: Add Typeof
merged-on-behalf-of: Stefan Koch <UplinkCoder@users.noreply.github.com>
2017-07-31 18:15:52 +02:00
MetaLang
d39cc3ff43 Fix Issue 16744: Add Typeof
This an alternative implementation to https://github.com/dlang/phobos/pull/4920
2017-07-28 23:05:00 -03:00
RazvanN7
24bfb294b7 Fix Issue 6384 - add std.traits.isComparable 2017-07-27 16:51:40 +03:00
The Dlang Bot
e1de10a464 Merge pull request #5626 from rainers/retry_ParameterStorageClassTuple
reimplement std.traits.ParameterStorageClassTuple()
merged-on-behalf-of: Sebastian Wilzbach <sebi.wilzbach@gmail.com>
2017-07-19 18:04:27 +02:00
Rainer Schuetze
272722fc5b avoid new CTFE function to be emitted to the object file 2017-07-19 08:09:37 +02:00
Rainer Schuetze
2c0e2c7bd8 convert static loop into runtime/CTFE loop 2017-07-19 01:01:59 +02:00
Rainer Schuetze
102cd2da25 fix case in documentation 2017-07-18 22:36:24 +02:00
Rainer Schuetze
a8859e9545 reimplement std.traits.ParameterStorageClassTuple() with __traits 2017-07-18 09:27:18 +02:00
The Dlang Bot
f6fa59e942 Merge pull request #5623 from quickfur/static-array-docs
[dox] Positive examples for isStaticArray.
merged-on-behalf-of: Jack Stouffer <jack@jackstouffer.com>
2017-07-17 22:45:42 +02:00
H. S. Teoh
948b390e9d [dox] Positive example for isStaticArray.
The current ddoc'd unittest for isStaticArray is pretty ridiculous: it
gives the user examples of what is *not* a static array, but not even a
single example of what *is* a static array!
2017-07-17 13:04:36 -07:00
Andrei Alexandrescu
82c3371d85 Convert range primitives to CNF like a boss 2017-07-16 00:40:24 +02:00
RazvanN7
8d29b4d6c1 Made the comment of MutableOf private 2017-07-06 19:08:16 +02:00
RazvanN7
43eadc38e3 Fix Issue 17369 - [Module std.traits] Documentation lists ditto in table 2017-07-06 19:08:16 +02:00
The Dlang Bot
51c52bbb5b Merge pull request #5429 from rainers/mangledName_obsolete
map std.traits.mangledName directly to mangleof
merged-on-behalf-of: Rainer Schuetze <rainers@users.noreply.github.com>
2017-07-06 07:32:39 +02:00