summaryrefslogtreecommitdiff
path: root/src/base/range.hh
diff options
context:
space:
mode:
authorAndreas Hansson <andreas.hansson@arm.com>2012-09-19 06:15:43 -0400
committerAndreas Hansson <andreas.hansson@arm.com>2012-09-19 06:15:43 -0400
commitc34df76272c17401955f6daf30ca9c7e7671ae56 (patch)
treed23df59525ad0fcf3812d2d5e4d583880877d12a /src/base/range.hh
parent12c291f9d7a1aa3776133bd911c1aa3263010835 (diff)
downloadgem5-c34df76272c17401955f6daf30ca9c7e7671ae56.tar.xz
AddrRange: Simplify Range by removing stream input/output
This patch simplifies the Range class in preparation for the introduction of a more specific AddrRange class that allows interleaving/striping. The only place where the parsing was used was in the unit test.
Diffstat (limited to 'src/base/range.hh')
-rw-r--r--src/base/range.hh36
1 files changed, 0 insertions, 36 deletions
diff --git a/src/base/range.hh b/src/base/range.hh
index ac64a37f9..3b1a9277b 100644
--- a/src/base/range.hh
+++ b/src/base/range.hh
@@ -32,21 +32,6 @@
#ifndef __BASE_RANGE_HH__
#define __BASE_RANGE_HH__
-#include <cassert>
-#include <iostream>
-#include <string>
-
-/**
- * @param s range string
- * EndExclusive Ranges are in the following format:
- * @verbatim
- * <range> := {<start_val>}:{<end>}
- * <start> := <end_val> | +<delta>
- * @endverbatim
- */
-template <class T>
-bool __parse_range(const std::string &s, T &start, T &end);
-
template <class T>
struct Range
{
@@ -65,12 +50,6 @@ struct Range
: start(r.start), end(r.end)
{}
- Range(const std::string &s)
- {
- if (!__parse_range(s, start, end))
- invalidate();
- }
-
template <class U>
const Range<T> &operator=(const Range<U> &r)
{
@@ -87,27 +66,12 @@ struct Range
return *this;
}
- const Range &operator=(const std::string &s)
- {
- if (!__parse_range(s, start, end))
- invalidate();
- return *this;
- }
-
void invalidate() { start = 1; end = 0; }
T size() const { return end - start + 1; }
bool valid() const { return start < end; }
};
template <class T>
-inline std::ostream &
-operator<<(std::ostream &o, const Range<T> &r)
-{
- o << '[' << r.start << "," << r.end << ']';
- return o;
-}
-
-template <class T>
inline Range<T>
RangeEx(T start, T end)
{ return std::make_pair(start, end - 1); }