|
|
| version 1.160.2.37.2.14, 2003/03/27 10:04:06 | version 1.160.2.37.2.15, 2003/04/02 09:32:11 |
|---|---|
| Line 61 class Request: public PA_Object { | Line 61 class Request: public PA_Object { |
| ///@} | ///@} |
| union StackItem { | union StackItem { |
| const String* string() const { return value->get_string(); } | private: |
| Value* value; | Value* fvalue; |
| ArrayOperation* ops; | ArrayOperation* fops; |
| VMethodFrame* method_frame; | VMethodFrame* fmethod_frame; |
| public: | |
| Value& value() const { return *fvalue; } | |
| const String& string() const { | |
| const String* result=fvalue->get_string(); | |
| assert(result); | |
| return *result; | |
| } | |
| ArrayOperation& ops() const { return *fops; } | |
| VMethodFrame& method_frame() const { return *fmethod_frame; } | |
| /// needed to fill unused Array entries | /// needed to fill unused Array entries |
| StackItem() {} | StackItem() {} |
| StackItem(Value* avalue): value(avalue) {} | StackItem(Value& avalue): fvalue(&avalue) {} |
| StackItem(ArrayOperation* aops): ops(aops) {} | StackItem(ArrayOperation& aops): fops(&aops) {} |
| StackItem(VMethodFrame* amethod_frame): method_frame(amethod_frame) {} | StackItem(VMethodFrame& amethod_frame): fmethod_frame(&amethod_frame) {} |
| }; | }; |
| /// execution stack | /// execution stack |
| Line 310 private: // execute.C | Line 319 private: // execute.C |
| /// for @main[] | /// for @main[] |
| const String* execute_virtual_method(Value& aself, const String& method_name); | const String* execute_virtual_method(Value& aself, const String& method_name); |
| Value* get_element(bool can_call_operator); | Value& get_element(bool can_call_operator); |
| private: // defaults | private: // defaults |