MCPcopy Create free account
hub / github.com/beefytech/Beef / AllowsSplatting

Method AllowsSplatting

IDEHelper/Compiler/BfResolvedTypeUtils.cpp:1082–1106  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1080}
1081
1082bool BfMethodInstance::AllowsSplatting(int paramIdx)
1083{
1084 if (paramIdx == -1)
1085 {
1086 if (mCallingConvention != BfCallingConvention_Unspecified)
1087 return false;
1088 if (ForcingThisPtr())
1089 return false;
1090 if (mMethodDef->mIsNoSplat)
1091 return false;
1092 return !mMethodDef->HasNoThisSplat();
1093 }
1094 else
1095 {
1096 if (mCallingConvention != BfCallingConvention_Unspecified)
1097 return false;
1098 if ((mMethodDef->mIsNoSplat) || (mMethodDef->mMethodType == BfMethodType_Mixin))
1099 {
1100 if (IsImplicitCapture(paramIdx))
1101 return true;
1102 return false;
1103 }
1104 return true;
1105 }
1106}
1107
1108bool BfMethodInstance::HasThis()
1109{

Callers 6

SetupIRMethodMethod · 0.80
DoMethodDeclarationMethod · 0.80
CreateCallMethod · 0.80
PushThisMethod · 0.80
VisitMethod · 0.80

Calls 1

HasNoThisSplatMethod · 0.80

Tested by

no test coverage detected