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

Method GetDependencyKind

IDEHelper/Compiler/BfSystem.cpp:1140–1173  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1138}
1139
1140BfProject::DependencyKind BfProject::GetDependencyKind(BfProject* project)
1141{
1142 DependencyKind* depKindPtr = NULL;
1143 if (mDependencyKindDict.TryAdd(project, NULL, &depKindPtr))
1144 {
1145 *depKindPtr = DependencyKind_None;
1146 if (project == this)
1147 {
1148 *depKindPtr = DependencyKind_Identity;
1149 }
1150 else if (HasDependency(project))
1151 {
1152 *depKindPtr = DependencyKind_Dependency;
1153 }
1154 else if (project->HasDependency(this))
1155 {
1156 *depKindPtr = DependencyKind_Dependent_Exclusive;
1157
1158 for (auto checkProject : mSystem->mProjects)
1159 {
1160 if ((checkProject == this) || (checkProject == project) || (checkProject->mDisabled))
1161 continue;
1162 if (checkProject->HasDependency(this))
1163 {
1164 if (!checkProject->HasDependency(project))
1165 {
1166 *depKindPtr = DependencyKind_Dependent_Shared;
1167 }
1168 }
1169 }
1170 }
1171 }
1172 return *depKindPtr;
1173}
1174
1175//////////////////////////////////////////////////////////////////////////
1176

Callers 1

CreateTypeDeclDataMethod · 0.80

Calls 2

HasDependencyMethod · 0.80
TryAddMethod · 0.45

Tested by

no test coverage detected