Server
API Reference Guide
Product Documentation:

Rogue Wave Server
Documentation Home
List of all members | Public Member Functions
IlsFunctionDef Class Reference

An IlsFunctionDef object defines the runtime visibility and access to a member function of a server object type or a global function. More...

#include <ilserver/rtmodel.h>

Inherits IlsPropertyManager.

Inherited by IlsSvFunctionDef.

Public Member Functions

IlsMvValue execute (void *obj, const IlsMvValue *args, int dim) const
 Executes the function registered in this definition object. More...
 
IlsRTFunction getImplementation () const
 Returns a wrapper on the user function registered in this definition object. More...
 
const IlsStringgetName () const
 Returns the name of the function.
 
IlsMvDataType *const * getParameters (int &dim) const
 Returns an array of the parameter types of of the user function. More...
 
int getParamsNb () const
 Returns the number of parameters of the user function.
 
const IlsMvDataTypegetResType () const
 Returns the type of the result yielded by the function.
 
IlsString getSignature () const
 Returns a string containing the signature of the function.
 
IlsBoolean isExported () const
 Returns IlsTrue if this element of the server model interpreter is exported. More...
 
IlsBoolean isImplicit () const
 Returns IlsTrue if the function has been implicitly declared by Rogue Wave Server. More...
 
void setExported (IlsBoolean b)
 Use this member function to export an element of the server model interpreter or to cancel exportation. More...
 

Detailed Description

An IlsFunctionDef object defines the runtime visibility and access to a member function of a server object type or a global function.

Library: mvserver
and mvcomp

It is implicitly created in the server model interpreter via static initialization data declared in macros such as ILS_MEMBER_FUNCTION() or ILS_GLOBAL_FUNCTION().

See also
ILS_GLOBAL_FUNCTION(), ILS_INVERTED_1(), ILS_INVERTED_N(), ILS_MEMBER_FUNCTION(), IlsModelInterpreter, IlsObjectType, ILS_OWNS_1(), ILS_OWNS_N(), ILS_REVERSE(), ILS_RW_RELATION_1(), ILS_RW_RELATION_N(), ILS_USES_1(), ILS_USES_N(), ILS_W_RELATION_1(), ILS_W_RELATION_N().

Member Function Documentation

◆ execute()

IlsMvValue IlsFunctionDef::execute ( void *  obj,
const IlsMvValue args,
int  dim 
) const

Executes the function registered in this definition object.

The argument obj is the Server object on which the user function should be called. It should be cast to void*. This method also takes an array of arguments and returns the return value of the user function.

◆ getImplementation()

IlsRTFunction IlsFunctionDef::getImplementation ( ) const

Returns a wrapper on the user function registered in this definition object.

See the definition of IlsRTFunction.

◆ getParameters()

IlsMvDataType* const* IlsFunctionDef::getParameters ( int &  dim) const

Returns an array of the parameter types of of the user function.

The returned array must not be destroyed.

◆ isExported()

IlsBoolean IlsFunctionDef::isExported ( ) const

Returns IlsTrue if this element of the server model interpreter is exported.

By default, all model interpreter elements are exported.

◆ isImplicit()

IlsBoolean IlsFunctionDef::isImplicit ( ) const

Returns IlsTrue if the function has been implicitly declared by Rogue Wave Server.

It is the case, for instance, of the member function isOriginfunction(), which is implicitly declared on Server object types.

◆ setExported()

void IlsFunctionDef::setExported ( IlsBoolean  b)

Use this member function to export an element of the server model interpreter or to cancel exportation.

Non-exported elements are not seen in Rogue Wave Server Studio.