summaryrefslogtreecommitdiff
path: root/src/PStringNumLoop.h
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-01-25 14:19:27 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2009-01-25 14:19:27 +0000
commit873231fe1e8203204f4dbf22e1e2c8283ebc7a12 (patch)
treeb0f4acc150e133c137824dee4bf456ffc54cd5d8 /src/PStringNumLoop.h
parent5def96906fd17d9b48e9fda192617c6ad1b95683 (diff)
2009-01-25 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten PStringVisitor and its implementation. * src/PStringBuildVisitor.cc * src/PStringBuildVisitor.h * src/PStringDatum.h * src/PStringNumLoop.h * src/PStringSegment.cc * src/PStringSegment.h * src/PStringSelect.h * src/PStringVisitor.h * src/download_helper.cc * test/PStringBuildVisitorTest.cc * test/ParameterizedStringParserTest.cc
Diffstat (limited to 'src/PStringNumLoop.h')
-rw-r--r--src/PStringNumLoop.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/PStringNumLoop.h b/src/PStringNumLoop.h
index 56148fcf..6e0fdbed 100644
--- a/src/PStringNumLoop.h
+++ b/src/PStringNumLoop.h
@@ -38,6 +38,7 @@
#include "PStringDatum.h"
#include "PStringSegment.h"
#include "NumberDecorator.h"
+#include "PStringVisitor.h"
namespace aria2 {
@@ -76,11 +77,14 @@ public:
virtual ~PStringNumLoop() {}
- virtual void accept(PStringVisitor* visitor)
+ virtual void accept(PStringVisitor& visitor)
{
- for(unsigned int i = _startValue; i <= _endValue; i += _step) {
- PStringSegment(_numberDecorator->decorate(i), _next).accept(visitor);
- }
+ visitor.visit(*this);
+ }
+
+ const NumberDecoratorHandle& getNumberDecorator() const
+ {
+ return _numberDecorator;
}
PStringDatumHandle getNext() const