/** ** \file type/type.hxx ** \brief Inline methods for type::Type. */ #pragma once #include #include namespace type { inline bool operator==(const Type& lhs, const Type& rhs) { // FIXME DONE: Some code was deleted here. const Type* lhs_primal = &lhs.actual(); const Type* rhs_primal = &rhs.actual(); while (&rhs_primal->actual() != rhs_primal && rhs_primal != lhs_primal) { rhs_primal = &rhs_primal->actual(); } while (&lhs_primal->actual() != lhs_primal && lhs_primal != rhs_primal) { lhs_primal = &lhs_primal->actual(); } return lhs_primal == rhs_primal; } inline bool operator!=(const Type& lhs, const Type& rhs) { // FIXME DONE: Some code was deleted here. return !(lhs == rhs); } } // namespace type