artefaktur
software engineer &        architecture

 
 
 
 

class ClazzMethodInfo

Modules   Namespace List   Class Hierarchy   Alphabetical List   Compound List   Namespace Members   Compound Members   Related Pages  

acdk::lang::dmi::ClazzMethodInfo Class Reference

#include <ClazzInfo.h>

List of all members.


Detailed Description

contains information of a method API: ACDK

Author:
Roger Rene Kommer
Version:
Revision
1.61
Date:
Date
2005/04/18 14:22:27


Public Member Functions

int getMethodSignatureHashValue () const
 returns a hash value of the method signature with - flags (except access right flags) - name of method - argument flags and types

int getArgumentCount () const
 return the number of expected arguments of this method

int getExceptionsCount () const
 returns the number of declared method throws exceptions

bool equals (const ClazzMethodInfo *other, int compareflags) const
 check if two methods are equal

bool equalsName (IN(acdk::lang::RString) n) const
bool equalsAltName (IN(acdk::lang::RString) n) const
int getAltNameHashCode () const
void _calcAltlabelHashCode () const
bool isVirtual (const ClazzInfo *clazz) const
 return if this method is virtual either if this method flags has MiMiVirtual or if the same method signature in base classes are virtual.

bool isVirtual () const
void toTypeString (StringBuffer &sb, const ClazzInfo *clazz, int formatflags) const
 render as ACDK source

RString toTypeString (const ClazzInfo *clazz, int formatflags) const
RString toTypeString (int formatflags=TpFtFormatStandard) const
void dispose ()
 dispose this structure and owning Delete ClazzInfo if flags has MiDelete

ClazzMethodInfoclone (bool deep=true)
 Make a dynamic clone of this structor.

void addArgument (const ClazzMethodArgInfo *ai)
 add argument to this method.

void addThrowable (const ClazzInfo *ex)
 add throwable spec to this method.

int _calcMethodSignatureHashValue () const
void _resolveParents (const ClazzInfo *ci) const
const NamedScopedParentMetaInfogetMetaInfo () const
NamedScopedParentMetaInfogetMetaInfo ()

Static Public Member Functions

void DefaultDispatchThrowableFunc (IN(::acdk::lang::RThrowable) ex)
void throwMethodNotFound (const ClazzInfo *clazz, IN(acdk::lang::RString) fname, int flags, int formatFlags)
int _calcHashValue (::acdk::lang::dmi::ClazzMethodArgInfo **args)

Public Attributes

int flags
void * attributeRes
const char * name
 method name

int nameHashCode
const char * ns
const NamedScopedMetaInfo_scopeParent
const NamedScopedMetaInfo_nextScopeSibling
const ClazzInforeturnType
const char * altlabel
 alternative method name

int altlabelHashCode
ClazzMethodArgInfo ** methodArgs
 list of arguments from the left to the right

int argumentCount
ClazzInfo ** exceptions
 the exceptions the method may throws

DynamicDispatchFunction dispatch
 dispatching function

DispatchThrowableFunc dispatchThrowable
 points to a method, which dispatch the exception orginated by this method, which means throws best matching Exception.

int _methodSignatureHashValue
 calculate the hash value of this method for fast dispatching don't use this value directly, but use the getMethodSignatureHashValue() function


Member Function Documentation

void acdk::lang::dmi::ClazzMethodInfo::_calcAltlabelHashCode  )  const
 

int acdk::lang::dmi::ClazzMethodInfo::_calcHashValue ::acdk::lang::dmi::ClazzMethodArgInfo **  args  )  [static]
 

int acdk::lang::dmi::ClazzMethodInfo::_calcMethodSignatureHashValue  )  const
 

void acdk::lang::dmi::ClazzMethodInfo::_resolveParents const ClazzInfo ci  )  const
 

void acdk::lang::dmi::ClazzMethodInfo::addArgument const ClazzMethodArgInfo ai  ) 
 

add argument to this method.

Only valid if this method is dynamic

void acdk::lang::dmi::ClazzMethodInfo::addThrowable const ClazzInfo ex  ) 
 

add throwable spec to this method.

Only valid if this method is dynamic

ClazzMethodInfo* acdk::lang::dmi::ClazzMethodInfo::clone bool  deep = true  ) 
 

Make a dynamic clone of this structor.

Parameters:
deep if true make also a clone of child structs

void acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc IN(::acdk::lang::RThrowable ex  )  [static]
 

void acdk::lang::dmi::ClazzMethodInfo::dispose  ) 
 

dispose this structure and owning Delete ClazzInfo if flags has MiDelete

