mirror of
https://github.com/beefytech/Beef.git
synced 2025-07-04 15:26:00 +02:00
Move mid-compile rebuild request into a work list
This commit is contained in:
parent
b095f5b0d3
commit
9972ff32ab
6 changed files with 112 additions and 20 deletions
|
@ -113,6 +113,12 @@ public:
|
|||
BfAstNode* mRefNode;
|
||||
};
|
||||
|
||||
class BfMidCompileRequest : public BfWorkListEntry
|
||||
{
|
||||
public:
|
||||
String mReason;
|
||||
};
|
||||
|
||||
struct BfStringPoolEntry
|
||||
{
|
||||
String mString;
|
||||
|
@ -397,6 +403,7 @@ public:
|
|||
WorkQueue<BfTypeProcessRequest> mPopulateTypeWorkList;
|
||||
WorkQueue<BfMethodSpecializationRequest> mMethodSpecializationWorkList;
|
||||
WorkQueue<BfTypeRefVerifyRequest> mTypeRefVerifyWorkList;
|
||||
WorkQueue<BfMidCompileRequest> mMidCompileWorkList;
|
||||
PtrWorkQueue<BfModule*> mFinishedSlotAwaitModuleWorkList;
|
||||
PtrWorkQueue<BfModule*> mFinishedModuleWorkList;
|
||||
bool mHasReifiedQueuedRebuildTypes;
|
||||
|
@ -476,6 +483,7 @@ public:
|
|||
void ValidateDependencies();
|
||||
void RebuildType(BfType* type, bool deleteOnDemandTypes = true, bool rebuildModule = true, bool placeSpecializiedInPurgatory = true);
|
||||
void RebuildDependentTypes(BfDependedType* dType);
|
||||
void QueueMidCompileRebuildDependentTypes(BfDependedType* dType, const String& reason);
|
||||
void RebuildDependentTypes_MidCompile(BfDependedType* dType, const String& reason);
|
||||
bool CanRebuild(BfType* type);
|
||||
void TypeDataChanged(BfDependedType* dType, bool isNonStaticDataChange);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue