Oracle Coherence for C++ API
Release 3.7.1.0
E22845-01
#include <coherence/lang/class_spec.hpp>
Inherited by abstract_spec, cloneable_spec, and throwable_spec.
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.... };
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_literal |
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. | |
| typedef I::interface_1 | interface_1 |
| implemented interface typedefs | |
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. | |
| 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.
| 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: