// showing only metafunction result_from_distance
template <typename Point1, typename Point2, typename typename CalculationType>
struct result_from_distance<strategy::distance::comparable::pythagoras<Point1, Point2, CalculationType> >
{
private :
typedef strategy::distance::comparable::pythagoras<Point1, Point2, CalculationType> this_type;
public :
template <typename T>
static inline typename this_type::return_type apply(T const& value)
{
typename this_type::return_type const v = value;
return v * v;
}
};