// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "uLang/Common/Common.h" #include "uLang/Common/Misc/MathUtils.h" #include "uLang/Common/Misc/Optional.h" #include "uLang/SourceProject/UploadedAtFNVersion.h" #include namespace uLang { class CDefinition; class CSemanticProgram; struct SAttribute; TOptional GetAvailableAttributeVersion(const SAttribute& AvailableAttribute, const CSemanticProgram& SemanticProgram); TOptional GetAvailableAttributeVersion(const CDefinition& Definition, const CSemanticProgram& SemanticProgram); uint64_t CalculateCombinedAvailableAttributeVersion(const CDefinition& Definition, const CSemanticProgram& SemanticProgram); bool IsDefinitionAvailableAtVersion(const CDefinition& Definition, uint64_t Version, const CSemanticProgram& SemanticProgram); }