1. 31 Oct, 2014 1 commit
  2. 29 Oct, 2014 6 commits
  3. 28 Oct, 2014 5 commits
  4. 27 Oct, 2014 2 commits
  5. 26 Oct, 2014 9 commits
  6. 25 Oct, 2014 7 commits
  7. 24 Oct, 2014 1 commit
  8. 23 Oct, 2014 4 commits
  9. 22 Oct, 2014 1 commit
  10. 21 Oct, 2014 3 commits
  11. 20 Oct, 2014 1 commit
    • Kenton Varda's avatar
      Generics: Tag generated types using members rather than template specialization. · 490acec8
      Kenton Varda authored
      That is to say, whereas previously we would extend capnp::typeId<T>() to a new type by declaring a specialization of it for that type, now we instead have the type contain a nested class called _capnpPrivate which contains a `typeId` constant.
      
      This is necessary because it is impossible to specialize a template for a type which is itself nested inside a template type. E.g. it's impossible to write a specialization `template <typename T> typeId<Foo<T>::Bar>()`; C++ simply doesn't support this. But with generics, Cap'n Proto will allow types to be nested inside templates, so we need this to work.
      490acec8