1. 15 Jul, 2021 1 commit
    • Jupp Tscheak's avatar
      Interface function IEntityRepository::Get is returning an optional reference to query an IEntity. · f1a2e347
      Jupp Tscheak authored
      In order to check whether an IEntity with a certain name/id exists, function IEntityRepository::Contains could be used to query this information. If IEntityRepository::Get is called on a non-existing name/id, the function would throw, so for defensive programming reasons a IEntityRepository::Contains should always be done before actually calling IEntityRepository::Get. The good thing about plain old C-pointers is that assignment and existence check can be done in one call. Since C++17 the same functionality is managed by std::optional.
      Another disadvantage of using a plain reference to IEntity is when it is used as a class member, where it needs to be initialized when an object of that class is defined. It might be that during construction time this IEntity is not known/existing yet. Of cource, a plain old C-pointer could be used in this case, but it wouldn't be a consistant usage.
      The proposal is to use std::optional<std::reference_wrapper<IEntity>> as return value for IEntityRepository::Get.
      Signed-off-by: Jupp Tscheak's avatarJupp Tscheak <jupp.tscheak@daimler.com>
  2. 08 Jul, 2021 4 commits
  3. 07 Jul, 2021 1 commit
  4. 18 Jun, 2021 2 commits
  5. 26 May, 2021 3 commits
  6. 06 Apr, 2021 4 commits
  7. 10 Mar, 2021 4 commits