summaryrefslogtreecommitdiff
path: root/src/ast
AgeCommit message (Collapse)AuthorFilesLines
2015-04-05Replace 'Self' at resolve-time, with special case for boundsJohn Hodge1-2/+1
2015-04-05Convert invocations of find_impl, to use the bool versionJohn Hodge1-4/+4
2015-04-05Tag params with source, rewrite find_impl to return booleanJohn Hodge2-12/+37
2015-04-04Hacked in parsing of HRLsJohn Hodge1-0/+5
2015-04-04Add structure to check for impls on type paramsJohn Hodge1-2/+11
2015-04-04(Minor) commenting on procedure for generic trait checkingJohn Hodge1-1/+16
2015-04-04Further work on handling wildcard traitsJohn Hodge1-29/+30
2015-04-04Partial auto-determining of wildcard trait implsJohn Hodge1-12/+63
2015-04-03Added partial support for #[derive()]John Hodge3-4/+11
- Supports Debug on struct, and assumes compiling in libcore (for now)
2015-04-03Save #[] attrs with item, ready for post-processing derive()John Hodge3-106/+156
2015-04-02Hacked up handling of Sized (handled VERY similar to other .. traits)John Hodge3-14/+52
2015-04-01More work on wildcard implsJohn Hodge3-88/+148
2015-03-31Root-level typecheck now up to requiring SizedJohn Hodge4-34/+86
2015-03-31Replace arguments in paths, and fix edge case in resolve where types were ↵John Hodge2-0/+27
not resolved if added as defaults
2015-03-31Add Copy impls (hacky), and parameter count checking/extendingJohn Hodge4-12/+61
2015-03-31Partial comparisons of types/paths to speed up impl searchesJohn Hodge3-1/+51
2015-03-31Fully convert trait name in 'impl' to be a AST:PathJohn Hodge3-12/+17
2015-03-30Add ordering to TypeRef and Path (to generalise operator== and operator<John Hodge2-6/+24
2015-03-29Handling for 'T::method()' (where T is a type param)John Hodge3-2/+11
2015-03-29Twiddling root-level typecheckJohn Hodge1-0/+1
2015-03-27Split type and lifetime parameters apartJohn Hodge2-63/+27
2015-03-27Fix minor issues in path resolving (bindings incorrect in places)John Hodge2-0/+7
2015-03-27Rework paths bindings to be a separate (printable) structure, add -WerrorJohn Hodge3-95/+116
2015-03-26Split out AST pattern codeJohn Hodge2-107/+123
2015-03-26Remove the ASSOCIATED type (now handled by the UFCS path type)John Hodge1-1/+1
2015-03-26Warning cleanupJohn Hodge1-0/+6
2015-03-26Cleaning up rust source outputJohn Hodge3-1/+7
2015-03-25Add flag for irrefutable matches, prevents arguments from being resolvedJohn Hodge1-0/+4
2015-03-25Wildcard imports in Path::resolve, associated types in ast_iterateJohn Hodge1-1/+13
2015-03-25HACK - Handle the case of core::iter::order importing core::ord, but also ↵John Hodge3-5/+13
defining an 'ord' function
2015-03-24resolve "if let", remove tiny bit of typecheck in path lookupJohn Hodge2-9/+9
2015-03-24Slow bugfixesJohn Hodge3-1/+14
2015-03-24Path resolution coming alongJohn Hodge1-4/+7
2015-03-24Wildcard path resolution possibily workingJohn Hodge3-25/+81
2015-03-23Move item lookup from AST::Path to AST::ModuleJohn Hodge3-188/+296
2015-03-22Wildcard lookups in convert resolve, use processing of anon modulesJohn Hodge1-0/+1
2015-03-22Clean up local path resolution, add internal 'str' typeJohn Hodge4-0/+60
2015-03-22Hack in UFCS <Type as Trait> syntaxJohn Hodge3-1/+11
2015-03-21Planning resolve for local modulesJohn Hodge2-1/+14
2015-03-21Misc (warning suppression, planning trait methods in resolve)John Hodge2-0/+3
2015-03-21Move wildcard use to Path::resolve, add 'bool' typeJohn Hodge2-16/+60
2015-03-20Lifetime bounds, pattern fragments, nested modulesJohn Hodge2-8/+13
2015-03-19Struct patterns, return with no semicolonJohn Hodge1-2/+7
2015-03-19Convert patterns over to tagged unionsJohn Hodge2-80/+112
2015-03-19Clean up copy constructor use, switch part of AST::Pattern to tagged unionJohn Hodge3-52/+32
2015-03-19EVIL tagged union hackjobJohn Hodge1-0/+10
2015-03-18Local macros, fixed array literalsJohn Hodge2-4/+3
2015-03-18'..' pattern, fix macro arg lookup comparison functionJohn Hodge1-0/+7
2015-03-18Array literals, op-equals parsing, super in path, blocksJohn Hodge2-5/+45
2015-03-17Rework handling of blocks, add sub-modulesJohn Hodge1-2/+8