#ifndef __rf_parenth_ih__ #define __rf_parenth_ih__ #include "rf_common.hh" #include "rf_parenth.hh" namespace rftype { using namespace rfrt ; inline Parenth::Parenth (const Expr& _expr) : Term (type_parenth) { Content* p = static_cast(allocator.allocate(sizeof(Content))); p->ref_count = 1; new (&p->expr) Expr(_expr); ptr_data2 = p; } // // Destructor is never called. Parentheses are destroyed through dtor(). inline Parenth::~Parenth () { FATAL("Destructor for Parenth should never be called."); } inline const Expr& Parenth::get_expr () const { return static_cast(ptr_data2)->expr; } } #endif // __rf_parenth_ih__