Empowering everyone to build reliable and efficient software.
Go to file
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
doc Convert a bunch of material on items, statements, expressions and typestates. 2012-01-16 18:04:48 -08:00
man Begin shift over to using pandoc, markdown and llnextgen for reference manual. Fix man page URL while at it. 2012-01-12 19:10:30 -08:00
mk build: Check and set perf --log-fd option 2012-01-17 10:48:46 +08:00
src Allow omission of the '.' after nullary tag patterns 2012-01-17 10:08:16 -08:00
.gitignore Add /inst/ to .gitignore 2011-12-23 11:43:27 -08:00
.gitmodules Re-add libuv as a submodule. 2011-11-08 19:01:47 -08:00
AUTHORS.txt Add Kevin Cantu to AUTHORS.txt 2012-01-15 21:27:19 -08:00
configure build: Check and set perf --log-fd option 2012-01-17 10:48:46 +08:00
LICENSE.txt Update license text for 2012 2012-01-08 16:24:09 -08:00
Makefile.in build: Stop building stage3 on normal test cycles 2012-01-16 20:30:39 +08:00
README Switch URLs. 2011-09-20 16:27:08 -07:00

This is a compiler and suite of associated libraries and documentation for the
Rust programming language.

See LICENSE.txt for terms of copyright and redistribution.

See http://www.rust-lang.org for more information.