Return empty optional

This commit is contained in:
Jonas Zeunert
2021-03-07 17:33:13 +01:00
parent 8236546854
commit bdb56fcfae
2 changed files with 26 additions and 6 deletions

View File

@@ -303,7 +303,7 @@
},
{
"address" : 50,
"name" : "Bonux Multiplier x50"
"name" : "Bonus Multiplier x50"
},
{
"address" : 51,

View File

@@ -129,27 +129,47 @@ std::vector<std::shared_ptr<Solenoid>> OutputDriver::get_solenoids() const
boost::optional<std::shared_ptr<items::Lamp>> OutputDriver::get_lamp(const std::string &name) const
{
return this->lamps.find(name)->second;
auto lamp = this->lamps.find(name);
if(lamp == this->lamps.end()) {
return boost:optional<std::shared_ptr<items::Lamp>>();
}
return lamp->second;
}
boost::optional<std::shared_ptr<items::Solenoid>> OutputDriver::get_solenoid(const std::string &name) const
{
return this->solenoids.find(name)->second;
auto solenoid = this->solenoids.find(name);
if(solenoid == this->solenoids.end()) {
return boost:optional<std::shared_ptr<items::Solenoid>>();
}
return solenoid->second;
}
boost::optional<std::shared_ptr<items::Sound>> OutputDriver::get_sound(const std::string &name) const
{
return this->sounds.find(name)->second;
auto sound = this->sounds.find(name);
if(sound == this->sounds.end()) {
return boost:optional<std::shared_ptr<items::Sound>>();
}
return sound->second;
}
boost::optional<std::shared_ptr<items::Flipper>> OutputDriver::get_flipper(const std::string &name) const
{
return this->flippers.find(name)->second;
auto flipper = this->flippers.find(name);
if(flipper == this->flippers.end()) {
return boost:optional<std::shared_ptr<items::Flipper>>();
}
return flipper->second;
}
boost::optional<std::shared_ptr<items::Display>> OutputDriver::get_display(const std::string &name) const
{
return this->displays.find(name)->second;
auto display = this->displays.find(name);
if(display == this->displays.end()) {
return boost:optional<std::shared_ptr<items::Display>>();
}
return display->second;
}
void OutputDriver::shut_down_driver() const