diff options
Diffstat (limited to 'src/generic/fwd.hpp')
-rw-r--r-- | src/generic/fwd.hpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/generic/fwd.hpp b/src/generic/fwd.hpp index 3215903..31fb13a 100644 --- a/src/generic/fwd.hpp +++ b/src/generic/fwd.hpp @@ -20,10 +20,42 @@ #include "../sanity.hpp" +#include "../strings/fwd.hpp" // rank 1 +#include "../compat/fwd.hpp" // rank 2 +// generic/fwd.hpp is rank 3 + namespace tmwa { // meh, add more when I feel like it template<class T> class dumb_ptr; + +template<class K, class V> +class Map; +template<class K, class V> +class DMap; +template<class K, class V> +class UPMap; + +class InternPool; + +// arrays are complicated +template<class I, I be, I en> +struct ExclusiveIndexing; +template<size_t n> +using SimpleIndexing = ExclusiveIndexing<size_t, 0, n>; +template<class I, I lo, I hi> +struct InclusiveIndexing; +template<class E, E n=E::COUNT> +struct EnumIndexing; +template<class I, size_t limit> +struct InventoryIndexing; +template<class T, class I> +struct GenericArray; +template<class T, size_t n> +using Array = GenericArray<T, SimpleIndexing<n>>; + +template<class T, class E, E max> +using earray = GenericArray<T, EnumIndexing<E, max>>; } // namespace tmwa |