diff options
Diffstat (limited to 'src/parse/token.cpp')
-rw-r--r-- | src/parse/token.cpp | 20 |
1 files changed, 2 insertions, 18 deletions
diff --git a/src/parse/token.cpp b/src/parse/token.cpp index 9f84df79..95adf594 100644 --- a/src/parse/token.cpp +++ b/src/parse/token.cpp @@ -53,12 +53,7 @@ Token::Token(enum eTokenType type, ::std::string str): m_type(type), m_data(Data::make_String(mv$(str))) { - assert( m_type != TOK_IDENT ); } -Token::Token(Ident ident): - m_type(TOK_IDENT), - m_data(Data( mv$(ident) )) -{} Token::Token(uint64_t val, enum eCoreType datatype): m_type(TOK_INTEGER), m_data( Data::make_Integer({datatype, val}) ) @@ -157,7 +152,6 @@ Token::Token(const Token& t): (None, ), (String, m_data = Data::make_String(e); ), (Integer, m_data = Data::make_Integer(e);), - (Ident , m_data = Data(e);), (Float, m_data = Data::make_Float(e);), (Fragment, BUG(t.m_pos, "Attempted to copy a fragment - " << t);) ) @@ -177,7 +171,6 @@ Token Token::clone() const (Integer, rv.m_data = Data::make_Integer(e); ), - (Ident, rv.m_data = Data(e); ), (Float, rv.m_data = Data::make_Float(e); ), @@ -305,8 +298,9 @@ struct EscapedString { case TOK_INTERPOLATED_BLOCK: return "/*:block*/"; case TOK_INTERPOLATED_META: return "/*:meta*/"; case TOK_INTERPOLATED_ITEM: return "/*:item*/"; + case TOK_INTERPOLATED_IDENT: return "/*:ident*/"; // Value tokens - case TOK_IDENT: return m_data.as_Ident().name; + case TOK_IDENT: return m_data.as_String(); case TOK_MACRO: return m_data.as_String() + "!"; case TOK_LIFETIME: return "'" + m_data.as_String(); case TOK_INTEGER: return FMT(m_data.as_Integer().m_intval); // TODO: suffix for type @@ -471,10 +465,6 @@ SERIALISE_TYPE(Token::, "Token", { s % e.m_datatype; s.item( e.m_intval ); ), - (Ident, - // Hygine contex for serialised idents is left for the loader - s << e.name; - ), (Float, s % e.m_datatype; s.item( e.m_floatval ); @@ -507,12 +497,6 @@ SERIALISE_TYPE(Token::, "Token", { s.item( v ); m_data = Token::Data::make_Integer({dt, v}); break; } - case Token::Data::TAG_Ident: { - ::std::string str; - s.item( str ); - // - Hygine is populated by caller, fill with dummy values for now - m_data = Token::Data::make_Ident(Ident { {~0u,{}}, mv$(str) }); - break; } case Token::Data::TAG_Float: { enum eCoreType dt; double v; |