summaryrefslogtreecommitdiff
path: root/src/array_fun.h
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-02-12 13:44:34 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-02-12 13:44:34 +0000
commitb8b6b5c56890122c182c035406457ae7a5791f6a (patch)
treed14084200913324948bdf5485c176e71d6717abd /src/array_fun.h
parenta73ef15904a8428d7e979aef419111f30fc12800 (diff)
2009-02-12 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Added array_wrapper template. * src/array_fun.h * test/array_funTest.cc
Diffstat (limited to 'src/array_fun.h')
-rw-r--r--src/array_fun.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/array_fun.h b/src/array_fun.h
index 157456fb..6aac4d6c 100644
--- a/src/array_fun.h
+++ b/src/array_fun.h
@@ -262,6 +262,39 @@ public:
}
};
+template<typename T, size_t N>
+class array_wrapper {
+private:
+ T _array[N];
+public:
+ array_wrapper() {}
+
+ T& operator[](size_t index)
+ {
+ return _array[index];
+ }
+
+ const T& operator[](size_t index) const
+ {
+ return _array[index];
+ }
+
+ operator T*()
+ {
+ return _array;
+ }
+
+ operator const T*() const
+ {
+ return _array;
+ }
+
+ size_t size() const
+ {
+ return N;
+ }
+};
+
} // namespace aria2
#endif // _D_ARRAY_FUN_H_