Rework for C Interfaces to handle exceptions a bit better.
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -9,9 +9,9 @@ CreatureLib::Library::AttackData::AttackData(const ConstString& name, uint8_t ty
|
||||
: _name(std::move(name)), _type(type), _category(category), _basePower(power), _accuracy(accuracy),
|
||||
_baseUsages(baseUsage), _target(target), _priority(priority), _flags(std::move(flags)) {}
|
||||
|
||||
bool CreatureLib::Library::AttackData::HasFlag(const ConstString& key) const {
|
||||
bool CreatureLib::Library::AttackData::HasFlag(const ConstString& key) const noexcept {
|
||||
return this->_flags.find(key) != this->_flags.end();
|
||||
}
|
||||
bool CreatureLib::Library::AttackData::HasFlag(uint32_t key) const {
|
||||
bool CreatureLib::Library::AttackData::HasFlag(uint32_t key) const noexcept {
|
||||
return this->_flags.find(key) != this->_flags.end();
|
||||
}
|
||||
|
||||
@@ -27,17 +27,17 @@ namespace CreatureLib::Library {
|
||||
uint8_t baseUsage, AttackTarget target, int8_t priority, std::unordered_set<uint32_t> flags);
|
||||
virtual ~AttackData() = default;
|
||||
|
||||
inline const ConstString& GetName() const { return _name; }
|
||||
inline const uint8_t GetType() const { return _type; }
|
||||
inline AttackCategory GetCategory() const { return _category; }
|
||||
inline uint8_t GetBasePower() const { return _basePower; }
|
||||
inline uint8_t GetAccuracy() const { return _accuracy; }
|
||||
inline uint8_t GetBaseUsages() const { return _baseUsages; }
|
||||
inline AttackTarget GetTarget() const { return _target; }
|
||||
inline int8_t GetPriority() const { return _priority; }
|
||||
inline const ConstString& GetName() const noexcept { return _name; }
|
||||
inline const uint8_t GetType() const noexcept { return _type; }
|
||||
inline AttackCategory GetCategory() const noexcept { return _category; }
|
||||
inline uint8_t GetBasePower() const noexcept { return _basePower; }
|
||||
inline uint8_t GetAccuracy() const noexcept { return _accuracy; }
|
||||
inline uint8_t GetBaseUsages() const noexcept { return _baseUsages; }
|
||||
inline AttackTarget GetTarget() const noexcept { return _target; }
|
||||
inline int8_t GetPriority() const noexcept { return _priority; }
|
||||
|
||||
bool HasFlag(const ConstString& key) const;
|
||||
bool HasFlag(uint32_t keyHash) const;
|
||||
bool HasFlag(const ConstString& key) const noexcept;
|
||||
bool HasFlag(uint32_t keyHash) const noexcept;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -15,24 +15,26 @@ CreatureLib::Library::DataLibrary::DataLibrary(LibrarySettings* settings, Creatu
|
||||
AssertNotNull(_typeLibrary)
|
||||
}
|
||||
|
||||
const CreatureLib::Library::LibrarySettings* CreatureLib::Library::DataLibrary::GetSettings() const {
|
||||
const CreatureLib::Library::LibrarySettings* CreatureLib::Library::DataLibrary::GetSettings() const noexcept {
|
||||
return _settings;
|
||||
}
|
||||
|
||||
const CreatureLib::Library::SpeciesLibrary* CreatureLib::Library::DataLibrary::GetSpeciesLibrary() const {
|
||||
const CreatureLib::Library::SpeciesLibrary* CreatureLib::Library::DataLibrary::GetSpeciesLibrary() const noexcept {
|
||||
return _species;
|
||||
}
|
||||
|
||||
const CreatureLib::Library::AttackLibrary* CreatureLib::Library::DataLibrary::GetAttackLibrary() const {
|
||||
const CreatureLib::Library::AttackLibrary* CreatureLib::Library::DataLibrary::GetAttackLibrary() const noexcept {
|
||||
return _attacks;
|
||||
}
|
||||
|
||||
const CreatureLib::Library::ItemLibrary* CreatureLib::Library::DataLibrary::GetItemLibrary() const { return _items; }
|
||||
const CreatureLib::Library::ItemLibrary* CreatureLib::Library::DataLibrary::GetItemLibrary() const noexcept {
|
||||
return _items;
|
||||
}
|
||||
|
||||
const CreatureLib::Library::GrowthRateLibrary* CreatureLib::Library::DataLibrary::GetGrowthRates() const {
|
||||
const CreatureLib::Library::GrowthRateLibrary* CreatureLib::Library::DataLibrary::GetGrowthRates() const noexcept {
|
||||
return _growthRates;
|
||||
}
|
||||
|
||||
const CreatureLib::Library::TypeLibrary* CreatureLib::Library::DataLibrary::GetTypeLibrary() const {
|
||||
const CreatureLib::Library::TypeLibrary* CreatureLib::Library::DataLibrary::GetTypeLibrary() const noexcept {
|
||||
return _typeLibrary;
|
||||
}
|
||||
|
||||
@@ -34,12 +34,12 @@ namespace CreatureLib::Library {
|
||||
delete _typeLibrary;
|
||||
}
|
||||
|
||||
[[nodiscard]] const LibrarySettings* GetSettings() const;
|
||||
[[nodiscard]] const SpeciesLibrary* GetSpeciesLibrary() const;
|
||||
[[nodiscard]] const AttackLibrary* GetAttackLibrary() const;
|
||||
[[nodiscard]] const ItemLibrary* GetItemLibrary() const;
|
||||
[[nodiscard]] const GrowthRateLibrary* GetGrowthRates() const;
|
||||
[[nodiscard]] const TypeLibrary* GetTypeLibrary() const;
|
||||
[[nodiscard]] const LibrarySettings* GetSettings() const noexcept;
|
||||
[[nodiscard]] const SpeciesLibrary* GetSpeciesLibrary() const noexcept;
|
||||
[[nodiscard]] const AttackLibrary* GetAttackLibrary() const noexcept;
|
||||
[[nodiscard]] const ItemLibrary* GetItemLibrary() const noexcept;
|
||||
[[nodiscard]] const GrowthRateLibrary* GetGrowthRates() const noexcept;
|
||||
[[nodiscard]] const TypeLibrary* GetTypeLibrary() const noexcept;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
#include "Item.hpp"
|
||||
|
||||
bool CreatureLib::Library::Item::HasFlag(const Arbutils::CaseInsensitiveConstString& flag) const {
|
||||
bool CreatureLib::Library::Item::HasFlag(const Arbutils::CaseInsensitiveConstString& flag) const noexcept {
|
||||
return this->_flags.find(flag) != this->_flags.end();
|
||||
}
|
||||
bool CreatureLib::Library::Item::HasFlag(uint32_t flag) const noexcept {
|
||||
return this->_flags.find(flag) != this->_flags.end();
|
||||
}
|
||||
bool CreatureLib::Library::Item::HasFlag(uint32_t flag) const { return this->_flags.find(flag) != this->_flags.end(); }
|
||||
|
||||
CreatureLib::Library::Item::Item(const Arbutils::CaseInsensitiveConstString& name,
|
||||
CreatureLib::Library::ItemCategory category,
|
||||
|
||||
@@ -20,13 +20,13 @@ namespace CreatureLib::Library {
|
||||
Item(const Arbutils::CaseInsensitiveConstString& name, ItemCategory category, BattleItemCategory battleCategory,
|
||||
int32_t price, std::unordered_set<uint32_t> flags);
|
||||
|
||||
inline const Arbutils::CaseInsensitiveConstString& GetName() const { return _name; }
|
||||
inline ItemCategory GetCategory() const { return _category; }
|
||||
inline BattleItemCategory GetBattleCategory() const { return _battleCategory; }
|
||||
inline const int32_t GetPrice() const { return _price; }
|
||||
inline const Arbutils::CaseInsensitiveConstString& GetName() const noexcept { return _name; }
|
||||
inline ItemCategory GetCategory() const noexcept { return _category; }
|
||||
inline BattleItemCategory GetBattleCategory() const noexcept { return _battleCategory; }
|
||||
inline const int32_t GetPrice() const noexcept { return _price; }
|
||||
|
||||
bool HasFlag(const Arbutils::CaseInsensitiveConstString& flag) const;
|
||||
bool HasFlag(uint32_t flag) const;
|
||||
bool HasFlag(const Arbutils::CaseInsensitiveConstString& flag) const noexcept;
|
||||
bool HasFlag(uint32_t flag) const noexcept;
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user