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: