diff options
| author | John Hodge <tpg@mutabah.net> | 2016-03-15 21:32:48 +0800 |
|---|---|---|
| committer | John Hodge <tpg@mutabah.net> | 2016-03-15 21:32:48 +0800 |
| commit | 124cf9fc5fb6c0b7f70ef94382efd5190019edac (patch) | |
| tree | 3e2b3e42e49b51d8ddcb0c52616e201b18b2a23e /src/expand | |
| parent | 9a3987bb1575c4ab1eae9c065e907773fa3dcf17 (diff) | |
| download | mrust-124cf9fc5fb6c0b7f70ef94382efd5190019edac.tar.gz | |
Expand - More attribute handling
Diffstat (limited to 'src/expand')
| -rw-r--r-- | src/expand/mod.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/expand/mod.cpp b/src/expand/mod.cpp index 2f936f1f..0c9fb487 100644 --- a/src/expand/mod.cpp +++ b/src/expand/mod.cpp @@ -179,7 +179,10 @@ void Expand_Type(bool is_early, ::AST::Crate& crate, LList<const AST::Module*> m (Primitive, ), (Function, - TODO(ty.span(), "Expand function type " << ty); + Type_Function& tf = e.info; + Expand_Type(is_early, crate, modstack, mod, *tf.m_rettype); + for(auto& st : tf.m_arg_types) + Expand_Type(is_early, crate, modstack, mod, st); ), (Tuple, for(auto& st : e.inner_types) @@ -470,7 +473,10 @@ void Expand_Mod(bool is_early, ::AST::Crate& crate, LList<const AST::Module*> mo ), (Struct, - // TODO: Struct items + for(auto& fld : e.e.fields()) { + // TODO: Attributes on struct items + Expand_Type(is_early, crate, modstack, mod, fld.data); + } ), (Enum, // TODO: Enum variants @@ -504,6 +510,7 @@ void Expand_Mod(bool is_early, ::AST::Crate& crate, LList<const AST::Module*> mo for( auto& i : mod.impls() ) { DEBUG("- " << i); + // TODO: Expand impls } for( const auto& mi: mod.macro_imports_res() ) |
