3601 Commits

Author SHA1 Message Date
Patrick Walton
c5a407b11b stdlib: "tag" -> "enum" 2012-01-19 15:22:25 -08:00
Brian Anderson
48e916c8fa libstd: Long lines 2012-01-19 13:44:07 -08:00
Brian Anderson
f15182fffc Use fn~ to simplify the core::test interface 2012-01-19 13:37:01 -08:00
Tim Chevalier
5b028f527f Remove support for the '.' after a nullary tag in a pattern
(Commit also includes lots of changes to remove '.'s that a git
merge messed up, or else it was monkeys.)
2012-01-19 01:04:59 -08:00
Tim Chevalier
04a2887f87 Remove '.' after nullary tags in patterns
Does what it says on the tin.

The next commit will remove support for this syntax.
2012-01-18 23:17:34 -08:00
Haitao Li
7b1724fb40 libstd: Revert an integer type casting
Otherwise, rustctest failed by a segv fault.
2012-01-19 02:24:22 +08:00
Haitao Li
04882d7c43 rustc: Use integer from ctypes consistently 2012-01-19 02:10:36 +08:00
Haitao Li
dde41869ce Use ctypes in native function declarations 2012-01-19 02:10:36 +08:00
Brian Anderson
6e27b27cf8 libstd: Move std tests into libstd 2012-01-17 19:48:58 -08:00
Lenny222
b19fdcced2 libstd => libcore 2012-01-17 10:51:43 -08:00
Lenny222
106dcf7b92 spin-off rustdocs tuple code to libstd 2012-01-17 10:51:43 -08:00
Tim Chevalier
c3bc8fada8 Allow omission of the '.' after nullary tag patterns
This commit allows patterns like:

alt x { some(_) { ... } none { } }

without the '.' after none. The parser suspends judgment about
whether a bare ident is a tag or a new bound variable; instead,
the resolver disambiguates.

This means that any code after resolution that pattern-matches on
patterns needs to call pat_util::normalize_pat, which consults
an environment to do this disambiguation.

In addition, local variables are no longer allowed to shadow
tag names, so this required changing some code (e.g. renaming
variables named "mut", and renaming ast::sub to subtract).

The parser currently accepts patterns with and without the '.'.
Once the compiler and libraries are changed, it will no longer
accept the '.'.
2012-01-17 10:08:16 -08:00
Marijn Haverbeke
e046360e69 Add an std::md4 module 2012-01-17 12:02:04 +01:00
Brian Anderson
26551e5481 libstd: Remove util::void 2012-01-14 02:51:08 -08:00
Brian Anderson
a3f5c66484 libstd: Remove util::orb. Redundant with core::bool 2012-01-14 02:48:16 -08:00
Marijn Haverbeke
7150643588 Remove workaround for issue #1494
We have a snapshot that includes the fix.
2012-01-13 21:38:29 +01:00
Niko Matsakis
8685a1f7c4 distinguish "any closure" and "stack closure" (block) 2012-01-13 09:31:40 -08:00
Niko Matsakis
3f3bfeec27 make "native fn" the type for bare functions, remove fn exprs 2012-01-13 06:27:35 -08:00
Niko Matsakis
455f8b0d45 deprecate fn exprs and the fn() type, preferring fn@ and native fn 2012-01-13 06:27:34 -08:00
Brian Anderson
2c70b2fb7e libstd: Remove a bogus link_name attribute 2012-01-11 20:01:55 -08:00
Brian Anderson
6e1f9ad1f1 rustc: Don't allow empty link_name when nolink attribute is present
Closes #1326
2012-01-11 19:45:18 -08:00
Marijn Haverbeke
4c9c1cd199 Fix dependency bug iface-did-of-impl resolving
By simply not resolving that def id until the typeck pass.

Closes #1494
2012-01-11 21:40:13 +01:00
Marijn Haverbeke
34d7f05292 Major clean-up of std::io
Use ifaces instead of objs, stop wrapping everything in two (or three)
layers of no-value-added indirection, and remove some of the more
pointless/outdated idioms from the code.
2012-01-11 21:00:11 +01:00
Marijn Haverbeke
807592e99f Switch run_program over to ifaces 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
4f76db43e6 Convert std::sha1 and std::rand over to ifaces 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
26610dbbc8 Convert std::deque over to an iface 2012-01-11 20:33:44 +01:00
Marijn Haverbeke
15744210e7 Implement std::map as an iface/impl instead of an obj 2012-01-11 20:33:44 +01:00
Graydon Hoare
f6ecbe88ca Fix rpath bug. 2012-01-09 16:12:47 -08:00
Brian Anderson
fbad0204e4 Merge pull request #1470 from grahame/grahame
add new read_chars method, fix bug in read_char
2012-01-09 10:35:48 -08:00
Marijn Haverbeke
f30c5ea686 Remove leftover comm.rs in std
(The actual comm module lives in core.)
2012-01-09 14:53:13 +01:00
Grahame Bowland
ba694775f5 add tests for io::readchars and io::readchar
Additionally reformat so that 'make check' passes.
2012-01-09 20:49:17 +08:00
Brian Anderson
c5564c9bae Declare MIT license in crate attributes, not BSD
The Rust License is actually the MIT license, not BSD
2012-01-08 16:22:55 -08:00
Grahame Bowland
bcc25634e6 add new read_chars method, fix bug in read_char
having a read_chars method is convenient and more efficient.

the old read_char method had a bug due to re-use of the 'w' width
variable as a loop counter and so was broken for wide characters,
this patch fixes that.
2012-01-09 00:37:03 +08:00
Niko Matsakis
98f5109cde simplify task impl 2012-01-06 22:40:31 -08:00
Brian Anderson
4b2f37253a std: Untabify 2012-01-06 16:37:04 -08:00
Brian Anderson
74c825e385 std: Add fs::homedir
Returns the home directory of the user as appropriate for the platform.

Issue #1359
2012-01-06 16:33:17 -08:00
Erick Tryzelaar
6cfc196d42 libstd: rename c_vec::size to len. 2012-01-06 08:12:18 -08:00
Erick Tryzelaar
3e68803891 libcore: add [u8] helper functions to vec. 2012-01-06 07:47:14 -08:00
Erick Tryzelaar
eade7844a3 libstd: switch map to use libcore's hash functions. 2012-01-06 07:47:14 -08:00
Stefan Plantikow
c8467977c4 Merge branch 'master' into kmath
Conflicts:
	src/libcore/float.rs
2012-01-05 17:20:13 +01:00
Stefan Plantikow
1f10ee365c Moved generic float::min, max to core::math and cleaned up some imports 2012-01-05 17:11:34 +01:00
Stefan Plantikow
494ad4e601 Merge branch 'master' into kmath 2012-01-05 16:25:51 +01:00
Marijn Haverbeke
60ae1590af Switch to new param kind bound syntax
And remove support for the old syntax
2012-01-05 15:50:02 +01:00
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