Warning 401: Nothing known about base class 'EncoderInterface< int >'. Ignored.
Warning 401: Maybe you forgot to instantiate 'EncoderInterface< int >' using %template.
EncoderInterface<int> IntEncoder. SWIG IntEncoder Java, , .
SWIG , , Java IntEncoder EncoderInterface<int>, .
% template, :
%template(IntEncoder) EncoderInterface<int>;
Warning 302: Identifier 'IntEncoder' redefined (ignored) (Renamed from 'EncoderInterface< int >'),
utilities.h:302: Warning 302: previous definition of 'IntEncoder'.
, SWIG EncoderInterface<int> , , IntEncoder.
SWIG, EncoderInterface<int> - , . IntEncoderInterface:
%template(IntEncoderInterface) EncoderInterface<int>;
, , , Java API.
++ SWIG, , , Java.
EncoderInterface<T> T, %template , SWIG Java.
Java EncoderInterface, Java generics, , , . , Java API ++ API, API ( , - , , API , , - , ).
- ( EncoderInterface ), ? , .
, , , , , SWIG, . , .
, ( , IntEncoder EncoderInterface<int> SWIG , EncoderInterface):
#ifndef SWIG
template<class T>
class EncoderInterface
{
public:
virtual ~EncoderInterface()
{
}
virtual const cdap_rib::SerializedObject* encode(const T &object) = 0;
virtual T* decode(
const cdap_rib::SerializedObject &serialized_object) const = 0;
};
#endif
class IntEncoder
#ifndef SWIG
: public EncoderInterface<int>
#endif
{
public:
const cdap_rib::SerializedObject* encode(const int &object);
int* decode(const cdap_rib::SerializedObject &serialized_object) const;
};
, , int* decode SWIGTYPE_p_int, , . , decode (int) , int Java.