Add function for creating derived array types.

This commit is contained in:
Rene Gollent
2013-04-12 23:28:49 -04:00
parent b607f92d4e
commit 8db1d0fc06
2 changed files with 21 additions and 1 deletions
+9
View File
@@ -104,6 +104,15 @@ Type::CreateDerivedAddressType(address_type_kind kind,
}
status_t
Type::CreateDerivedArrayType(uint64 elementCount,
bool extendExisting, ArrayType*& _resultType)
{
_resultType = NULL;
return B_ERROR;
}
// #pragma mark - PrimitiveType
+12 -1
View File
@@ -60,6 +60,7 @@ enum {
class AddressType;
class ArrayIndexPath;
class ArrayType;
class BString;
class Type;
class ValueLocation;
@@ -135,11 +136,21 @@ public:
// if requested)
// TODO: also need the ability to derive array types
virtual status_t CreateDerivedAddressType(
address_type_kind kind,
AddressType*& _resultType);
virtual status_t CreateDerivedArrayType(
uint64 elementCount,
bool extendExisting,
// if the current object is already
// an array type, attach an extra
// dimension to it rather than
// creating a new encapsulating
// type object
ArrayType*& _resultType);
virtual status_t ResolveObjectDataLocation(
const ValueLocation& objectLocation,
ValueLocation*& _location) = 0;