Files
PkmnLib/src/Library/Species/SpeciesLibrary.hpp
Deukhoofd 40a003429e
Some checks failed
continuous-integration/drone/push Build is failing
Updates CreatureLib, implements ConstStrings.
2020-02-27 18:59:15 +01:00

28 lines
1.1 KiB
C++

#ifndef PKMNLIB_SPECIESLIBRARY_HPP
#define PKMNLIB_SPECIESLIBRARY_HPP
#include <CreatureLib/Library/SpeciesLibrary.hpp>
#include "PokemonSpecies.hpp"
namespace PkmnLib::Library {
class SpeciesLibrary : public CreatureLib::Library::SpeciesLibrary {
public:
inline bool TryGet(const Arbutils::CaseInsensitiveConstString& name, const PokemonSpecies*& outSpecies) const {
return CreatureLib::Library::SpeciesLibrary::TryGet(
name, (const CreatureLib::Library::CreatureSpecies*&)outSpecies);
}
inline const PokemonSpecies* Get(const Arbutils::CaseInsensitiveConstString& name) const {
return dynamic_cast<const PokemonSpecies*>(CreatureLib::Library::SpeciesLibrary::Get(name));
}
const PokemonSpecies* operator[](const Arbutils::CaseInsensitiveConstString& name) const { return Get(name); }
void Insert(const Arbutils::CaseInsensitiveConstString& name, const PokemonSpecies* species) {
CreatureLib::Library::SpeciesLibrary::Insert(name, species);
}
};
}
#endif // PKMNLIB_SPECIESLIBRARY_HPP