### IStringGeneratorFn

  The IStringGeneratorFn template class is an abstract base class defining the protocol for storing and calling functions to generate IStrings. Objects of this class represent functions to be called when the stringFor function is called. The stringFor pure virtual function accepts an object reference of the template class type.
  Note: IStringGenerator does the following:

  - Uses these objects (calls IStringGeneratorFn::stringFor) to generate IStrings
  - Accepts an optional parameter, a reference to an IStringGeneratorFn on its constructor

  Use the subclasses IStringGeneratorMemberFn and IStringGeneratorRefMemberFn or create your own subclass to represent functions. These subclasses do two things:

  - On the constructor, save a pointer to the function the object represents
  - Implement stringFor to call the stored function

  These objects are reference-counted to manage their destruction.

  IStringGeneratorMemberFn and IStringGeneratorRefMemberFn objects represent member functions of the template class type. Review these classes for example usage.

### IStringGeneratorFn - Member Functions and Data by Group

### Constructors & Destructor

You do not create objects of this class. It is an abstract base class.

~IStringGeneratorFn

      public:
      virtual ~IStringGeneratorFn()

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

IStringGeneratorFn

      public:
      IStringGeneratorFn()

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### Miscellaneous Members

stringFor

      public:
      virtual IString stringFor(const T& object) const = 0

  Is a pure virtual function. It accepts an object reference as a parameter; it is this object for which subclass objects generate a string. IStringGeneratorFn subclasses override this function to call the appropriate member function with the appropriate number of parameters.

Supported Platforms

  Windows | OS/2 | AIX
  Yes | Yes | Yes

### IStringGeneratorFn - Inherited Member Functions and Data

#### Inherited Public Functions

  IMRefCounted

  -     void addRef()

  -     unsigned long count() const

  -     void removeRef()

#### Inherited Public Data

  - None

#### Inherited Protected Functions

  IMRefCounted

  -     virtual ~IMRefCounted()

  -     IMRefCounted()

  -     IMRefCounted(const IMRefCounted&)

  -     IMRefCounted& operator =(const IMRefCounted&)

#### Inherited Protected Data

  - None