Commit 5dcef1c2 authored by Tomáš Jakubec's avatar Tomáš Jakubec
Browse files

The possibility to declare assretions on type properties.

parent fcfb30ee
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 4.10.0, 2019-10-07T21:30:33. -->
<!-- Written by QtCreator 4.10.0, 2019-10-08T12:10:37. -->
<qtcreator>
<qtcreator>
 <data>
 <data>
  <variable>EnvironmentId</variable>
  <variable>EnvironmentId</variable>
+10 −1
Original line number Original line Diff line number Diff line
@@ -665,7 +665,13 @@ class ClassC<std::integer_sequence<unsigned int,Is...>, std::tuple<Types...>>
      }
      }
 };
 };



//The concept implementation
template<typename T>
class NeedIterator{
    static_assert (Detail::is_iterable<T>::value, "The type must be iterable");
public:
    NeedIterator(const T&){}
};


void testTemplate() {
void testTemplate() {
    ClassA n(std::make_integer_sequence<unsigned int, 3>{});
    ClassA n(std::make_integer_sequence<unsigned int, 3>{});
@@ -681,6 +687,9 @@ void testTemplate() {
    ClassC<std::integer_sequence<unsigned int, 2,0>, std::tuple<double, char>> c(make_custom_integer_sequence_t<unsigned int, 2, 0, -2>{}, std::tuple<double, char>{});
    ClassC<std::integer_sequence<unsigned int, 2,0>, std::tuple<double, char>> c(make_custom_integer_sequence_t<unsigned int, 2, 0, -2>{}, std::tuple<double, char>{});
    ClassC<std::integer_sequence<unsigned int, 2,0>, std::tuple<double, char>> cc;
    ClassC<std::integer_sequence<unsigned int, 2,0>, std::tuple<double, char>> cc;
    ClassC<std::integer_sequence<unsigned int, 2,0>, decltype(std::make_tuple(1.0, 'a'))> ccc;
    ClassC<std::integer_sequence<unsigned int, 2,0>, decltype(std::make_tuple(1.0, 'a'))> ccc;

    NeedIterator valid(mesh3.getCells());
    //NeedIterator invalid(0.0);
}
}