bool acdk::lang::dmi::ClazzMethodInfo::equals const ClazzMethodInfo other,
int  compareflags
const
 

check if two methods are equal

Parameters:
compareflags refer to ClazzMethodCompareFlags for possible flags

bool acdk::lang::dmi::ClazzMethodInfo::equalsAltName IN(acdk::lang::RString n  )  const [inline]
 

bool acdk::lang::dmi::ClazzMethodInfo::equalsName IN(acdk::lang::RString n  )  const [inline]
 

int acdk::lang::dmi::ClazzMethodInfo::getAltNameHashCode  )  const [inline]
 

int acdk::lang::dmi::ClazzMethodInfo::getArgumentCount  )  const
 

return the number of expected arguments of this method

int acdk::lang::dmi::ClazzMethodInfo::getExceptionsCount  )  const
 

returns the number of declared method throws exceptions

NamedScopedParentMetaInfo* acdk::lang::dmi::ClazzMethodInfo::getMetaInfo  )  [inline]
 

const NamedScopedParentMetaInfo* acdk::lang::dmi::ClazzMethodInfo::getMetaInfo  )  const [inline]
 

int acdk::lang::dmi::ClazzMethodInfo::getMethodSignatureHashValue  )  const [inline]
 

returns a hash value of the method signature with - flags (except access right flags) - name of method - argument flags and types

bool acdk::lang::dmi::ClazzMethodInfo::isVirtual  )  const [inline]
 

bool acdk::lang::dmi::ClazzMethodInfo::isVirtual const ClazzInfo clazz  )  const
 

return if this method is virtual either if this method flags has MiMiVirtual or if the same method signature in base classes are virtual.

Parameters:
clazz the class owns this method

void acdk::lang::dmi::ClazzMethodInfo::throwMethodNotFound const ClazzInfo clazz,
IN(acdk::lang::RString fname,
int  flags,
int  formatFlags
[static]
 

RString acdk::lang::dmi::ClazzMethodInfo::toTypeString int  formatflags = TpFtFormatStandard  )  const
 

RString acdk::lang::dmi::ClazzMethodInfo::toTypeString const ClazzInfo clazz,
int  formatflags
const
 

void acdk::lang::dmi::ClazzMethodInfo::toTypeString StringBuffer sb,
const ClazzInfo clazz,
int  formatflags
const
 

render as ACDK source

Parameters:
sb where to append
clazz. if clazz != 0 void ClassName::FuncName(Param1 p) throw(Exception) will be printed. otherwise without ClassName

Member Data Documentation

int acdk::lang::dmi::ClazzMethodInfo::_methodSignatureHashValue
 

calculate the hash value of this method for fast dispatching don't use this value directly, but use the getMethodSignatureHashValue() function

const NamedScopedMetaInfo* acdk::lang::dmi::ClazzMethodInfo::_nextScopeSibling [mutable]
 

const NamedScopedMetaInfo* acdk::lang::dmi::ClazzMethodInfo::_scopeParent [mutable]
 

const char* acdk::lang::dmi::ClazzMethodInfo::altlabel
 

alternative method name

int acdk::lang::dmi::ClazzMethodInfo::altlabelHashCode
 

int acdk::lang::dmi::ClazzMethodInfo::argumentCount
 

void* acdk::lang::dmi::ClazzMethodInfo::attributeRes
 

See also:
acdk::lang::dmi::AttributesRes

DynamicDispatchFunction acdk::lang::dmi::ClazzMethodInfo::dispatch
 

dispatching function

DispatchThrowableFunc acdk::lang::dmi::ClazzMethodInfo::dispatchThrowable
 

points to a method, which dispatch the exception orginated by this method, which means throws best matching Exception.

Method always throws an exception. Used in case a scripting implementator trows an untyped exception this can mapped to a known type.

ClazzInfo** acdk::lang::dmi::ClazzMethodInfo::exceptions
 

the exceptions the method may throws

int acdk::lang::dmi::ClazzMethodInfo::flags
 

See also:
acdk::lang::dmi::MetaInfoFlags

ClazzMethodArgInfo** acdk::lang::dmi::ClazzMethodInfo::methodArgs
 

list of arguments from the left to the right

const char* acdk::lang::dmi::ClazzMethodInfo::name
 

method name

int acdk::lang::dmi::ClazzMethodInfo::nameHashCode
 

const char* acdk::lang::dmi::ClazzMethodInfo::ns
 

const ClazzInfo* acdk::lang::dmi::ClazzMethodInfo::returnType
 

 
Last modified 2005-05-08 18:32 by SYSTEM By Artefaktur, Ing. Bureau Kommer