diff options
author | Mike Buland <eichlan@xagasoft.com> | 2010-10-16 03:02:11 +0000 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2010-10-16 03:02:11 +0000 |
commit | 9031e2af7dd4e65ec70890ee78a7cf600d1b2cc5 (patch) | |
tree | 17bc9d96b13d16d79385016c087321fc1267743f /src/variant.h | |
parent | 93c028162318a00b9bd03fc4a48383f830cc529d (diff) | |
download | libbu++-9031e2af7dd4e65ec70890ee78a7cf600d1b2cc5.tar.gz libbu++-9031e2af7dd4e65ec70890ee78a7cf600d1b2cc5.tar.bz2 libbu++-9031e2af7dd4e65ec70890ee78a7cf600d1b2cc5.tar.xz libbu++-9031e2af7dd4e65ec70890ee78a7cf600d1b2cc5.zip |
Many, many changes. Documentation changes, renamed the socket class to
TcpSocket, fixed many other things, and finally removed ParamProc. Anything
that needs it will now have to switch to OptParser.
Diffstat (limited to 'src/variant.h')
-rw-r--r-- | src/variant.h | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/variant.h b/src/variant.h index 5482ee3..9819f2c 100644 --- a/src/variant.h +++ b/src/variant.h | |||
@@ -17,6 +17,7 @@ namespace Bu | |||
17 | { | 17 | { |
18 | class Formatter; | 18 | class Formatter; |
19 | class Variant; | 19 | class Variant; |
20 | /** @cond DEVEL */ | ||
20 | template<class t> class VariantType; | 21 | template<class t> class VariantType; |
21 | 22 | ||
22 | class VariantTypeRoot | 23 | class VariantTypeRoot |
@@ -92,7 +93,22 @@ namespace Bu | |||
92 | private: | 93 | private: |
93 | t data; | 94 | t data; |
94 | }; | 95 | }; |
95 | 96 | /** @endcond */ | |
97 | |||
98 | /** | ||
99 | * Store any data type and access it safely. Variant gives you a way to | ||
100 | * pass arbitrary data types around without having to worry about what | ||
101 | * type a variable is. It allows code to be easily extended and to manage | ||
102 | * data without having to know what type it is ahead of time. | ||
103 | * | ||
104 | * Because of the generic method that this class was implemented it may seem | ||
105 | * to have some drawbacks compared to other Variant classes you may have | ||
106 | * seen, however it is fairly easy to get it to do just about anything you | ||
107 | * may need. It is also very low overhead. On most compilers the class | ||
108 | * itself has only 3 words of overhead + the size of the variable you store | ||
109 | * in it. And, since many parts of it are templatized they can often be | ||
110 | * optimized quite a bit. | ||
111 | */ | ||
96 | class Variant | 112 | class Variant |
97 | { | 113 | { |
98 | public: | 114 | public: |