Browse Source

Extract Is{Any,None}Of out of engine.hpp

Untangles some of the dependencies
pull/7624/head
Gleb Mazovetskiy 1 year ago
parent
commit
a49b1f2d58
  1. 1
      Source/DiabloUI/credits.cpp
  2. 1
      Source/DiabloUI/diabloui.cpp
  3. 1
      Source/DiabloUI/dialogs.cpp
  4. 1
      Source/DiabloUI/progress.cpp
  5. 1
      Source/DiabloUI/settingsmenu.cpp
  6. 1
      Source/automap.cpp
  7. 2
      Source/automap.h
  8. 1
      Source/controls/controller_motion.cpp
  9. 1
      Source/controls/game_controls.cpp
  10. 1
      Source/controls/plrctrls.cpp
  11. 1
      Source/controls/touch/event_handlers.cpp
  12. 1
      Source/cursor.cpp
  13. 1
      Source/data/file.hpp
  14. 2
      Source/data/parser.hpp
  15. 1
      Source/diablo.cpp
  16. 1
      Source/dvlnet/base_protocol.h
  17. 1
      Source/effects.cpp
  18. 12
      Source/engine.h
  19. 1
      Source/engine/demomode.cpp
  20. 2
      Source/engine/displacement.hpp
  21. 1
      Source/engine/events.cpp
  22. 1
      Source/engine/render/scrollrt.cpp
  23. 1
      Source/engine/render/text_render.cpp
  24. 1
      Source/inv.cpp
  25. 1
      Source/items.cpp
  26. 1
      Source/items.h
  27. 1
      Source/items/validation.cpp
  28. 1
      Source/levels/drlg_l1.cpp
  29. 1
      Source/levels/drlg_l2.cpp
  30. 1
      Source/levels/drlg_l3.cpp
  31. 1
      Source/levels/drlg_l4.cpp
  32. 1
      Source/levels/gendung.cpp
  33. 1
      Source/levels/themes.cpp
  34. 1
      Source/levels/trigs.cpp
  35. 1
      Source/lighting.cpp
  36. 1
      Source/loadsave.cpp
  37. 1
      Source/lua/modules/dev/items.cpp
  38. 1
      Source/lua/modules/dev/quests.cpp
  39. 1
      Source/missiles.cpp
  40. 1
      Source/missiles.h
  41. 1
      Source/monster.cpp
  42. 1
      Source/msg.cpp
  43. 1
      Source/multi.cpp
  44. 1
      Source/objects.cpp
  45. 1
      Source/objects.h
  46. 1
      Source/options.cpp
  47. 1
      Source/pack.cpp
  48. 1
      Source/player.cpp
  49. 1
      Source/player.h
  50. 1
      Source/quests.cpp
  51. 1
      Source/sync.cpp
  52. 1
      Source/towners.cpp
  53. 19
      Source/utils/is_of.hpp
  54. 1
      test/pack_test.cpp

1
Source/DiabloUI/credits.cpp

@ -14,6 +14,7 @@
#include "engine/render/text_render.hpp"
#include "hwcursor.hpp"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/sdl_compat.h"

1
Source/DiabloUI/diabloui.cpp

@ -24,6 +24,7 @@
#include "hwcursor.hpp"
#include "utils/algorithm/container.hpp"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/pcx_to_clx.hpp"

1
Source/DiabloUI/dialogs.cpp

@ -16,6 +16,7 @@
#include "engine/palette.h"
#include "hwcursor.hpp"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"

1
Source/DiabloUI/progress.cpp

@ -12,6 +12,7 @@
#include "engine/render/clx_render.hpp"
#include "hwcursor.hpp"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
namespace devilution {

1
Source/DiabloUI/settingsmenu.cpp

@ -14,6 +14,7 @@
#include "engine/render/text_render.hpp"
#include "hwcursor.hpp"
#include "options.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/utf8.hpp"

1
Source/automap.cpp

@ -19,6 +19,7 @@
#include "player.h"
#include "utils/attributes.h"
#include "utils/enum_traits.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/ui_fwd.h"
#include "utils/utf8.hpp"

2
Source/automap.h

@ -7,9 +7,9 @@
#include <cstdint>
#include "engine.h"
#include "engine/displacement.hpp"
#include "engine/point.hpp"
#include "engine/surface.hpp"
#include "levels/gendung.h"
#include "utils/attributes.h"

1
Source/controls/controller_motion.cpp

@ -13,6 +13,7 @@
#include "controls/touch/gamepad.h"
#include "engine/demomode.h"
#include "options.h"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
namespace devilution {

1
Source/controls/game_controls.cpp

@ -16,6 +16,7 @@
#include "panels/spell_list.hpp"
#include "qol/stash.h"
#include "stores.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/controls/plrctrls.cpp

@ -38,6 +38,7 @@
#include "stores.h"
#include "towners.h"
#include "track.h"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
#include "utils/str_cat.hpp"

1
Source/controls/touch/event_handlers.cpp

@ -12,6 +12,7 @@
#include "panels/spell_list.hpp"
#include "qol/stash.h"
#include "stores.h"
#include "utils/is_of.hpp"
#include "utils/ui_fwd.h"
namespace devilution {

1
Source/cursor.cpp

@ -34,6 +34,7 @@
#include "towners.h"
#include "track.h"
#include "utils/attributes.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/sdl_bilinear_scale.hpp"
#include "utils/surface_to_clx.hpp"

1
Source/data/file.hpp

@ -1,6 +1,7 @@
#pragma once
#include <cstddef>
#include <limits>
#include <memory>
#include <string_view>

2
Source/data/parser.hpp

@ -3,7 +3,7 @@
#include <algorithm>
#include <string_view>
#include "engine.h" // For IsAnyOf
#include "utils/is_of.hpp"
namespace devilution {

1
Source/diablo.cpp

@ -86,6 +86,7 @@
#include "track.h"
#include "utils/console.h"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/parse_int.hpp"
#include "utils/paths.h"

1
Source/dvlnet/base_protocol.h

@ -11,6 +11,7 @@
#include "dvlnet/packet.h"
#include "player.h"
#include "utils/algorithm/container.hpp"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
namespace devilution::net {

1
Source/effects.cpp

@ -19,6 +19,7 @@
#include "engine/sound_position.hpp"
#include "init.h"
#include "player.h"
#include "utils/is_of.hpp"
namespace devilution {

12
Source/engine.h

@ -40,18 +40,6 @@
namespace devilution {
template <typename V, typename X, typename... Xs>
DVL_ALWAYS_INLINE constexpr bool IsAnyOf(const V &v, X x, Xs... xs)
{
return v == x || ((v == xs) || ...);
}
template <typename V, typename X, typename... Xs>
DVL_ALWAYS_INLINE constexpr bool IsNoneOf(const V &v, X x, Xs... xs)
{
return v != x && ((v != xs) && ...);
}
/**
* @brief Fill a rectangle with the given color.
*/

1
Source/engine/demomode.cpp

@ -21,6 +21,7 @@
#include "utils/console.h"
#include "utils/display.h"
#include "utils/endian_stream.hpp"
#include "utils/is_of.hpp"
#include "utils/paths.h"
#include "utils/str_cat.hpp"

2
Source/engine/displacement.hpp

@ -1,6 +1,8 @@
#pragma once
#include <cmath>
#include <limits>
#ifdef BUILD_TESTING
#include <ostream>
#endif

1
Source/engine/events.cpp

@ -9,6 +9,7 @@
#include "movie.h"
#include "options.h"
#include "panels/console.hpp"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
#ifdef USE_SDL1

1
Source/engine/render/scrollrt.cpp

@ -54,6 +54,7 @@
#include "towners.h"
#include "utils/attributes.h"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
#include "utils/str_cat.hpp"

1
Source/engine/render/text_render.cpp

@ -27,6 +27,7 @@
#include "engine/render/clx_render.hpp"
#include "utils/algorithm/container.hpp"
#include "utils/display.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/sdl_compat.h"
#include "utils/utf8.hpp"

1
Source/inv.cpp

@ -33,6 +33,7 @@
#include "stores.h"
#include "towners.h"
#include "utils/format_int.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/sdl_geometry.h"
#include "utils/str_cat.hpp"

1
Source/items.cpp

@ -41,6 +41,7 @@
#include "spells.h"
#include "stores.h"
#include "utils/format_int.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/math.h"

1
Source/items.h

@ -15,6 +15,7 @@
#include "engine/point.hpp"
#include "itemdat.h"
#include "monster.h"
#include "utils/is_of.hpp"
#include "utils/string_or_view.hpp"
namespace devilution {

1
Source/items/validation.cpp

@ -12,6 +12,7 @@
#include "monstdat.h"
#include "player.h"
#include "spells.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/levels/drlg_l1.cpp

@ -11,6 +11,7 @@
#include "player.h"
#include "quests.h"
#include "utils/bitset2d.hpp"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/levels/drlg_l2.cpp

@ -19,6 +19,7 @@
#include "levels/setmaps.h"
#include "player.h"
#include "quests.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/levels/drlg_l3.cpp

@ -14,6 +14,7 @@
#include "objects.h"
#include "player.h"
#include "quests.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/levels/drlg_l4.cpp

@ -14,6 +14,7 @@
#include "multi.h"
#include "objdat.h"
#include "player.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/levels/gendung.cpp

@ -25,6 +25,7 @@
#include "lighting.h"
#include "options.h"
#include "utils/bitset2d.hpp"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
#include "utils/status_macros.hpp"

1
Source/levels/themes.cpp

@ -18,6 +18,7 @@
#include "objects.h"
#include "quests.h"
#include "utils/algorithm/container.hpp"
#include "utils/is_of.hpp"
#include "utils/str_cat.hpp"
namespace devilution {

1
Source/levels/trigs.cpp

@ -16,6 +16,7 @@
#include "diablo_msg.hpp"
#include "init.h"
#include "utils/algorithm/container.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/utf8.hpp"

1
Source/lighting.cpp

@ -18,6 +18,7 @@
#include "engine/points_in_rectangle_range.hpp"
#include "player.h"
#include "utils/attributes.h"
#include "utils/is_of.hpp"
#include "utils/status_macros.hpp"
namespace devilution {

1
Source/loadsave.cpp

@ -38,6 +38,7 @@
#include "stores.h"
#include "utils/algorithm/container.hpp"
#include "utils/endian.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/status_macros.hpp"

1
Source/lua/modules/dev/items.cpp

@ -12,6 +12,7 @@
#include "lua/metadoc.hpp"
#include "pack.h"
#include "player.h"
#include "utils/is_of.hpp"
#include "utils/str_case.hpp"
#include "utils/str_cat.hpp"

1
Source/lua/modules/dev/quests.cpp

@ -9,6 +9,7 @@
#include "engine.h"
#include "lua/metadoc.hpp"
#include "quests.h"
#include "utils/is_of.hpp"
#include "utils/str_cat.hpp"
namespace devilution {

1
Source/missiles.cpp

@ -27,6 +27,7 @@
#include "lighting.h"
#include "monster.h"
#include "spells.h"
#include "utils/is_of.hpp"
#include "utils/str_cat.hpp"
namespace devilution {

1
Source/missiles.h

@ -16,6 +16,7 @@
#include "monster.h"
#include "player.h"
#include "spelldat.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/monster.cpp

@ -47,6 +47,7 @@
#include "utils/attributes.h"
#include "utils/cl2_to_clx.hpp"
#include "utils/file_name_generator.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/static_vector.hpp"

1
Source/msg.cpp

@ -42,6 +42,7 @@
#include "sync.h"
#include "tmsg.h"
#include "towners.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/str_cat.hpp"
#include "utils/utf8.hpp"

1
Source/multi.cpp

@ -29,6 +29,7 @@
#include "sync.h"
#include "tmsg.h"
#include "utils/endian.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/str_cat.hpp"

1
Source/objects.cpp

@ -44,6 +44,7 @@
#include "towners.h"
#include "track.h"
#include "utils/algorithm/container.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/str_cat.hpp"

1
Source/objects.h

@ -21,6 +21,7 @@
#include "objdat.h"
#include "textdat.h"
#include "utils/attributes.h"
#include "utils/is_of.hpp"
#include "utils/string_or_view.hpp"
namespace devilution {

1
Source/options.cpp

@ -30,6 +30,7 @@
#include "utils/display.h"
#include "utils/file_util.h"
#include "utils/ini.hpp"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/logged_fstream.hpp"

1
Source/pack.cpp

@ -15,6 +15,7 @@
#include "plrmsg.h"
#include "stores.h"
#include "utils/endian.hpp"
#include "utils/is_of.hpp"
#include "utils/log.hpp"
#include "utils/utf8.hpp"

1
Source/player.cpp

@ -43,6 +43,7 @@
#include "spells.h"
#include "stores.h"
#include "towners.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/log.hpp"
#include "utils/str_cat.hpp"

1
Source/player.h

@ -27,6 +27,7 @@
#include "spelldat.h"
#include "utils/attributes.h"
#include "utils/enum_traits.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/quests.cpp

@ -28,6 +28,7 @@
#include "panels/ui_panels.hpp"
#include "stores.h"
#include "towners.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/utf8.hpp"

1
Source/sync.cpp

@ -11,6 +11,7 @@
#include "lighting.h"
#include "monster.h"
#include "player.h"
#include "utils/is_of.hpp"
namespace devilution {

1
Source/towners.cpp

@ -10,6 +10,7 @@
#include "inv.h"
#include "minitext.h"
#include "stores.h"
#include "utils/is_of.hpp"
#include "utils/language.h"
#include "utils/str_case.hpp"

19
Source/utils/is_of.hpp

@ -0,0 +1,19 @@
#pragma once
#include "utils/attributes.h"
namespace devilution {
template <typename V, typename X, typename... Xs>
DVL_ALWAYS_INLINE constexpr bool IsAnyOf(const V &v, X x, Xs... xs)
{
return v == x || ((v == xs) || ...);
}
template <typename V, typename X, typename... Xs>
DVL_ALWAYS_INLINE constexpr bool IsNoneOf(const V &v, X x, Xs... xs)
{
return v != x && ((v != xs) && ...);
}
} // namespace devilution

1
test/pack_test.cpp

@ -6,6 +6,7 @@
#include "monstdat.h"
#include "pack.h"
#include "playerdat.hpp"
#include "utils/is_of.hpp"
#include "utils/paths.h"
namespace devilution {

Loading…
Cancel
Save