diff options
author | John Hodge <tpg@mutabah.net> | 2016-03-20 12:29:44 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-03-20 12:29:44 +0800 |
commit | b79e71e5f11e14516f13ea2f8437d5deaa10e653 (patch) | |
tree | 3097c0251c83e32e4e673a840f5708110a8adc4c /src/dump_as_rust.cpp | |
parent | 0ee80748a3dcb97f308e9b0b71c22d28868d12cf (diff) | |
download | mrust-b79e71e5f11e14516f13ea2f8437d5deaa10e653.tar.gz |
Tagged Union - Rework to remove indirection
Diffstat (limited to 'src/dump_as_rust.cpp')
-rw-r--r-- | src/dump_as_rust.cpp | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/dump_as_rust.cpp b/src/dump_as_rust.cpp index 42cbf48e..45ca55e0 100644 --- a/src/dump_as_rust.cpp +++ b/src/dump_as_rust.cpp @@ -562,7 +562,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Module() ) continue ; - const auto& e = item.data.as_Module().e; + const auto& e = item.data.as_Module(); m_os << "\n"; m_os << indent() << (item.is_pub ? "pub " : "") << "mod " << item.name << "\n"; @@ -577,7 +577,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Type() ) continue ; - const auto& e = item.data.as_Type().e; + const auto& e = item.data.as_Type(); if(need_nl) { m_os << "\n"; @@ -595,7 +595,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Struct() ) continue ; - const auto& e = item.data.as_Struct().e; + const auto& e = item.data.as_Struct(); m_os << "\n"; m_os << indent() << (item.is_pub ? "pub " : "") << "struct " << item.name; @@ -605,7 +605,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Enum() ) continue ; - const auto& e = item.data.as_Enum().e; + const auto& e = item.data.as_Enum(); m_os << "\n"; m_os << indent() << (item.is_pub ? "pub " : "") << "enum " << item.name; @@ -615,7 +615,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Trait() ) continue ; - const auto& e = item.data.as_Trait().e; + const auto& e = item.data.as_Trait(); m_os << "\n"; m_os << indent() << (item.is_pub ? "pub " : "") << "trait " << item.name; @@ -625,7 +625,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Static() ) continue ; - const auto& e = item.data.as_Static().e; + const auto& e = item.data.as_Static(); if(need_nl) { m_os << "\n"; @@ -646,7 +646,7 @@ void RustPrinter::handle_module(const AST::Module& mod) for( const auto& item : mod.items() ) { if( !item.data.is_Function() ) continue ; - const auto& e = item.data.as_Function().e; + const auto& e = item.data.as_Function(); m_os << "\n"; handle_function(item.is_pub, item.name, e); @@ -673,10 +673,10 @@ void RustPrinter::handle_module(const AST::Module& mod) throw ::std::runtime_error("Unexpected item type in impl block"); ), (Type, - m_os << indent() << "type " << it.name << " = " << e.e.type() << ";\n"; + m_os << indent() << "type " << it.name << " = " << e.type() << ";\n"; ), (Function, - handle_function(it.is_pub, it.name, e.e); + handle_function(it.is_pub, it.name, e); ) ) } @@ -958,7 +958,7 @@ void RustPrinter::handle_trait(const AST::Trait& s) m_os << indent() << "type " << i.name << ";\n"; ), (Function, - handle_function(false, i.name, e.e); + handle_function(false, i.name, e); ) ) } |