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

1.7       paf         1: /** @file
1.8       paf         2:        Parser: @b bool class decls.
1.7       paf         3: 
1.1       paf         4:        Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com)
1.7       paf         5: 
1.2       paf         6:        Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf)
1.1       paf         7: 
1.11    ! parser      8:        $Id: pa_vbool.h,v 1.10 2001/05/11 17:45:10 parser Exp $
1.1       paf         9: */
                     10: 
                     11: #ifndef PA_VBOOL_H
                     12: #define PA_VBOOL_H
                     13: 
1.3       paf        14: #include "pa_common.h"
1.1       paf        15: #include "pa_value.h"
                     16: 
                     17: #define MAX_BOOL_AS_STRING 20
                     18: 
1.4       paf        19: /// VBool
1.1       paf        20: class VBool : public Value {
                     21: public: // Value
                     22: 
                     23:        const char *type() const { return "bool"; }
1.11    ! parser     24:        /// VBool: clone
        !            25:        Value *as_expr_result(bool return_string_as_is=false) { return NEW VBool(pool(), fbool); }
1.7       paf        26:        /// VBool: fbool
1.6       paf        27:        bool as_bool() { return fbool; }
1.7       paf        28:        /// VBool: fbool
1.6       paf        29:        double as_double() { return fbool; }
1.10      parser     30:        /// VBool: fbool
                     31:        int as_int() { return fbool; }
1.1       paf        32: 
                     33: public: // usage
                     34: 
                     35:        VBool(Pool& apool, bool abool) : Value(apool), 
                     36:                fbool(abool) {
                     37:        }
                     38: 
                     39: private:
                     40: 
                     41:        bool fbool;
                     42: 
                     43: };
                     44: 
                     45: #endif

E-mail: