X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/23f1d41b58009a05cdea03d3ea02739a9a9dfeea..627ef2adbb12c066764d6bd618147f6adb2b9cac:/include/stg/resetable.h
diff --git a/include/stg/resetable.h b/include/stg/resetable.h
index cb35d808..c78d0247 100644
--- a/include/stg/resetable.h
+++ b/include/stg/resetable.h
@@ -1,9 +1,3 @@
- /*
- $Revision: 1.9 $
- $Date: 2010/03/11 14:42:04 $
- $Author: faust $
- */
-
/*
* Copyright (c) 2001 by Peter Simons <simons@cryp.to>.
* All rights reserved.
@@ -15,8 +9,6 @@
// This is a wrapper class about variables where you want to keep
// track of whether it has been assigened yet or not.
-#include <iostream>
-
template <typename T>
class RESETABLE
{
@@ -24,32 +16,31 @@ public:
typedef T value_type;
RESETABLE() : value(), is_set(false) {}
+ RESETABLE(const T & v) : value(v), is_set(true) {}
- RESETABLE(const RESETABLE<value_type> & rvalue)
+ RESETABLE(const RESETABLE<T> & rvalue)
: value(rvalue.value),
is_set(rvalue.is_set)
{}
- RESETABLE(const value_type& val) : value(val), is_set(true) {}
-
- RESETABLE<value_type> & operator=(const RESETABLE<value_type> & rvalue)
+ RESETABLE<T> & operator=(const RESETABLE<T> & rhs)
{
- value = rvalue.value;
- is_set = rvalue.is_set;
+ value = rhs.value;
+ is_set = rhs.is_set;
return *this;
}
- RESETABLE<value_type> & operator=(const value_type& rhs)
+ RESETABLE<T> & operator=(const T & rhs)
{
value = rhs;
is_set = true;
return *this;
}
- const value_type & const_data() const throw() { return value; }
- value_type & data() throw() { return value; }
- operator const value_type&() const throw() { return value; }
- bool res_empty() const throw() { return !is_set; }
+ const T & const_data() const throw() { return value; }
+ T & data() throw() { return value; }
+ const T & data() const throw() { return value; }
+ bool empty() const throw() { return !is_set; }
void reset() throw() { is_set = false; }
private:
@@ -57,10 +48,4 @@ private:
bool is_set;
};
-template <typename T>
-std::ostream & operator<<(std::ostream & o, const RESETABLE<T> & v)
-{
- return o << v.const_data();
-}
-
#endif // RESETABLE_VARIABLE_H