Commit graph

85 commits

Author SHA1 Message Date
Lars T. Kyllingstad
7c67d7a9bc 4959: std.conv.parse error "no digits seen" on string starting with zero 2010-09-30 13:42:58 +00:00
Andrei Alexandrescu
98a9719f42 Fix for fix for bugzilla 1733 2010-09-26 19:03:48 +00:00
Andrei Alexandrescu
8692f08f19 Fix for bugzilla 1733 2010-09-26 19:02:37 +00:00
Andrei Alexandrescu
90438d574d Fix for bugzilla 2310 2010-09-26 18:27:45 +00:00
David Simcha
b597d23f83 Bug 4888: Heavy reliance on Bug 3534 in Phobos range usage. I used a different approach here than the first one I tried. I only did what was necessary to make Phobos work instead of trying to fix the deeper issue of making std.algorithm to work w/ const/immutable arrays. 2010-09-18 21:00:52 +00:00
David Simcha
ab60a7d7a1 Fix std.range.Zip. 2010-09-18 00:48:42 +00:00
Andrei Alexandrescu
1515e2139f Fix breaking unittests 2010-09-13 13:37:16 +00:00
Andrei Alexandrescu
611f5a1c22 Generalized to having string types as target to accept input ranges of character types 2010-09-13 01:21:04 +00:00
Andrei Alexandrescu
249056c61d Added convenience overload for emplace() 2010-09-08 13:05:04 +00:00
Shin Fujishiro
95125b3077 std.conv: enh 4518 (diagnostic)
- Improved the error message of enum->string conversion failure to report the actual value encountered.
- Cleaned up the impl. of enum<->string converters with EnumMembers.
2010-09-05 01:40:07 +00:00
David Simcha
47743cc50e Small unlisted std.conv bug: to!string(pointer) doesn't work for void*. 2010-08-29 22:18:53 +00:00
Shin Fujishiro
54b7c22526 Workaround for ICE bug 4738. 2010-08-27 03:44:15 +00:00
Walter Bright
b8ce58ccd1 detab sources 2010-08-23 02:14:45 +00:00
Andrei Alexandrescu
3f2b8c12ea 64-bit compatibility work 2010-08-22 20:55:22 +00:00
David Simcha
9ce4fbb9f3 Bug 4700: to!float("0") fails 2010-08-22 01:54:08 +00:00
Andrei Alexandrescu
75705bc9e7 added assert 2010-08-18 02:44:35 +00:00
Andrei Alexandrescu
810c4feb97 bugzilla 4671 2010-08-18 02:35:22 +00:00
David Simcha
2354773823 Fix unittest so it works even when errno is set elsewhere under completely unrelated circumstances. 2010-08-12 01:56:15 +00:00
Andrei Alexandrescu
b098c9a358 All enforce calls throw ConvError 2010-08-08 06:33:06 +00:00
Andrei Alexandrescu
8842122477 Debug aides and fix for invalid code that the compiler accepts 2010-08-08 01:13:55 +00:00
Walter Bright
53564aa227 rename makefile, comment out mysteriously failing test 2010-07-29 03:59:17 +00:00
Andrei Alexandrescu
406bbbb9b4 Changed parse with radix 2010-07-28 07:53:26 +00:00
Andrei Alexandrescu
70168cae8e Added emplace for class types 2010-07-12 14:18:21 +00:00
Andrei Alexandrescu
6b88357996 Fixed http://d.puremagic.com/issues/show_bug.cgi?id=2971 2010-07-12 00:48:49 +00:00
Andrei Alexandrescu
536cb93d9c Fixed issue in Appender 2010-07-06 05:34:59 +00:00
Andrei Alexandrescu
111b871794 Changed parse for integrals to accept input ranges; adapted Walter's strtold implementation to input ranges. 2010-07-04 21:39:09 +00:00
Lars T. Kyllingstad
e89be73a46 Made std.string.icmp() a template function and fixed issue 3386, "to!bool(string) is not implemented" 2010-06-15 08:40:50 +00:00
Andrei Alexandrescu
a1aa26bf8e Workaround for what seems to be a compiler bug 2010-06-10 15:56:52 +00:00
Andrei Alexandrescu
652e516b91 Added file and line information to conversion errors; added brackets '[' and ']' around arrays and associative arrays as defaults; added emplace() for non-class types. 2010-06-08 17:20:44 +00:00
Shin Fujishiro
68159a1cf1 std.conv unittests: print warning messages for problematic strto*() implementations. 2010-05-27 20:42:38 +00:00
Shin Fujishiro
8bd8ddf0a4 Reverted r1557 (and r1513 partially).
r1557 relaxed some unittests, as some platforms had accuracy problem with strtold().  But the strict unittests were requirements for D; so r1557 should be reverted.

With this change, these unittests will fail on some platforms such as OSX and Gentoo.  However, the unittests SHOULD fail because using strtold() on these platforms is a 'bug' -- we should provide an accurate implementation.

Related issues:
3758: Create D impementation of to!(float, string), etc.
4200: "to!real(to!string(real.min_normal))" raises std.conv.ConvError
2010-05-26 14:21:39 +00:00
Shin Fujishiro
7aea7b005d We should not expect exact precision of strtold().
The precition may vary between platforms or even different versions of libc.

Tested on FreeBSD and Gentoo Linux with dmd r501.
2010-05-26 05:59:52 +00:00
Shin Fujishiro
4e2d8f30fd Added FreeBSD code. 2010-05-17 03:02:16 +00:00
Walter Bright
e790058bf4 invariant => immutable 2010-05-05 18:25:44 +00:00
Andrei Alexandrescu
3c1d3b8943 Added client-side octal literal 2010-03-26 14:05:49 +00:00
Walter Bright
77693962d7 need cast to initialize immutable types 2010-03-02 06:46:39 +00:00
Andrei Alexandrescu
2a9a6e336c string, wstring are now bidirectional (not random) ranges
std.algorithm: defined move with one argument; levenshtein distance generalized to with all forward ranges; take now has swapped arguments
std.array: empty for arrays is now a @property; front and back for a string and wstring automatically decodes the first/last character; popFront, popBack for string and wstring obey the UTF stride
std.conv: changed the default array formatting from "[a, b, c]" to "a b c"
std.range: swapped order of arguments in take
std.stdio: added readln template
std.variant: now works with statically-sized arrays and const data
std.traits: added isNarrowString
2010-02-22 15:52:31 +00:00
Walter Bright
1afffb7a96 update use of allMembers 2010-02-10 09:33:46 +00:00
Don Clugston
75f4f5e0d8 Fix 2066 to!(string)(int) into CTFE-compatible 2010-01-18 08:57:28 +00:00
Walter Bright
9ab2214df8 wrong module prefix 2009-12-02 08:19:05 +00:00
Don Clugston
1eea3f3895 Removed all references to float.min, replaced with float.min_normal. 2009-11-06 16:02:45 +00:00
Don Clugston
0ecae3a354 Change [length] to [$] throughout Phobos. 2009-11-03 07:55:49 +00:00
Andrei Alexandrescu
9a0b778725 bugzilla 3352 2009-10-05 18:50:09 +00:00
Andrei Alexandrescu
9957da2e77 improved performance of integral-to-string conversion 2009-10-03 21:26:32 +00:00
Sean Kelly
747f3cf1e4 Changed Phobos to use the Boost license. Currently, all public domain modules and all licensed modules by Walter, Andrei, Bartosz, and Don have been changed to use this license (excepting std.c, for the moment). Ideally, all Phobos modules will eventually be distributed under this license, which means obtaining permission from a few more authors, deleting, or rewriting some modules.
Removed std.openrj.
2009-09-16 18:19:51 +00:00
Andrei Alexandrescu
06c3c8adb8 fix for bug 3288 2009-09-04 17:41:58 +00:00
Andrei Alexandrescu
0c142994d9 See changelog - bunch of bug fixes and a couple additions for release 2.032 2009-08-31 19:46:33 +00:00
Andrei Alexandrescu
5ba2e8d6de added Shin Fujishiro's code for printing and parsing enumerated values. 2009-07-04 06:52:55 +00:00
Andrei Alexandrescu
2783bdfd54 Fixed bug 2914 2009-04-30 03:00:56 +00:00
Andrei Alexandrescu
ca2a767e65 * Rewrote conversions with constrained templates.
* Added text() function that transforms everything into text.
2009-04-06 17:14:34 +00:00