Oracle Coherence for C++ API
Release 3.6.1.0

E18813-01

class_spec Class Template Reference

#include <coherence/lang/class_spec.hpp>

Inherited by abstract_spec, cloneable_spec, and throwable_spec.

List of all members.


Detailed Description

template<class T, class E = extends<Object, void>, class I = implements<>>
class coherence::lang::class_spec< T, E, I >

Helper for defining a non-cloneable concrete managed class.

Managed classes are implementations of coherence::lang::Object, and include a set of well known features, which are auto-generated by this helper class:

The template takes three parameters:

A normal class definition would be:

 class Foo
   : public class_spec<Foo,
       extends<Bar>,
       implements<SomeInterface, SomeOtherInterface> >
   {
   // add support for auto-generated static create methods
   friend class factory<Foo>;

   protected:
       // Constructors are defined as protected, and access via
       // auto-generated create methods, with matching signatures
       Foo()
           : super() // calls Bar()
           {
           }

   public:
       // normal class definition....
   };
See also:
extends

implements

Author:
mf 2008.07.14

Public Types

typedef class_spec  this_spec
  Specification definition.
typedef factory< T >  factory_spec
  Factory for this class.
typedef class_spec  super
  Definition T's actual parent class.
typedef E::inherited  super_spec
  Definition of the spec's parent class.
typedef E::inherited  inherited
  Definition T's logical parent class.
typedef TypedHandle< T >  Handle
  Standard Handle definition.
typedef TypedHandle
< const T > 
View
  Standard View definition.
typedef TypedHolder< T >  Holder
  Standard Holder definition.

Static Public Member Functions

static Handle  create ()
  Generate a set of static "create" methods matching the signatures of class T's constructors.

Protected Member Functions

  class_spec ()
  Generate a set of proxy constructors matching the signatures of the parent class's constructors.

Constructor & Destructor Documentation

class_spec (  )  [inline, protected]

Generate a set of proxy constructors matching the signatures of the parent class's constructors.

NOTE: Compilation errors referencing this line likely indicate that class being defined by this spec makes calls a "super" constructor supplying a set of parameters for which there is no exact match on the parent class.


Member Function Documentation

static Handle create (  )  [inline, static]

Generate a set of static "create" methods matching the signatures of class T's constructors.

NOTE: Compilation errors referencing this line likely indicate that the parameters supplied by the caller to the create method did not match one of the constructors.


The documentation for this class was generated from the following file:
Copyright © 2000, 2010, Oracle and/or its affiliates. All rights reserved.