Class StringPtr


			
class StringPtr : public ObjectPtr
Programmer: Ryan Davis

Description:

I provide an extension of ObjectPtr's services to include named accessors and utilities for Strings.

Public Methods:

static ObjectPtr create (const String & aValue);
I am create. I act as a "factory method" for creating new string objects.

static StringPtr convert (const ObjectPtr & obj);
I convert obj to a valid StringPtr or gNil if obj wasn't an string.

StringPtr (const ObjectPtr & pointee);
This is the constructor. It has a default value of gNil, so it can be used as the generic constructor as well. This constructor creates a Object pointer that points to the address passed in through .

String value ();
I am the String get accessor.

void value (const String & aValue);
I am the String set accessor. In reality, because of Smalltalk's definition, I actually create a new String object to point to... i.e. I call create & set myself to point to the result of create..

Boolean operator== (const ObjectPtr & aString);
I return true if we point to the same object. I am necessary because the op== below hides my equivalent in the superclass.

Boolean operator== (const String & aString);
I return true if the string data held by my object is equal to aString. I am the method used to verify the validity of the other methods in StringPtr.

Protected Methods:

static ClassPtr & klassPtr ();


Protected Members: