summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/store.h
diff options
context:
space:
mode:
authorSamuel Bronson <naesten@gmail.com>2013-11-02 23:36:09 -0400
committerSamuel Bronson <naesten@gmail.com>2013-11-02 23:36:09 -0400
commit3a59dc6fc925d7651828dd4bb0492736dd20e3c5 (patch)
tree11c05e72c444c928a6371b9b81d7c05652e3a4e7 /crawl-ref/source/store.h
parent330552f8ea10e1ac6a8383d4a135f2040f94629d (diff)
downloadcrawl-ref-3a59dc6fc925d7651828dd4bb0492736dd20e3c5.tar.gz
crawl-ref-3a59dc6fc925d7651828dd4bb0492736dd20e3c5.zip
Pack some store fields & fiddle with comments
Diffstat (limited to 'crawl-ref/source/store.h')
-rw-r--r--crawl-ref/source/store.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/crawl-ref/source/store.h b/crawl-ref/source/store.h
index 9f63d58428..872fdd3831 100644
--- a/crawl-ref/source/store.h
+++ b/crawl-ref/source/store.h
@@ -64,8 +64,6 @@ enum store_flag_type
};
-// Can't just cast everything into a void pointer, since a float might
-// not fit into a pointer on all systems.
typedef union StoreUnion StoreUnion;
union StoreUnion
{
@@ -108,8 +106,10 @@ public:
CrawlStoreValue &operator = (const CrawlStoreValue &other);
protected:
- store_val_type type;
+ // These first two fields need to match those in CrawlVector
+ store_val_type type:8;
store_flags flags;
+
StoreUnion val;
public:
@@ -349,8 +349,10 @@ public:
typedef vector_type::const_iterator const_iterator;
protected:
- store_val_type type;
+ // These first two fields need to match those in CrawlStoreValue
+ store_val_type type:8;
store_flags default_flags;
+
vec_size max_size;
vector_type vec;