Annotation of parser3/src/include/pa_vstring.h, revision 1.7
1.1 paf 1: /*
1.7 ! paf 2: $Id: pa_vstring.h,v 1.6 2001/03/06 12:22:57 paf Exp $
1.1 paf 3: */
4:
5: #ifndef PA_VSTRING_H
6: #define PA_VSTRING_H
7:
1.6 paf 8: #include <stdlib.h>
9:
1.1 paf 10: #include "pa_value.h"
11:
12: class VString : public Value {
13: public: // Value
14:
15: // all: for error reporting after fail(), etc
1.7 ! paf 16: const char *type() const { return "string"; }
1.1 paf 17: // string: value
1.5 paf 18: String *get_string() { return &string; };
1.1 paf 19: // string: value
1.3 paf 20: //void put_string(String *astring) { string=astring; }
1.6 paf 21:
22: // string: value
23: double get_double() { return atof(string.cstr()); }
1.1 paf 24:
25: public: // usage
26:
1.2 paf 27: VString(Pool& apool) : Value(apool),
1.5 paf 28: string(*new(apool) String(apool)) {
1.2 paf 29: }
30:
1.5 paf 31: VString(String& astring) : Value(astring.pool()),
1.1 paf 32: string(astring) {
33: }
34:
35: private:
1.5 paf 36: String& string;
1.1 paf 37:
38: };
39:
40: #endif
E-mail: