#ifndef ASPECT_H
#define ASPECT_H

#ifndef OWN_H
#include "Own.h"
#endif

namespace MM
{

template <class T>
class Aspect : Own<T>
{
public:
    using Own::adopt;
    using Own::orphan;

    bool        exist ()                {return is_valid();}
    T *         operator -> ()          {return &operator()();}
    T const*    operator -> () const    {return &operator()();}
};

}//MM

#endif //ASPECT_H
