//
// Copyright (C) 1991 Texas Instruments Incorporated.
//
// Permission is granted to any individual or institution to use, copy, modify,
// and distribute this software, provided that this complete copyright and
// permission notice is maintained, intact, in all copies and supporting
// documentation.
//
// Texas Instruments Incorporated provides this software "as is" without
// express or implied warranty.
//

#include <cool/Vector.h>

DECLARE Vector<int>
IMPLEMENT Vector<int>

main () {

  Generic* g = new Vector<int>;
  TYPE_CASE (g) {
    case Vector:				// If the object is a vector
      cout << "\nA vector";			// Do something for Vector
       break;
    case List:					// If the object is a list
      cout << "\nA list";			// Do something for List
      break;
    case Foo:					// If the object is Foo or Boo
    case Boo:					// Do something else
      cout << "\nA Foo";
      cout << " or a Boo";
     default:					// Else do the rest
      cout << "None of the Above";
    }
  cout << "\nObject is a " << g->type_of();	// Output type
  cout << "\n";
  return (0);
}
