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

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.17    ! paf         7:        $Id: pa_vbool.h,v 1.16 2002/02/08 07:27:51 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.11      parser     23:        /// VBool: clone
1.14      parser     24:        Value *as_expr_result(bool) { return NEW VBool(pool(), fbool); }
1.7       paf        25:        /// VBool: fbool
1.12      parser     26:        bool as_bool() const { return fbool; }
1.7       paf        27:        /// VBool: fbool
1.12      parser     28:        double as_double() const { return fbool; }
1.10      parser     29:        /// VBool: fbool
1.12      parser     30:        int as_int() const { return fbool; }
1.1       paf        31: 
                     32: public: // usage
                     33: 
                     34:        VBool(Pool& apool, bool abool) : Value(apool), 
                     35:                fbool(abool) {
                     36:        }
                     37: 
                     38: private:
                     39: 
                     40:        bool fbool;
                     41: 
                     42: };
                     43: 
                     44: #endif

E-mail: