diff options
| author | Mike Buland <eichlan@xagasoft.com> | 2009-09-25 22:14:26 +0000 |
|---|---|---|
| committer | Mike Buland <eichlan@xagasoft.com> | 2009-09-25 22:14:26 +0000 |
| commit | e99509abde688315ac7a82d764b352e2e3312e61 (patch) | |
| tree | 9dc82509b89d96f138eefe07674319fc987afb6a /src/tests | |
| parent | 1b7caf3368675eb6825e0dca77782a141dfa0392 (diff) | |
| download | libbu++-e99509abde688315ac7a82d764b352e2e3312e61.tar.gz libbu++-e99509abde688315ac7a82d764b352e2e3312e61.tar.bz2 libbu++-e99509abde688315ac7a82d764b352e2e3312e61.tar.xz libbu++-e99509abde688315ac7a82d764b352e2e3312e61.zip | |
New Bu::Variant class. Store anything in it, get it out again, find out it's
type. It's really just that easy.
More info, docs, and tweaks to come.
Diffstat (limited to '')
| -rw-r--r-- | src/tests/variant.cpp | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/tests/variant.cpp b/src/tests/variant.cpp new file mode 100644 index 0000000..a0ac1f2 --- /dev/null +++ b/src/tests/variant.cpp | |||
| @@ -0,0 +1,45 @@ | |||
| 1 | #include <bu/sio.h> | ||
| 2 | #include <bu/variant.h> | ||
| 3 | #include <bu/list.h> | ||
| 4 | |||
| 5 | using namespace Bu; | ||
| 6 | |||
| 7 | Variant getThing( int i ) | ||
| 8 | { | ||
| 9 | Variant v; | ||
| 10 | switch( i ) | ||
| 11 | { | ||
| 12 | case 0: | ||
| 13 | v = 45; | ||
| 14 | break; | ||
| 15 | |||
| 16 | case 1: | ||
| 17 | v = true; | ||
| 18 | break; | ||
| 19 | |||
| 20 | case 2: | ||
| 21 | v = List<int>(5).append(10).append(15); | ||
| 22 | break; | ||
| 23 | } | ||
| 24 | |||
| 25 | return v; | ||
| 26 | } | ||
| 27 | |||
| 28 | int main() | ||
| 29 | { | ||
| 30 | Variant a; | ||
| 31 | Variant b; | ||
| 32 | Variant c; | ||
| 33 | |||
| 34 | a = getThing( 0 ); | ||
| 35 | b = getThing( 1 ); | ||
| 36 | c = getThing( 2 ); | ||
| 37 | |||
| 38 | sio << "a = " << a << " or " << (int)a << sio.nl | ||
| 39 | << "b = " << b << " or " << b.toString() << sio.nl | ||
| 40 | << "c = " << c << " or " << c.toString() << sio.nl | ||
| 41 | << sio.nl; | ||
| 42 | |||
| 43 | return 0; | ||
| 44 | } | ||
| 45 | |||
