Smart pointers for most library and battle classes.
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
2020-06-02 20:37:21 +02:00
parent 1d1dc877a0
commit 2d3a2fc63b
22 changed files with 91 additions and 89 deletions

View File

@@ -11,10 +11,10 @@
namespace PkmnLib::Library {
class PokemonLibrary : public CreatureLib::Library::DataLibrary {
private:
const NatureLibrary* _natures;
std::unique_ptr<const NatureLibrary> _natures;
public:
~PokemonLibrary() override { delete _natures; }
~PokemonLibrary() override = default;
PokemonLibrary(PkmnLib::Library::LibrarySettings* settings, SpeciesLibrary* species, MoveLibrary* moves,
ItemLibrary* items, CreatureLib::Library::GrowthRateLibrary* growthRates,
@@ -37,7 +37,7 @@ namespace PkmnLib::Library {
return (const std::unique_ptr<const ItemLibrary>&)CreatureLib::Library::DataLibrary::GetItemLibrary();
}
[[nodiscard]] const NatureLibrary* GetNatureLibrary() const noexcept { return _natures; }
[[nodiscard]] ArbUt::BorrowedPtr<const NatureLibrary> GetNatureLibrary() const noexcept { return _natures; }
};
}