pointset_point_id.h

Back to Point-set

pastel/sys/pointset/

// Description: Point-id-type of a point-set
// DocumentationOf: pointset_concept.h

#ifndef PASTELSYS_POINTSET_POINT_ID_H
#define PASTELSYS_POINTSET_POINT_ID_H

#include "pastel/sys/pointset/pointset_concept.h"
#include "pastel/sys/pointset/pointset_point.h"
#include "pastel/sys/set/set_concept.h"
#include "pastel/sys/function/identity_function.h"

#include <type_traits>

namespace Pastel
{

    template <
        typename PointSet,
        Requires<
            Models<PointSet, PointSet_Concept>
        > = 0
    >
    using PointSet_PointId = 
        Point_PointId<PointSet_Point<PointSet>>;

    template <
        typename PointSet,
        Requires<
            Models<PointSet, PointSet_Concept>
        > = 0
    >
    using PointSet_PointId_F = 
        Identity_F<PointSet_PointId<PointSet>>;

}

#endif