UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
uLang::CSourceFileProject Class Reference

#include <SourceFileProject.h>

+ Inheritance diagram for uLang::CSourceFileProject:

Public Member Functions

VERSECOMPILER_API CSourceFileProject (const CUTF8String &ProjectFilePath, const TSRef< IFileSystem > &FileSystem, const TSRef< CDiagnostics > &Diagnostics)
 
VERSECOMPILER_API CSourceFileProject (const CUTF8String &Name, const TSRef< IFileSystem > &FileSystem, const TArray< SPackageDesc > &Packages, const TSRef< CDiagnostics > &Diagnostics, const bool bValkyrieSource)
 
virtual const CUTF8StringGetFilePath () const override
 
VERSECOMPILER_API bool WriteProjectFile (const CUTF8String &ProjectFilePath, const TSRef< CDiagnostics > &Diagnostics)
 
VERSECOMPILER_API bool WriteVSCodeWorkspaceFile (const CUTF8String &WorkspaceFilePath, const CUTF8String &ProjectFilePath, const TSRef< CDiagnostics > &Diagnostics)
 
VERSECOMPILER_API TOptional< TSRef< CSourceFileSnippet > > FindSnippetByFilePath (const CUTF8StringView &FilePath) const
 
VERSECOMPILER_API TOptional< TSRef< CSourceFileSnippet > > AddSnippet (const CUTF8StringView &FilePath)
 
VERSECOMPILER_API bool RemoveSnippet (const CUTF8StringView &FilePath)
 
- Public Member Functions inherited from uLang::CSourceProject
 CSourceProject (const CUTF8StringView &Name)
 Construct from name.
 
VERSECOMPILER_API CSourceProject (const CSourceProject &Other)
 Construct from other project by making a shallow copy.
 
virtual ~CSourceProject ()=default
 
const CUTF8StringGetName () const
 
VERSECOMPILER_API int32_t GetNumSnippets () const
 
VERSECOMPILER_API const SPackageFindPackage (const CUTF8StringView &PackageName, const CUTF8StringView &PackageVersePath) const
 
VERSECOMPILER_API const SPackageFindOrAddPackage (const CUTF8StringView &PackageName, const CUTF8StringView &PackageVersePath)
 
VERSECOMPILER_API void AddSnippet (const uLang::TSRef< ISourceSnippet > &Snippet, const CUTF8StringView &PackageName, const CUTF8StringView &PackageVersePath)
 
VERSECOMPILER_API bool RemoveSnippet (const uLang::TSRef< ISourceSnippet > &Snippet)
 
VERSECOMPILER_API void TruncateVniDestDirs ()
 
void PopulateTransitiveDependencyMap (uLang::TMap< const CSourcePackage *, uLang::TArray< const CSourcePackage * > > &OutMap)
 
VERSECOMPILER_API void GeneratePackageFingerprints (TSRef< ISolFingerprintGenerator > &Generator)
 
- Public Member Functions inherited from uLang::CSharedMix
 CSharedMix ()
 
virtual UE_API ~CSharedMix ()
 
 CSharedMix (const CSharedMix &Other)=delete
 
CSharedMixoperator= (const CSharedMix &Other)=delete
 
uint32_t GetRefCount () const
 

Static Public Member Functions

static VERSECOMPILER_API bool IsSnippetFile (const CUTF8StringView &FilePath)
 
static VERSECOMPILER_API bool IsModuleFile (const CUTF8StringView &FilePath)
 
static VERSECOMPILER_API bool IsPackageFile (const CUTF8StringView &FilePath)
 
static VERSECOMPILER_API bool IsProjectFile (const CUTF8StringView &FilePath)
 
static VERSECOMPILER_API bool IsValidModuleName (const CUTF8StringView &ModuleName)
 
static VERSECOMPILER_API bool IsValidSnippetFileName (const CUTF8StringView &FileName)
 

Additional Inherited Members

- Public Attributes inherited from uLang::CSourceProject
TArray< SPackage_Packages
 The packages contained in this project.
 
- Static Protected Member Functions inherited from uLang::CSharedMix
template<class ObjectType >
static TSPtrG< ObjectType, false, CHeapRawAllocatorSharedThis (ObjectType *This)
 
template<class ObjectType >
static TSPtrG< const ObjectType, false, CHeapRawAllocatorSharedThis (const ObjectType *This)
 

Detailed Description

A project of source packages on disk

Constructor & Destructor Documentation

◆ CSourceFileProject() [1/2]

uLang::CSourceFileProject::CSourceFileProject ( const CUTF8String ProjectFilePath,
const TSRef< IFileSystem > &  FileSystem,
const TSRef< CDiagnostics > &  Diagnostics 
)

This ctor will load the vproject given a path

◆ CSourceFileProject() [2/2]

uLang::CSourceFileProject::CSourceFileProject ( const CUTF8String Name,
const TSRef< IFileSystem > &  FileSystem,
const TArray< SPackageDesc > &  Packages,
const TSRef< CDiagnostics > &  Diagnostics,
const bool  bValkyrieSource 
)

This ctor will create vproject given the path and packages

Member Function Documentation

◆ AddSnippet()

TOptional< TSRef< CSourceFileSnippet > > uLang::CSourceFileProject::AddSnippet ( const CUTF8StringView FilePath)

◆ FindSnippetByFilePath()

TOptional< TSRef< CSourceFileSnippet > > uLang::CSourceFileProject::FindSnippetByFilePath ( const CUTF8StringView FilePath) const

◆ GetFilePath()

virtual const CUTF8String & uLang::CSourceFileProject::GetFilePath ( ) const
inlineoverridevirtual

Reimplemented from uLang::CSourceProject.

◆ IsModuleFile()

bool uLang::CSourceFileProject::IsModuleFile ( const CUTF8StringView FilePath)
static

◆ IsPackageFile()

bool uLang::CSourceFileProject::IsPackageFile ( const CUTF8StringView FilePath)
static

◆ IsProjectFile()

bool uLang::CSourceFileProject::IsProjectFile ( const CUTF8StringView FilePath)
static

◆ IsSnippetFile()

bool uLang::CSourceFileProject::IsSnippetFile ( const CUTF8StringView FilePath)
static

◆ IsValidModuleName()

bool uLang::CSourceFileProject::IsValidModuleName ( const CUTF8StringView ModuleName)
static

◆ IsValidSnippetFileName()

bool uLang::CSourceFileProject::IsValidSnippetFileName ( const CUTF8StringView FileName)
static

◆ RemoveSnippet()

bool uLang::CSourceFileProject::RemoveSnippet ( const CUTF8StringView FilePath)

◆ WriteProjectFile()

bool uLang::CSourceFileProject::WriteProjectFile ( const CUTF8String ProjectFilePath,
const TSRef< CDiagnostics > &  Diagnostics 
)

◆ WriteVSCodeWorkspaceFile()

bool uLang::CSourceFileProject::WriteVSCodeWorkspaceFile ( const CUTF8String WorkspaceFilePath,
const CUTF8String ProjectFilePath,
const TSRef< CDiagnostics > &  Diagnostics 
)

The documentation for this class was generated from the following files: