Commit graph

526 commits

Author SHA1 Message Date
Ilya Yaroshenko
efe33e3470 fix docs in iteration
`sum` is not precise. Precise algorithms are Python `fsum` and Mir's [`sum!(Summation.precise)`](http://docs.mir.dlang.io/latest/mir_sum.html)
2016-07-26 10:07:42 +02:00
Nick Treleaven
46a08e86d7 [trivial] Tweak docs for std.algorithm.sort 2016-07-18 12:03:37 +01:00
Andrei Alexandrescu
cd68d1a582 Merge pull request #4603 from JackStouffer/cache
Enhanced cache and map to provide length info for their slices
2016-07-15 16:45:30 -04:00
Jack Stouffer
fcb57098d1 Enhanced cache and map to provide length info for their slices 2016-07-14 14:03:25 -04:00
Jack Stouffer
c9222e1ecc Added messages to asserts in std.algorithm.iteration 2016-07-14 13:16:23 -04:00
Dmitry Olshansky
f49908c56b Merge pull request #4578 from JackStouffer/unused-variables
Remove or Fix Unused Variables
2016-07-11 21:38:30 +02:00
Steven Schveighoffer
c74537000c Fix all windows cycles 2016-07-08 21:07:15 -04:00
Jack Stouffer
b24000513d Removed unused variables from std.algorithm.sorting 2016-07-08 11:34:48 -04:00
Jack Stouffer
6b22c63c5b Enable long line checks in travis 2016-07-02 01:10:29 -04:00
Jack Stouffer
268fa2538d Add some const and immutable to std.algorithm 2016-07-01 17:11:09 -04:00
Jack Stouffer
ad7dbaa050 Fixed Issue 14485: .front of empty filtered zip range is accessible 2016-06-28 09:48:56 -04:00
Andrei Alexandrescu
e59c06b410 Merge pull request #4431 from wilzbach/document_std_algorithm_test
add external imports to documented unittests in std.algorithm
2016-06-18 06:38:44 -04:00
Andrei Alexandrescu
ac9c93cb9e Merge pull request #4315 from wilzbach/algorithms_private_cleanup
std.algorithm: set accidentally exposed methods to private
2016-06-18 04:27:58 -04:00
Andrei Alexandrescu
7172eda466 Merge pull request #4327 from tsbockman/isPowerOf2
Add `std.math.isPowerOf2()`. Supports floating-point and integers.
2016-06-16 23:09:02 -04:00
Sebastian Wilzbach
ec47ac4224 Remove the WEB macro in favor of HTTP
replacement: sed 's/\$(WEB/\$(HTTP/g' -i **/*.d
2016-06-16 00:14:51 +02:00
Sebastian Wilzbach
8b60ec24b0 add external imports to documented unittests in std.algorithm 2016-06-15 03:42:28 +02:00
Steven Schveighoffer
c5bb43ce54 Merge pull request #4425 from JackStouffer/issue16073
Partial Fix for Issue 16073 (part 2)
2016-06-14 11:01:59 -04:00
Jack Stouffer
94d74ac8f5 [Issue 16073] Fix incorrect uses of random access range primitives in std.algorithm.sorting 2016-06-14 10:04:01 -04:00
Dmitry Olshansky
6dc8e467b0 Merge pull request #4415 from WalterBright/safeSchwartz
make the Schwartz @safe
2016-06-10 21:10:00 +04:00
Walter Bright
a85f48a85b Merge pull request #4394 from JackStouffer/equal
Added auto-decoding special case to std.algorithm.comparison.equal
2016-06-07 10:44:27 -07:00
Jack Stouffer
cb073a2cc9 Added auto-decoding special case to std.algorithm.comparison.equal 2016-06-07 09:07:59 -04:00
Walter Bright
23613c2189 make the Schwartz @safe 2016-06-07 04:19:06 -07:00
tsbockman
18d1b436e4 Update Phobos to use the new std.math.isPowerOf2() everywhere.
`std.uni` looks like it may depend upon its local `isPowerOf2()` implementation
to return `true` for `0`. Since the semantics are different from the standard
version, I have renamed it to `isPow2OrZero()` to avoid confusion.
2016-06-04 21:19:38 -07:00
Sebastian Wilzbach
823203fc4f fix slipped through style violations 2016-06-05 01:30:55 +02:00
Sebastian Wilzbach
0c100a7b5a std.algorithm: set accidentally exposed methods to private 2016-06-04 16:13:07 +02:00
Vladimir Panteleev
28a7775fe4 Merge pull request #4395 from s-ludwig/master
Use REF_ALTTEXT for overview table symbol links. See issue 14403.
2016-06-03 13:22:58 +03:00
Andreas Zwinkau
9d77777941 Removed outdated comment
Slipped through pull request #4362. Since "above" is a different
algorithm the removed comment is misleading. It did make sense in
previous versions of PR #4362.
2016-06-02 22:59:40 +02:00
Sönke Ludwig
e43ac92e69 Use REF_ALTTEXT for overview table symbol links. See issue 14403. 2016-06-02 22:11:11 +02:00
Andreas Zwinkau
a9d5b8ca77 Improve speed of find for random access needles (strings)
For find a string within a string, std.algorithm.searching.find was
unnecessarily slow. The reason is it created intermediate slices. A
naively written nested-for-loop implementation was a few times
faster.

For random access ranges (which strings are) this uses an index based
algorithm, which does not need to create an intermediate slice. Speed
is now comparable to the nested-for-loop implementation even in rather
pathological cases.

This might help with issue 9646.
2016-06-02 21:44:50 +02:00
Steven Schveighoffer
e216c10b2c Merge pull request #4383 from JackStouffer/issue16073
Partial Fix for Issue 16073
2016-06-02 14:30:24 -04:00
Jack Stouffer
74398e70cf [Issue 16073] Fix incorrect uses of random access range primitives in std.algorithm.searching 2016-06-02 09:31:07 -04:00
Jack Stouffer
3a1db06f41 [Issue 16073] Fix incorrect uses of random access range primitives in std.algorithm.mutation 2016-06-02 09:31:06 -04:00
Jack Stouffer
a818c7e059 [Issue 16073] Fix incorrect uses of random access range primitives in std.algorithm.iteration 2016-06-02 09:31:01 -04:00
Sebastian Wilzbach
ca098c57d2 manual allman brace fixup 2016-05-31 13:07:53 +02:00
Sebastian Wilzbach
1d34a121e9 apply all-man braces in Phobos
// find common cases
sed -E "s/^(\s*)((if|static if|for|foreach|foreach_reverse|while|unittest|switch|else|version).*)\s*\{$/\1\2\n\1{/" -i **/*.d
// catch else-if
sed -E "s/^(\s*)} (else static if| if|else if|else)(.*)\s*\{$/\1}\n\1\2\3\n\1{/" -i **/*.d
// remove created trailing whitespace
sed -i 's/[ \t]*$//' **/*.d
2016-05-31 13:07:53 +02:00
Sebastian Wilzbach
2dfbc51f17 Standardize whitespace after imports
Unified with:

sed -E "s/import\s*([^ ]+)\s*:\s*(.*(,|;))/import \1 : \2/" -i **/*.d
2016-05-29 22:09:56 +02:00
anonymous
641d6ff8d7 clean up remaining XREFs (manual)
Found by: grep -r '$(XREF'

std.experimental.allocator has a custom XREF2. Leaving that as is for now.
2016-05-27 21:40:46 +02:00
anonymous
ef9722928c XREF_PACK_NAMED -> REF_ALTTEXT (sed)
Done by:

arg='\s*([^(),]*)'
from='\$\(XREF_PACK_NAMED\s'$arg','$arg','$arg','$arg'\)'
to='$(REF_ALTTEXT \4, \3, std,\1,\2)'
(find . -type f -name "*.d" -print0; \
    find . -type f -name "*.dd" -print0) | \
xargs -0 sed -i -r "s/$from/$to/g"
2016-05-27 21:32:46 +02:00
anonymous
d648f9320e XREF_PACK -> REF (sed)
Done by:

from='\$\(XREF_PACK\s+([^(),]*),\s*([^(),]*),\s*([^(),]*)\)'
to='$(REF \3, std,\1,\2)'
(find . -type f -name "*.d" -print0; \
    find . -type f -name "*.dd" -print0) | \
xargs -0 sed -i -r "s/$from/$to/g"
2016-05-27 21:32:46 +02:00
anonymous
764caefa36 XREF -> REF (sed)
Done by:

(find . -type f -name "*.d" -print0; \
    find . -type f -name "*.dd" -print0) | \
xargs -0 sed -i -r \
    's/\$\(XREF\s+([^(),]*),\s*([^(),]*)\)/$(REF \2, std,\1)/g'
2016-05-27 21:32:46 +02:00
Dmitry Olshansky
2c0b7d24e3 Merge pull request #4354 from wilzbach/newlines_algorithm
remove whitespace in ddoc output of std/algorithm
2016-05-27 14:37:26 +04:00
Sebastian Wilzbach
18b8abf60a remove the deprecated wiki macros 2016-05-27 05:52:23 +02:00
Sebastian Wilzbach
614294cd70 remove whitespace in ddoc output of std/algorithm 2016-05-25 03:57:01 +02:00
Andrei Alexandrescu
8f24656082 Merge pull request #4349 from nordlow/findSplit-opAssign
Fix Issue 15918
2016-05-24 09:04:48 -04:00
Per Nordlöw
54f05971e4 Fix Issue 15918 2016-05-24 09:37:36 +02:00
Vladimir Panteleev
38a6370788 Merge pull request #4303 from wilzbach/mref_phobos
use mref macro instead of link2
2016-05-24 03:12:08 +03:00
Robert Schadek
836a905833 Merge pull request #4312 from wilzbach/public_document_algorithms
std.algorithms: document public methods
2016-05-23 19:15:23 +02:00
Sebastian Wilzbach
89a2dd5f11 use mref macro instead of link2 2016-05-16 03:30:08 +03:00
Ilya Yaroshenko
b59ac8c2a8 remove useless CT branch 2016-05-12 17:29:49 +02:00
Sebastian Wilzbach
b8f17e2531 std.algorithms: document public methods 2016-05-12 17:53:03 +03:00