IterativeClassScriptPackageAllowList

IterativeClassScriptPackageAllowList

#Overview

name: IterativeClassScriptPackageAllowList

The value of this variable can be defined or overridden in .ini config files. 2 .ini config files referencing this setting variable.

It is referenced in 2 C++ source files.

#Summary

#Setting Variables

#References In INI files

Location: <Workspace>/Engine/Config/BaseEditor.ini:483, section: [TargetDomain]

Location: <Workspace>/Projects/Lyra/Config/DefaultEditor.ini:84, section: [TargetDomain]

#References in C++ code

#Callsites

This variable is referenced in the following C++ source code:

#Loc: <Workspace>/Engine/Source/Editor/UnrealEd/Private/EditorDomain/EditorDomainUtils.cpp:1080

Scope (from outer to inner):

file
namespace    UE::EditorDomain
function     void ConstructTargetIterativeClassAllowList

Source code excerpt:

	TDirectoryTree<EAllowCommand> ScriptPackageAllowPaths;
	TArray<FString> ScriptPackageAllowListLines;
	GConfig->GetArray(TEXT("TargetDomain"), TEXT("IterativeClassScriptPackageAllowList"), ScriptPackageAllowListLines, GEditorIni);
	for (const FString& Line : ScriptPackageAllowListLines)
	{
		TArray<FStringView, TInlineAllocator<2>> Tokens;
		UE::String::ParseTokens(Line, TEXT(","), Tokens, UE::String::EParseTokensOptions::SkipEmpty | UE::String::EParseTokensOptions::Trim);
		EAllowCommand Command = EAllowCommand::Invalid;
		FString ScriptPath;

#Loc: <Workspace>/Engine/Source/Editor/UnrealEd/Private/EditorDomain/EditorDomainUtils.cpp:1114

Scope (from outer to inner):

file
namespace    UE::EditorDomain
function     void ConstructTargetIterativeClassAllowList

Source code excerpt:

	}

	// For every known /Script/ package, test whether it is allow-listed in IterativeClassScriptPackageAllowList,
	// and if so add all classes and structs in the package to AllowListClasses 
	FModuleManager& ModuleManager = FModuleManager::Get();
	IPluginManager& PluginManager = IPluginManager::Get();
	for (TObjectIterator<UPackage> PackageIter; PackageIter; ++PackageIter)
	{
		UPackage* Package = *PackageIter;