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

1.7       paf         1: /** @file
1.8       paf         2:        Parser: @b bool class decls.
1.7       paf         3: 
1.16      paf         4:        Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com)
1.17      paf         5:        Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.1       paf         6: 
1.18    ! paf         7:        $Id: pa_vbool.h,v 1.17 2002/02/08 08:30:18 paf Exp $
1.1       paf         8: */
                      9: 
                     10: #ifndef PA_VBOOL_H
                     11: #define PA_VBOOL_H
                     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.14      parser     26:        Value *as_expr_result(bool) { return NEW VBool(pool(), 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: 
                     36:        VBool(Pool& apool, bool abool) : Value(apool), 
                     37:                fbool(abool) {
                     38:        }
                     39: 
                     40: private:
                     41: 
                     42:        bool fbool;
                     43: 
                     44: };
                     45: 
                     46: #endif

E-mail: