From Jason Turner

[meta.help]

Diff to HTML by rtfpessoa

tmp/tmpofi6oznr/{from.md → to.md} RENAMED
@@ -3,19 +3,17 @@
3
  ``` cpp
4
  namespace std {
5
  template <class T, T v>
6
  struct integral_constant {
7
  static constexpr T value = v;
8
- typedef T value_type;
9
- typedef integral_constant<T,v> type;
10
  constexpr operator value_type() const noexcept { return value; }
11
  constexpr value_type operator()() const noexcept { return value; }
12
  };
13
- typedef integral_constant<bool, true> true_type;
14
- typedef integral_constant<bool, false> false_type;
15
  }
16
  ```
17
 
18
- The class template `integral_constant` and its associated typedefs
19
- `true_type` and `false_type` are used as base classes to define the
20
- interface for various type traits.
21
 
 
3
  ``` cpp
4
  namespace std {
5
  template <class T, T v>
6
  struct integral_constant {
7
  static constexpr T value = v;
8
+ using value_type = T;
9
+ using type = integral_constant<T, v>;
10
  constexpr operator value_type() const noexcept { return value; }
11
  constexpr value_type operator()() const noexcept { return value; }
12
  };
 
 
13
  }
14
  ```
15
 
16
+ The class template `integral_constant`, alias template `bool_constant`,
17
+ and its associated *typedef-name*s `true_type` and `false_type` are used
18
+ as base classes to define the interface for various type traits.
19