MCPcopy Create free account
hub / github.com/crazytuzi/UnrealCSharp / AnalysisDynamic

Method AnalysisDynamic

Script/CodeAnalysis/CodeAnalysis.cs:260–357  ·  view source on GitHub ↗
(string inFile, CompilationUnitSyntax inRoot)

Source from the content-addressed store, hash-verified

258 }
259
260 private void AnalysisDynamic(string inFile, CompilationUnitSyntax inRoot)
261 {
262 foreach (var RootMember in inRoot.Members)
263 {
264 if (RootMember is BaseNamespaceDeclarationSyntax NamespaceDeclaration)
265 {
266 foreach (var NameSpaceMember in NamespaceDeclaration.Members)
267 {
268 if (NameSpaceMember is ClassDeclarationSyntax ClassDeclaration)
269 {
270 foreach (var AttributeList in ClassDeclaration.AttributeLists)
271 {
272 foreach (var Attribute in AttributeList.Attributes)
273 {
274 if (Attribute.ToString().Equals("UClass"))
275 {
276 _dynamic?["DynamicClass"]
277 .Add($"{NamespaceDeclaration.Name}.{ClassDeclaration.Identifier}");
278
279 if (_dynamicFile != null)
280 {
281 _dynamicFile[
282 $"{NamespaceDeclaration.Name}.{ClassDeclaration.Identifier}"
283 ] =
284 inFile;
285 }
286
287 return;
288 }
289
290 if (Attribute.ToString().Equals("UStruct"))
291 {
292 _dynamic?["DynamicStruct"]
293 .Add($"{NamespaceDeclaration.Name}.{ClassDeclaration.Identifier}");
294
295 if (_dynamicFile != null)
296 {
297 _dynamicFile[
298 $"{NamespaceDeclaration.Name}.{ClassDeclaration.Identifier}"
299 ] = inFile;
300 }
301
302 return;
303 }
304 }
305 }
306 }
307 else if (NameSpaceMember is InterfaceDeclarationSyntax InterfaceDeclaration)
308 {
309 foreach (var AttributeList in InterfaceDeclaration.AttributeLists)
310 {
311 foreach (var Attribute in AttributeList.Attributes)
312 {
313 if (Attribute.ToString().Equals("UInterface"))
314 {
315 _dynamic?["DynamicInterface"]
316 .Add($"{NamespaceDeclaration.Name}.{InterfaceDeclaration.Identifier}");
317

Callers

nothing calls this directly

Calls 3

EqualsMethod · 0.45
ToStringMethod · 0.45
AddMethod · 0.45

Tested by

no test coverage detected