/* */ #ifndef _D_P_STRING_SELECT_H_ #define _D_P_STRING_SELECT_H_ #include "PStringDatum.h" #include "PStringSegment.h" class PStringSelect : public PStringDatum { private: Strings _values; PStringDatumHandle _next; public: PStringSelect(const Strings& values, const PStringDatumHandle& next = 0): _values(values), _next(next) {} virtual ~PStringSelect() {} virtual void accept(const PStringVisitorHandle& visitor) { for(Strings::iterator itr = _values.begin(); itr != _values.end(); ++itr) { PStringSegment(*itr, _next).accept(visitor); } } const Strings& getValues() const { return _values; } PStringDatumHandle getNext() const { return _next; } }; typedef SharedHandle PStringSelectHandle; #endif // _D_P_STRING_SELECT_H_