mummy
1.0.2
|
#include <MummyCsharpExportLayerGenerator.h>
Public Member Functions | |
MummyCsharpExportLayerGenerator () | |
virtual | ~MummyCsharpExportLayerGenerator () |
virtual bool | GenerateWrappers () |
virtual MummyCsharpGenerator * | GetCsharpGenerator () |
virtual void | SetCsharpGenerator (MummyCsharpGenerator *generator) |
virtual const char * | GetArgName (cable::FunctionType *ftype, unsigned int i) |
virtual gxsys_stl::string | GetArgTypeAndNameString (cable::Type *argType, const char *name, bool stripConst) |
virtual gxsys_stl::string | GetExportLayerFunctionName (const cable::Class *c, const cable::Method *m, const gxsys_stl::string &mname) |
virtual void | EmitSpecialHandlingForObjectPointerReturns (gxsys_ios::ostream &os, const gxsys_stl::string &cname, const cable::Method *m, const gxsys_stl::string &mname, const unsigned int indent) |
virtual void | EmitClassMethodDeclarationForExportLayer (gxsys_ios::ostream &os, const cable::Class *c, const cable::Method *m, const gxsys_stl::string &mname, bool emitExceptionParams) |
virtual void | EmitClassMethodForExportLayer (gxsys_ios::ostream &os, const cable::Class *c, const cable::Method *m, const gxsys_stl::string &mname) |
virtual void | EmitClassForExportLayer (gxsys_ios::ostream &os, const cable::Class *c) |
Private Member Functions | |
MummyCsharpExportLayerGenerator (const MummyCsharpExportLayerGenerator &) | |
MummyCsharpExportLayerGenerator & | operator= (const MummyCsharpExportLayerGenerator &) |
Private Attributes | |
MummyCsharpGenerator * | CsharpGenerator |
Definition at line 15 of file MummyCsharpExportLayerGenerator.h.
Definition at line 35 of file MummyCsharpExportLayerGenerator.cxx.
References CsharpGenerator.
Definition at line 42 of file MummyCsharpExportLayerGenerator.cxx.
MummyCsharpExportLayerGenerator::MummyCsharpExportLayerGenerator | ( | const MummyCsharpExportLayerGenerator & | ) | [private] |
void MummyCsharpExportLayerGenerator::EmitClassForExportLayer | ( | gxsys_ios::ostream & | os, |
const cable::Class * | c | ||
) | [virtual] |
Definition at line 776 of file MummyCsharpExportLayerGenerator.cxx.
References Emit(), EmitClassMethodForExportLayer(), EmitFile(), EmitIndent(), MummyGenerator::EmitMummyVersionComments(), ExtractMapToType(), MummySettings::FindClassWrappingSettings(), FindNonAbstractPublicDefaultConstructor(), MummyCsharpGenerator::GatherWrappedMethods(), GetCsharpGenerator(), MummySettings::GetExtraExportLayerCode(), GetFullyQualifiedNameForCPlusPlus(), MummySettings::GetRegisterInclude(), MummyGenerator::GetSettings(), HasMapToType(), IsObjectPointer(), IsUtilityClass(), LogError, LogVerboseInfo, and me_NoClassWrappingSettings.
Referenced by GenerateWrappers().
void MummyCsharpExportLayerGenerator::EmitClassMethodDeclarationForExportLayer | ( | gxsys_ios::ostream & | os, |
const cable::Class * | c, | ||
const cable::Method * | m, | ||
const gxsys_stl::string & | mname, | ||
bool | emitExceptionParams | ||
) | [virtual] |
Definition at line 221 of file MummyCsharpExportLayerGenerator.cxx.
References Emit(), GetArgName(), GetArgTypeAndNameString(), GetExportLayerFunctionName(), GetFullyQualifiedNameForCPlusPlus(), HasMapToType(), IsObjectPointer(), and IsUtilityClass().
Referenced by EmitClassMethodForExportLayer().
void MummyCsharpExportLayerGenerator::EmitClassMethodForExportLayer | ( | gxsys_ios::ostream & | os, |
const cable::Class * | c, | ||
const cable::Method * | m, | ||
const gxsys_stl::string & | mname | ||
) | [virtual] |
Definition at line 491 of file MummyCsharpExportLayerGenerator.cxx.
References Emit(), EmitClassMethodDeclarationForExportLayer(), EmitIndent(), EmitSpecialHandlingForObjectPointerReturns(), ClassWrappingSettings::exceptionBaseClass, ClassWrappingSettings::exceptionCloneMethod, GetArgName(), GetArgTypeAndNameString(), GetCPlusPlusZeroInitializerExpression(), GetExportLayerActualType(), GetExportLayerMappedType(), GetFullyQualifiedNameForCPlusPlus(), GetMapToType(), MummyGenerator::GetSettings(), GetStringMethod(), HasMapToType(), IsObjectPointer(), IsVoid(), LogError, LogFileLineErrorMsg, me_NoClassWrappingSettings, and me_UnknownMapToType.
Referenced by EmitClassForExportLayer().
void MummyCsharpExportLayerGenerator::EmitSpecialHandlingForObjectPointerReturns | ( | gxsys_ios::ostream & | os, |
const gxsys_stl::string & | cname, | ||
const cable::Method * | m, | ||
const gxsys_stl::string & | mname, | ||
const unsigned int | indent | ||
) | [virtual] |
Definition at line 380 of file MummyCsharpExportLayerGenerator.cxx.
References Emit(), EmitIndent(), ClassWrappingSettings::getMummyTypeEntryMethod, ClassWrappingSettings::getRefCountMethod, MummyGenerator::GetSettings(), LogError, me_NoClassWrappingSettings, ClassWrappingSettings::registerBaseClass, ClassWrappingSettings::registerMethod, and ClassWrappingSettings::setMummyTypeEntryMethod.
Referenced by EmitClassMethodForExportLayer().
bool MummyCsharpExportLayerGenerator::GenerateWrappers | ( | ) | [virtual] |
Definition at line 48 of file MummyCsharpExportLayerGenerator.cxx.
References EmitClassForExportLayer(), and MummyGenerator::GetTargetClass().
const char * MummyCsharpExportLayerGenerator::GetArgName | ( | cable::FunctionType * | ftype, |
unsigned int | i | ||
) | [virtual] |
Definition at line 105 of file MummyCsharpExportLayerGenerator.cxx.
References MummyCsharpGenerator::GetArgName(), and GetCsharpGenerator().
Referenced by EmitClassMethodDeclarationForExportLayer(), and EmitClassMethodForExportLayer().
gxsys_stl::string MummyCsharpExportLayerGenerator::GetArgTypeAndNameString | ( | cable::Type * | argType, |
const char * | name, | ||
bool | stripConst | ||
) | [virtual] |
Definition at line 187 of file MummyCsharpExportLayerGenerator.cxx.
References EquivalentTypedefNameExists(), GetExportLayerMappedType(), GetFullyQualifiedNameForCPlusPlus(), MummyGenerator::GetTargetClass(), LogError, and me_InternalError.
Referenced by EmitClassMethodDeclarationForExportLayer(), and EmitClassMethodForExportLayer().
Definition at line 56 of file MummyCsharpExportLayerGenerator.cxx.
References CsharpGenerator.
Referenced by EmitClassForExportLayer(), GetArgName(), and GetExportLayerFunctionName().
gxsys_stl::string MummyCsharpExportLayerGenerator::GetExportLayerFunctionName | ( | const cable::Class * | c, |
const cable::Method * | m, | ||
const gxsys_stl::string & | mname | ||
) | [virtual] |
Definition at line 112 of file MummyCsharpExportLayerGenerator.cxx.
References GetCsharpGenerator(), and MummyCsharpGenerator::GetExportLayerFunctionName().
Referenced by EmitClassMethodDeclarationForExportLayer().
MummyCsharpExportLayerGenerator& MummyCsharpExportLayerGenerator::operator= | ( | const MummyCsharpExportLayerGenerator & | ) | [private] |
void MummyCsharpExportLayerGenerator::SetCsharpGenerator | ( | MummyCsharpGenerator * | generator | ) | [virtual] |
Definition at line 63 of file MummyCsharpExportLayerGenerator.cxx.
References CsharpGenerator.
Referenced by MummyApplication::ProcessClass().
Definition at line 43 of file MummyCsharpExportLayerGenerator.h.
Referenced by GetCsharpGenerator(), MummyCsharpExportLayerGenerator(), and SetCsharpGenerator().