Annotation of parser3/src/classes/root.C, revision 1.1

1.1     ! paf         1: /*
        !             2: $Id: core.C,v 1.42 2001/03/06 10:49:24 paf Exp $
        !             3: */
        !             4: 
        !             5: #include "pa_request.h"
        !             6: 
        !             7: static void _if(Request& r, Array& params) {
        !             8:        bool condition=r.autocalc(*static_cast<Value *>(params.get(0))).get_bool();
        !             9:        Value& value=r.autocalc(*static_cast<Value *>(params.get(condition?1:2)));
        !            10:        r.write(value);
        !            11: }
        !            12: 
        !            13: void construct_root_class(Request& request) {
        !            14:        Pool& pool=request.pool();
        !            15:        String& IF_NAME=*new(pool) String(pool);
        !            16:        IF_NAME.APPEND_CONST("if");
        !            17: 
        !            18:        Method& IF_METHOD=*new(pool) Method(pool,
        !            19:                IF_NAME,
        !            20:                3/*numbered_params_count*/,
        !            21:                0/*params_names*/, 0/*locals_names*/,
        !            22:                0/*parser_code*/, _if
        !            23:        );
        !            24: 
        !            25:        request.root_class.add_method(IF_NAME, IF_METHOD);
        !            26: }

E-mail: