Annotation of parser3/src/types/pa_vbool.h, revision 1.21.2.1

1.7       paf         1: /** @file
1.8       paf         2:        Parser: @b bool class decls.
1.7       paf         3: 
1.21      paf         4:        Copyright (c) 2001, 2003 ArtLebedev Group (http://www.artlebedev.com)
1.17      paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       paf         6: */
                      7: 
                      8: #ifndef PA_VBOOL_H
                      9: #define PA_VBOOL_H
1.19      paf        10: 
1.21.2.1! paf        11: static const char* IDENT_VBOOL_H="$Date: 2003/01/21 15:51:18 $";
1.1       paf        12: 
1.3       paf        13: #include "pa_common.h"
1.1       paf        14: #include "pa_value.h"
                     15: 
                     16: #define MAX_BOOL_AS_STRING 20
                     17: 
1.4       paf        18: /// VBool
1.1       paf        19: class VBool : public Value {
                     20: public: // Value
                     21: 
                     22:        const char *type() const { return "bool"; }
1.18      paf        23:        /// VBool: 0
                     24:        VStateless_class *get_class() { return 0; }
1.11      parser     25:        /// VBool: clone
1.21.2.1! paf        26:        ValuePtr as_expr_result(bool) { return ValuePtr(new VBool(fbool)); }
1.7       paf        27:        /// VBool: fbool
1.12      parser     28:        bool as_bool() const { return fbool; }
1.7       paf        29:        /// VBool: fbool
1.12      parser     30:        double as_double() const { return fbool; }
1.10      parser     31:        /// VBool: fbool
1.12      parser     32:        int as_int() const { return fbool; }
1.1       paf        33: 
                     34: public: // usage
                     35: 
1.21.2.1! paf        36:        VBool(bool abool): fbool(abool) {}
1.1       paf        37: 
                     38: private:
                     39: 
                     40:        bool fbool;
                     41: 
                     42: };
                     43: 
                     44: #endif

E-mail: