Commit Graph

1708 Commits

Author SHA1 Message Date
Marijn Haverbeke
02505d8aa1 Express some list primitives in a way that doesn't copy
It was somewhat embarassing that list::len copied its elements.
2012-01-05 09:18:19 +01:00
Stefan Plantikow
6284190ef9 Merge branch 'master' into kmath
Conflicts:
	src/libcore/cmath.rs
2012-01-05 02:07:12 +01:00
Lenny222
d1ffe5034b "str": rename "str_from_cstr" to "from_cstr" (analogous to the other "from_*") 2012-01-04 09:33:07 +01:00
Niko Matsakis
72a3667eb3 Allow tail expressions even in no_value blocks. Type checker
will guarantee they have unit type.
2012-01-03 13:13:52 -08:00
Brian Anderson
513a263e81 Merge pull request #1392 from Lenny222/list
list: add "is_not_empty" requirement to "head" and "tail" (analogous to "vec")
2012-01-03 12:18:53 -08:00
Marijn Haverbeke
15be2fc73a Add 'copy' bounds to functions that were faultily accepted without
Issue #1390
2012-01-02 15:31:58 +01:00
User Jyyou
a59c4b1b47 freebsd support 2012-01-01 20:18:55 -08:00
Stefan Plantikow
d124c6eda2 removes std::mtypes 2011-12-31 03:45:17 +01:00
Lenny222
d07c6e8a0e list: use predicate to enforce non-empty requirement 2011-12-29 21:24:03 +01:00
Erick Tryzelaar
b6cecdd4de libstd: add bytes_reader and bytes_writer
This parallels nicely with string_reader and string_writer, but
working with raw byte strings. I'm not quite sure if the return
type for bytes_writer.get_bytes should be [u8] or [mutable u8]
though, so I'm arbitrarily picking mutable for now.
2011-12-28 11:19:41 -08:00
Erick Tryzelaar
1f0757c684 libstd: Allow io writer to write mutable arrays 2011-12-28 11:19:41 -08:00
Erick Tryzelaar
af41564747 libstd: add a method to generate random bytestrings. 2011-12-28 11:19:41 -08:00
Graydon Hoare
900bc1298d Merge pull request #1377 from Lenny222/icu
std::unicode::icu: add "is*" functions + unit test
2011-12-24 11:54:07 -08:00
Graydon Hoare
f0dfbe7b1b Register new snapshots, purge log_err and log_full in favour of log(...). 2011-12-22 17:53:53 -08:00
Graydon Hoare
389329ef1e Merge all 3 log syntaxes, tidy up residual misuses. 2011-12-22 16:14:00 -08:00
Erick Tryzelaar
43a6bd110e Whitespace cleanup. 2011-12-22 15:05:59 -08:00
Graydon Hoare
8b580954fe Register snapshots and switch logging over to use of log_full or #error / #debug. 2011-12-22 14:42:52 -08:00
Lenny222
d812d06bc8 std::unicode: add functions, unit test 2011-12-22 22:58:38 +01:00
Lenny222
341e4151d6 json: to_str() also for "null" 2011-12-22 08:46:50 +01:00
Lenny222
6f5a0a3b3b json: add "null" 2011-12-22 08:46:49 +01:00
Graydon Hoare
a24c19e867 Add companion-module core.rs that exports log levels and option/some/none everywhere. 2011-12-20 12:41:44 -08:00
Stefan Plantikow
b957916e06 removed math leftovers from std 2011-12-20 18:07:36 +01:00
Graydon Hoare
abbd86f1e6 Merge pull request #1334 from boggle/kmath
preparing for removing math from std
2011-12-19 11:58:19 -08:00
Erick Tryzelaar
8e9be037d1 Simplify getopts::find_opt. 2011-12-19 07:27:16 -08:00
Stefan Plantikow
fa27724a4b std: getopts now uses result::t (fixes #1289) 2011-12-18 18:55:39 -08:00
Stefan Plantikow
e1a9668ab2 preparing for removing math from std 2011-12-19 03:19:37 +01:00
Brian Anderson
39c8f0cb4a libstd: Long lines 2011-12-17 17:02:07 -08:00
Brian Anderson
00be346089 libstd: Add 'xterm-256-color' to list of color-enabled terminals 2011-12-17 16:44:27 -08:00
Brian Anderson
1477fb3f2b libstd: Temporarily use #[link_name = ""] 2011-12-16 15:29:59 -08:00
Graham Fawcett
7ddd353ef6 implement #[nolink]; deprecate #[link_name = ""]; note in stdlib to remove empty link_name.
Can't remove them from stdlib until the snapshotted compiler supports #[nolink].
2011-12-16 15:29:59 -08:00
Elly Jones
89e880d613 std: file_is_dir -> path_is_dir, add path_exists 2011-12-16 17:37:21 -05:00
Graydon Hoare
dbfa1b5689 Merge pull request #1317 from boggle/fix1315
fix to #1315 + small additions to std::either and result
2011-12-16 13:01:47 -08:00
Stefan Plantikow
7d786318a1 std: declared fns as pure where sensible 2011-12-16 18:18:34 +01:00
Niko Matsakis
b5e5043d5d reorder block() argument to bitv::process() 2011-12-16 08:01:05 -08:00
Niko Matsakis
2833ca478c reorder args to the various vec, option fns so blk comes last 2011-12-16 07:17:23 -08:00
Marijn Haverbeke
4f826d81f6 Make 1.f parse as a field access on the integer 1
A dot is only considered part of a number when not followed by a letter

Closes #1306
2011-12-16 11:46:57 +01:00
Graydon Hoare
dde5860380 Remove some duplicated unused parts of std now that they're present in core. 2011-12-14 18:04:45 -08:00
Stefan Plantikow
af8e471908 Fixed type resolution error in math tests 2011-12-14 14:54:16 -08:00
Stefan Plantikow
6d0901cb4d std: export math_f* as math::f* submods and use tailcalls in std::math 2011-12-14 14:54:16 -08:00
Graydon Hoare
fa9ad984fb Copy first batch of material from libstd to libcore. 2011-12-13 16:34:50 -08:00
Patrick Walton
cd0e57d2d4 stdlib: Fix spelling errors in documentation of libstd/str.rs 2011-12-13 14:53:14 -08:00
Erick Tryzelaar
e3a066bde8 Swap arg order for option::{may,maybe}
This lets us write the block syntax sugar:

option::may(x) { |y| … }
2011-12-09 10:22:24 -08:00
Brian Anderson
4f17131855 Add crate_type attributes to rustc, std, core 2011-12-08 21:09:48 -08:00
Niko Matsakis
0fc4403442 use util::rational to work around bug w/ floats on win 2011-12-07 17:05:58 -08:00
Niko Matsakis
1ff8994fce Purge old map impl: more collisions, not clear it is safe on 64bit 2011-12-07 17:05:58 -08:00
Niko Matsakis
4b704ac69b improve comments 2011-12-07 17:05:58 -08:00
Niko Matsakis
ed0e13f1d8 fix old map impl, add logging 2011-12-07 17:05:58 -08:00
Niko Matsakis
30a2361e68 add some debugging logs 2011-12-07 17:05:58 -08:00
Niko Matsakis
13a3288f3f dec size in remove 2011-12-07 17:05:58 -08:00
Niko Matsakis
ddfe82a466 make rehashing more efficient by not re-allocating entries 2011-12-07 17:05:58 -08:00
Niko Matsakis
729345cb97 implement a chained hashmap 2011-12-07 17:05:58 -08:00
Marijn Haverbeke
3d0610b072 Check for literals that are out of range for their type 2011-12-07 21:53:05 +01:00
Marijn Haverbeke
e3eca9174b Change literal representation to not truncate
Also shuffles around the organization of numeric literals and types,
separating by int/uint/float instead of machine-vs-non-machine types.
This simplifies some code.

Closes #974
Closes #1252
2011-12-07 21:08:28 +01:00
Niko Matsakis
6c95e400d8 repair more hash functions 2011-12-07 07:35:25 -08:00
Marijn Haverbeke
03a6e54212 Disallow binding by-mut-ref and by-move arguments
Fix bug in bound by-copy arguments.

Closes #1261
2011-12-07 15:28:57 +01:00
Niko Matsakis
66355607da hack for now: map uint hashes into a u32, which helps x86_64 perf. 2011-12-06 19:55:46 -08:00
Brian Anderson
89efb7d981 libstd: Update docs 2011-12-06 13:58:54 -08:00
Graydon Hoare
447414f007 Establish 'core' library separate from 'std'. 2011-12-06 12:13:04 -08:00