|
|
| version 1.31, 2001/03/18 11:37:51 | version 1.36, 2001/05/07 14:00:49 |
|---|---|
| Line 1 | Line 1 |
| /* | /** @file |
| Parser | Parser: compiler part of request class. |
| Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) | Copyright (c) 2001 ArtLebedev Group (http://www.artlebedev.com) |
| Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf) | Author: Alexander Petrosyan <paf@design.ru> (http://design.ru/paf) |
| $Id$ | $Id$ |
| */ | */ |
| #include "pa_opcode.h" | |
| #include "pa_request.h" | #include "pa_request.h" |
| #include "pa_string.h" | #include "pa_string.h" |
| #include "pa_array.h" | #include "pa_array.h" |
| #include "code.h" | |
| #include "compile_tools.h" | #include "compile_tools.h" |
| #include "pa_exception.h" | #include "pa_exception.h" |
| Line 32 VStateless_class& Request::real_compile( | Line 34 VStateless_class& Request::real_compile( |
| // yes. create it | // yes. create it |
| cclass=NEW VClass(pool()); | cclass=NEW VClass(pool()); |
| // defaulting base. may change with @BASE | // defaulting base. may change with @BASE |
| if(!base_class) | if(base_class) |
| base_class=&ROOT; | cclass->set_base(*base_class); |
| cclass->set_base(*base_class); | |
| classes().put(*name, cclass); | classes().put(*name, cclass); |
| cclass->set_name(*name); | cclass->set_name(*name); |
| } else | } else |
| cclass=&ROOT; // until changed with @CLASS would consider operators loading | cclass=&OP; // until changed with @CLASS would consider operators loading |
| pc.cclass=cclass; | pc.cclass=cclass; |
| pc.source=source; | pc.source=source; |