PLearn 0.1
Public Types | Public Member Functions | Protected Attributes
PLearn::FRemoteTrampoline_0< void > Struct Template Reference

Trampoline for a void 0-argument function. More...

#include <RemoteTrampoline.h>

Inheritance diagram for PLearn::FRemoteTrampoline_0< void >:
Inheritance graph
[legend]
Collaboration diagram for PLearn::FRemoteTrampoline_0< void >:
Collaboration graph
[legend]

List of all members.

Public Types

enum  { expected_nargs = 0 }
typedef RemoteTrampoline inherited
typedef void(* FunctionType )()

Public Member Functions

 FRemoteTrampoline_0 (const string &functionname, const RemoteMethodDoc &doc, FunctionType m, const flag_t &flgs=0)
virtual void call (Object *nullinstance, int nargs, PStream &io) const
 Perform the act of binding arguments on a stream with an object instance.

Protected Attributes

FunctionType m_function

Detailed Description

template<>
struct PLearn::FRemoteTrampoline_0< void >

Trampoline for a void 0-argument function.

Definition at line 950 of file RemoteTrampoline.h.


Member Typedef Documentation

typedef void(* PLearn::FRemoteTrampoline_0< void >::FunctionType)()

Definition at line 954 of file RemoteTrampoline.h.

Definition at line 952 of file RemoteTrampoline.h.


Member Enumeration Documentation

anonymous enum
Enumerator:
expected_nargs 

Definition at line 953 of file RemoteTrampoline.h.

{ expected_nargs = 0 };

Constructor & Destructor Documentation

PLearn::FRemoteTrampoline_0< void >::FRemoteTrampoline_0 ( const string &  functionname,
const RemoteMethodDoc doc,
FunctionType  m,
const flag_t flgs = 0 
) [inline]

Definition at line 956 of file RemoteTrampoline.h.

        : inherited(functionname, (doc, RetTypeDoc("void")), flgs),
          m_function(m)
    { }

Member Function Documentation

virtual void PLearn::FRemoteTrampoline_0< void >::call ( Object instance,
int  nargs,
PStream io 
) const [inline, virtual]

Perform the act of binding arguments on a stream with an object instance.

The actual number of arguments is passed only for error-checking, since the trampoline knows the number of arguments that it is expecting. If this is used to call a global function or a static method that was declared with declareFunction, instead of a regular method declared with declareMethod, then the instance argument is ignored (and should be passed 0 by convention).

Implements PLearn::RemoteTrampoline.

Definition at line 962 of file RemoteTrampoline.h.

References PLearn::RemoteTrampoline::checkNargs(), PLearn::RemoteTrampoline_0< T, R >::expected_nargs, and PLearn::RemoteTrampoline::sendRemoteMethodVoidResult().

    {
        checkNargs(nargs, expected_nargs);
        (*m_function)();
        sendRemoteMethodVoidResult(io);
    }

Here is the call graph for this function:


Member Data Documentation

Definition at line 980 of file RemoteTrampoline.h.


The documentation for this struct was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines