1*fce4895dSRene Gollent /* 2*fce4895dSRene Gollent * Copyright 2009, Ingo Weinhold, ingo_weinhold@gmx.de. 3*fce4895dSRene Gollent * Distributed under the terms of the MIT License. 4*fce4895dSRene Gollent */ 5*fce4895dSRene Gollent #ifndef POINTER_TO_MEMBER_VALUE_NODE_H 6*fce4895dSRene Gollent #define POINTER_TO_MEMBER_VALUE_NODE_H 7*fce4895dSRene Gollent 8*fce4895dSRene Gollent 9*fce4895dSRene Gollent #include "ValueNode.h" 10*fce4895dSRene Gollent 11*fce4895dSRene Gollent 12*fce4895dSRene Gollent class PointerToMemberType; 13*fce4895dSRene Gollent 14*fce4895dSRene Gollent 15*fce4895dSRene Gollent class PointerToMemberValueNode : public ChildlessValueNode { 16*fce4895dSRene Gollent public: 17*fce4895dSRene Gollent PointerToMemberValueNode( 18*fce4895dSRene Gollent ValueNodeChild* nodeChild, 19*fce4895dSRene Gollent PointerToMemberType* type); 20*fce4895dSRene Gollent virtual ~PointerToMemberValueNode(); 21*fce4895dSRene Gollent 22*fce4895dSRene Gollent virtual Type* GetType() const; 23*fce4895dSRene Gollent 24*fce4895dSRene Gollent virtual status_t ResolvedLocationAndValue( 25*fce4895dSRene Gollent ValueLoader* valueLoader, 26*fce4895dSRene Gollent ValueLocation*& _location, 27*fce4895dSRene Gollent Value*& _value); 28*fce4895dSRene Gollent 29*fce4895dSRene Gollent private: 30*fce4895dSRene Gollent PointerToMemberType* fType; 31*fce4895dSRene Gollent }; 32*fce4895dSRene Gollent 33*fce4895dSRene Gollent 34*fce4895dSRene Gollent #endif // POINTER_TO_MEMBER_VALUE_NODE_H 35