1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 19:48:20 +02:00
Beef/IDEHelper/DwAutoComplete.h

59 lines
986 B
C
Raw Normal View History

2019-08-23 11:56:54 -07:00
#pragma once
#include "DebugCommon.h"
#include "Compiler/BfAutoComplete.h"
#include "BeefySysLib/util/Array.h"
NS_BF_DBG_BEGIN
class DbgSubprogram;
class DbgType;
typedef Beefy::Array<DbgType*> DwTypeVector;
class DwAutoComplete : public Beefy::AutoCompleteBase
{
public:
class MethodMatchEntry
{
2022-07-30 09:11:38 -04:00
public:
2019-08-23 11:56:54 -07:00
DwTypeVector mDwGenericArguments;
DbgSubprogram* mDwSubprogram;
};
class MethodMatchInfo
{
public:
Beefy::Array<MethodMatchEntry> mInstanceList;
int mBestIdx;
int mPrevBestIdx;
bool mHadExactMatch;
int mMostParamsMatched;
Beefy::Array<int> mSrcPositions; // start, commas, end
public:
MethodMatchInfo()
{
mBestIdx = 0;
mPrevBestIdx = -1;
mHadExactMatch = false;
mMostParamsMatched = 0;
}
};
MethodMatchInfo* mMethodMatchInfo;
bool mIsCapturingMethodMatchInfo;
public:
DwAutoComplete()
{
mMethodMatchInfo = NULL;
mIsCapturingMethodMatchInfo = false;
}
~DwAutoComplete()
{
delete mMethodMatchInfo;
}
};
NS_BF_DBG_END