1
0
mirror of https://github.com/OpenTTD/OpenTTD synced 2026-01-19 10:22:39 +01:00

Codechange: Add HasFlag() to test if a value is present in a bitset enum type. (#12959)

This simplifies tests for `(x & y) != y` with enum classes by reducing repetition, similar to HasBit(), and also makes the intent of the expression clearer.
This commit is contained in:
Peter Nelson
2024-09-22 14:51:37 +01:00
committed by GitHub
parent d450d4743e
commit 376e882a14
8 changed files with 37 additions and 25 deletions

View File

@@ -1326,9 +1326,9 @@ static StationSpec::TileFlags GetStationTileFlags(StationGfx gfx, const StationS
void SetRailStationTileFlags(TileIndex tile, const StationSpec *statspec)
{
const auto flags = GetStationTileFlags(GetStationGfx(tile), statspec);
SetStationTileBlocked(tile, (flags & StationSpec::TileFlags::Blocked) == StationSpec::TileFlags::Blocked);
SetStationTileHavePylons(tile, (flags & StationSpec::TileFlags::Pylons) == StationSpec::TileFlags::Pylons);
SetStationTileHaveWires(tile, (flags & StationSpec::TileFlags::NoWires) != StationSpec::TileFlags::NoWires);
SetStationTileBlocked(tile, HasFlag(flags, StationSpec::TileFlags::Blocked));
SetStationTileHavePylons(tile, HasFlag(flags, StationSpec::TileFlags::Pylons));
SetStationTileHaveWires(tile, !HasFlag(flags, StationSpec::TileFlags::NoWires));
}
/**