diff --git a/src/Parser.cpp b/src/Parser.cpp index ba65e9c..0f1a4eb 100644 --- a/src/Parser.cpp +++ b/src/Parser.cpp @@ -26,3 +26,8 @@ std::shared_ptr Parser::parse() return result.get(); } + +Parser::ErrorOr Parser::walk_expr() +{ + return ErrorOr(new ExprNode()); // constructor does not want to accept a shared_ptr in the argument list, thats why im not using make_shared here +} diff --git a/src/Parser.h b/src/Parser.h index 82f9e95..e6d8684 100644 --- a/src/Parser.h +++ b/src/Parser.h @@ -21,7 +21,7 @@ class Parser return error_tok; } - ErrorOr(std::shared_ptr& ptr) : m_ptr(ptr), m_is_error(false) {} + ErrorOr(T* ptr) : m_ptr(ptr), m_is_error(false) {} ErrorOr(const std::string& error, const Token& error_tok) : m_error(error), m_is_error(true), error_tok(error_tok) {} bool is_error() { return m_is_error; }