Annotation of parser3/src/include/pa_vstring.h, revision 1.3

1.1       paf         1: /*
1.3     ! paf         2:   $Id: pa_vstring.h,v 1.2 2001/02/22 13:52:25 paf Exp $
1.1       paf         3: */
                      4: 
                      5: #ifndef PA_VSTRING_H
                      6: #define PA_VSTRING_H
                      7: 
                      8: #include "pa_value.h"
                      9: 
                     10: class VString : public Value {
                     11: public: // Value
                     12: 
                     13:        // all: for error reporting after fail(), etc
1.3     ! paf        14:        const char *type() const { return "String"; }
1.1       paf        15:        // string: value
1.2       paf        16:        String *get_string() { return string; };
1.1       paf        17:        // string: value
1.3     ! paf        18:        //void put_string(String *astring) { string=astring; }
1.1       paf        19: 
                     20: public: // usage
                     21: 
1.2       paf        22:        VString(Pool& apool) : Value(apool), 
                     23:                string(new(apool) String(apool)) {
                     24:        }
                     25: 
1.1       paf        26:        VString(String *astring) : Value(astring->pool()), 
                     27:                string(astring) {
                     28:        }
1.2       paf        29: 
                     30:        operator String() { return *string; }
1.1       paf        31: 
                     32: private:
                     33:        String *string;
                     34: 
                     35: };
                     36: 
                     37: #endif

E-mail: