Annotation of parser3/src/include/pa_vhash.h, revision 1.10
1.1 paf 1: /*
1.10 ! paf 2: $Id: pa_vhash.h,v 1.9 2001/03/08 17:14:51 paf Exp $
1.1 paf 3: */
4:
5: #ifndef PA_VHASH_H
6: #define PA_VHASH_H
7:
8: #include "pa_value.h"
1.2 paf 9: #include "pa_hash.h"
1.1 paf 10:
11: class VHash : public Value {
12: public: // value
13:
14: // all: for error reporting after fail(), etc
1.7 paf 15: const char *type() const { return "fvalue"; }
1.1 paf 16:
1.7 paf 17: // fvalue: (key)=value
1.6 paf 18: Value *get_element(const String& name) {
1.7 paf 19: return static_cast<Value *>(fvalue.get(name));
1.1 paf 20: }
21:
1.7 paf 22: // fvalue: (key)=value
1.1 paf 23: void put_element(const String& name, Value *value) {
1.7 paf 24: fvalue.put(name, value);
1.1 paf 25: }
1.4 paf 26:
1.7 paf 27: // fvalue: size!=0
28: bool get_bool() { return fvalue.size()!=0; }
1.1 paf 29:
30: public: // usage
31:
1.7 paf 32: VHash(Pool& apool) : Value(apool),
1.10 ! paf 33: fvalue(apool) {}
1.1 paf 34:
35: private:
1.10 ! paf 36: Hash fvalue;
1.1 paf 37: };
38:
39: #endif
E-mail: