Commit graph

7110 commits

Author SHA1 Message Date
Marijn Haverbeke 816b0ac8ae Box ty_param_bounds_and_ty
It contains a vector, which shouldn't be copied all the time.
2011-12-29 09:29:08 +01:00
Graydon Hoare 2ed1005bd7 On second thought, re-land pull request #1385 with backquotes; easier to grep, can change in the future. 2011-12-28 13:41:31 -08:00
Graydon Hoare f2c88c1b80 Merge pull request #1385 from Lenny222/quotes
Use singlequotes in the typechecker error messages too, to distinguish code and English
2011-12-28 13:08:28 -08:00
Graydon Hoare 51227c1e8a Merge pull request #1389 from erickt/master
misc standard library additions
2011-12-28 13:05:02 -08:00
Marijn Haverbeke 9236fdf39f Move the kind datatype to middle::ty
The AST no longer references it.
2011-12-28 21:18:16 +01:00
Marijn Haverbeke 1ed6a27548 Change representation of type params to handle interface bounds
Issue #1227
2011-12-28 21:18:16 +01:00
Graydon Hoare 5930463faa Tidy up some drift in runtime logging, close #1380. 2011-12-28 11:53:12 -08: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
Erick Tryzelaar 5d84652f51 comp: minor cleanup. 2011-12-28 11:19:41 -08:00
Erick Tryzelaar 38e796b943 libcore: Fix a typo. 2011-12-28 11:19:41 -08:00
Stefan Plantikow 7fd62bb2b5 Made matching machine types equal to float, int, uint (fixes #1376) 2011-12-28 18:02:49 +01:00
Brian Anderson b9b9b3e570 rt: Set the initial obstack size to 128 bytes
Double the size on each allocation
2011-12-25 19:18:05 -08:00
Lenny222 0b9751b141 Use singlequotes in the typechecker too, to distinguish code and English 2011-12-25 20:27:09 +01:00
Graydon Hoare b3eb9a0031 Merge pull request #1382 from Lenny222/char
"char": add is_lowercase(), is_uppercase()
2011-12-24 11:55:39 -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
Lenny222 eb0cdc02e3 char: add is_lowercase(), is_uppercase() 2011-12-24 10:41:11 +01:00
Graydon Hoare 47271ab4c8 Forgot typo-fix. 2011-12-23 18:53:52 -08:00
Graydon Hoare ac13f0da9e Add support to libcore for encoded-in-rust unicode character properties, at least. Add script to compute them from unicode.org. 2011-12-23 18:48:08 -08:00
Graydon Hoare 88d74993d8 Update docs on log expressions. 2011-12-23 11:43:36 -08:00
Graydon Hoare 9c267d8154 Add /inst/ to .gitignore 2011-12-23 11:43:27 -08:00
Marijn Haverbeke 46cddffb8f Go back to a single visit_fn function in visit.rs 2011-12-23 18:45:02 +01:00
Marijn Haverbeke 711ff657e2 Get rid of visit_fn_block in visit.rs
It seems redundant and error-prone.
2011-12-23 18:24:49 +01:00
Marijn Haverbeke 25e65239ad Check impls methods against the type of their iface. 2011-12-23 18:11:36 +01:00
Marijn Haverbeke 057617c665 Parse iface items and interface references in impl items.
The (temporary) syntax is

    iface seq<T> {
        fn len() -> uint;
        fn iter(f: block(T));
    }

    // The 'blah<T>' can be left of to default the name of the
    // impl to seq<T>. The 'of seq<T>' can be left off when
    // not implementing a named interface.
    impl blah<T> of seq<T> for [T] {
        fn len() -> uint { vec::len(self) }
        fn iter(f: block(T)) { for x in self { f(x); } }
    }
2011-12-23 18:09:25 +01:00
Marijn Haverbeke 9292744959 Use the same type of record in ty::ty_fn and ty::method
Removes some more code duplication.
2011-12-23 16:11:35 +01:00
Marijn Haverbeke 970f5cc0e4 Make ast::ty_method hold a fn_decl, rather than duplicating its fields 2011-12-23 13:32:17 +01: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 ccb5b6fb25 Switch core macros to expand to log(level, ...). 2011-12-22 16:36:55 -08:00
Graydon Hoare 389329ef1e Merge all 3 log syntaxes, tidy up residual misuses. 2011-12-22 16:14:00 -08:00
Erick Tryzelaar f816d8c71c cargo: Adding my package index. 2011-12-22 15:05:59 -08:00
Erick Tryzelaar 43a6bd110e Whitespace cleanup. 2011-12-22 15:05:59 -08:00
Graydon Hoare dcd771cd48 Merge branch 'master' of github.com:graydon/rust 2011-12-22 14:50:52 -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
Marijn Haverbeke 9587c67230 Fix rustdoc for AST changes 2011-12-22 22:16:02 +01:00
Marijn Haverbeke eacb629442 Work around unwinding bug
See issue #1374
2011-12-22 20:38:09 +01:00
Marijn Haverbeke 0490c36143 Unify some data structures in syntax::ast that were doing the same thing
As a preparation to removing some duplication in typeck.
2011-12-22 20:18:56 +01:00
Graydon Hoare 3b61064631 Revert all of yesterday's snapshots and try again. Cursed! 2011-12-22 10:30:04 -08:00
Graydon Hoare 47d27af228 Merge branch 'master' of github.com:graydon/rust 2011-12-22 09:30:03 -08:00
Graydon Hoare 8005f0c564 Register another snapshot. There was nothing redeeming about the last one. 2011-12-22 09:29:45 -08:00
Marijn Haverbeke 07d7f828cd Fix tag_var_cache to cache crate-external tags
And to not return a bogus mutable box.
2011-12-22 16:23:49 +01:00
Marijn Haverbeke 44f921c8a9 Do not use == and != to compare ty::t values
Issue #828
2011-12-22 15:05:38 +01:00
Marijn Haverbeke 3ee630bbee Add ty::new_ty_hash, clean up comparing of ty::t's 2011-12-22 15:05:38 +01:00
Marijn Haverbeke e2e077c831 Remove trivial cast checker
I consider the added complexity not justified at this point, and it
interacts badly with the patches for issue #828. Feel free to discuss.
2011-12-22 15:04:00 +01:00
Marijn Haverbeke e31983a02e Add Lennart Kudling to AUTHORS 2011-12-22 09:38:03 +01:00
Lenny222 7beb21c6e3 tests: add corner case (empty list) 2011-12-22 08:59:22 +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