diff options
author | John Hodge <tpg@mutabah.net> | 2015-03-08 16:14:15 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2015-03-08 16:14:15 +0800 |
commit | 0ab6d527125669ca7a36e5b27ff429c0f402ba77 (patch) | |
tree | 1c7e14e452d563ebbe95acf39f2a7364a3c2d48b /src/dump_as_rust.cpp | |
parent | fcec09900f158aa939eb1c96607aaabf4c8171ef (diff) | |
download | mrust-0ab6d527125669ca7a36e5b27ff429c0f402ba77.tar.gz |
Macro parsing, saving, and evaluating
Diffstat (limited to 'src/dump_as_rust.cpp')
-rw-r--r-- | src/dump_as_rust.cpp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/dump_as_rust.cpp b/src/dump_as_rust.cpp index 83c7f160..cfe9b5d6 100644 --- a/src/dump_as_rust.cpp +++ b/src/dump_as_rust.cpp @@ -190,8 +190,28 @@ public: m_expr_root = false; switch(n.m_datatype) { + case CORETYPE_INVAL: break; + case CORETYPE_CHAR: + m_os << "'\\u" << ::std::hex << n.m_value << ::std::dec << "'"; + break; + case CORETYPE_F32: + case CORETYPE_F64: + break; + case CORETYPE_U8: + case CORETYPE_U16: + case CORETYPE_U32: + case CORETYPE_U64: + case CORETYPE_UINT: + m_os << "0x" << ::std::hex << n.m_value << ::std::dec; + break; + case CORETYPE_I8: + case CORETYPE_I16: + case CORETYPE_I32: + case CORETYPE_I64: + case CORETYPE_INT: + m_os << n.m_value; + break; } - m_os << "0x" << ::std::hex << n.m_value << ::std::dec; } virtual void visit(AST::ExprNode_StructLiteral& n) override { m_expr_root = false; |