--- parser3/src/main/execute.C 2009/08/14 10:39:57 1.357 +++ parser3/src/main/execute.C 2010/04/19 19:39:54 1.360 @@ -5,7 +5,7 @@ Author: Alexandr Petrosian (http://paf.design.ru) */ -static const char * const IDENT_EXECUTE_C="$Date: 2009/08/14 10:39:57 $"; +static const char * const IDENT_EXECUTE_C="$Date: 2010/04/19 19:39:54 $"; #include "pa_opcode.h" #include "pa_array.h" @@ -272,11 +272,11 @@ void Request::execute(ArrayOperation& op debug_origin=i.next().origin; Value& value=*i.next().value; - const String& name=*value.get_string(); + const String& name=*value.get_string(); debug_name=&name; DEBUG_PRINT_STRING(name) - Value* class_value=classes().get(name); + Value* class_value=get_class(name); if(!class_value) throw Exception(PARSER_RUNTIME, &name, @@ -291,8 +291,8 @@ void Request::execute(ArrayOperation& op // maybe they do ^class:method[] call, remember the fact wcontext->set_somebody_entered_some_class(); - const String& name=stack.pop().string(); - Value* value=classes().get(name); + const String& name=stack.pop().string(); debug_name=&name; + Value* value=get_class(name); if(!value) throw Exception(PARSER_RUNTIME, &name, @@ -543,7 +543,7 @@ void Request::execute(ArrayOperation& op DEBUG_PRINT_STRING(var_name) - const String* field=get_element(*rcontext, var_name).get_string(); + const String* field=&get_element(*rcontext, var_name).as_string(); Value& value=get_element(object, *field); @@ -834,11 +834,11 @@ void Request::execute(ArrayOperation& op { debug_origin=i.next().origin; Value& vclass_name=*i.next().value; - const String& class_name=*vclass_name.get_string(); + const String& class_name=*vclass_name.get_string(); debug_name=&class_name; DEBUG_PRINT_STRING(class_name) - Value* class_value=classes().get(class_name); + Value* class_value=get_class(class_name); if(!class_value) throw Exception(PARSER_RUNTIME, &class_name,