1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-19 08:30:25 +02:00

Revamp Stdcall

This commit is contained in:
LZMPDev 2020-05-25 20:46:28 +08:00
parent 7b4239d08e
commit ad0dab0d4c
58 changed files with 1398 additions and 1398 deletions

View file

@ -39,72 +39,72 @@ namespace IDE.Compiler
NoFramePointerElim = 0x20000,
}
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfCompiler_Compile(void* bfCompiler, void* bfPassInstance, char8* outputDirectory);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfCompiler_ClearResults(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfCompiler_VerifyTypeName(void* bfCompiler, char8* typeName, int32 cursorPos);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfCompiler_ClassifySource(void* bfCompiler, void* bfPassInstance, void* bfParser, void* bfResolvePassData, void* char8Data);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetAutocompleteInfo(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetSymbolReferences(void* bfCompiler, void* bfPassInstance, void* bfResolvePassData);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_Cancel(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_ClearCompletionPercentage(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern float BfCompiler_GetCompletionPercentage(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern int32 BfCompiler_GetCompileRevision(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_Delete(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_ClearBuildCache(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_SetBuildValue(void* bfCompiler, char8* cacheDir, char8* key, char8* value);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetBuildValue(void* bfCompiler, char8* cacheDir, char8* key);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_WriteBuildCache(void* bfCompiler, char8* cacheDir);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetOutputFileNames(void* bfCompiler, void* bfProject, out bool hadOutputChanges);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetUsedOutputFileNames(void* bfCompiler, void* bfProject, bool flushQueuedHotFiles, out bool hadOutputChanges);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetTypeDefList(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetTypeDefMatches(void* bfCompiler, char8* searchStr);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_GetTypeDefInfo(void* bfCompiler, char8* typeDefName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_SetOptions(void* bfCompiler,
void* hotProject, int32 hotIdx, char8* targetTriple, int32 toolsetType, int32 simdSetting, int32 allocStackCount, int32 maxWorkerThreads,
OptionFlags optionsFlags, char8* mallocName, char8* freeName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_ForceRebuild(void* bfCompiler);
public enum HotTypeFlags
@ -115,10 +115,10 @@ namespace IDE.Compiler
Heap = 4,
};
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfCompiler_GetHasHotPendingDataChanges(void* bfCompiler);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotCommit(void* bfCompiler);
public enum HotResolveFlags
@ -127,22 +127,22 @@ namespace IDE.Compiler
HadDataChanges = 1
}
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotResolve_Start(void* bfCompiler, int32 flags);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotResolve_AddActiveMethod(void* bfCompiler, char8* methodName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotResolve_AddDelegateMethod(void* bfCompiler, char8* methodName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotResolve_ReportType(void* bfCompiler, int typeId, int usageKind);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfCompiler_HotResolve_ReportTypeRange(void* bfCompiler, char8* typeName, int usageKind);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfCompiler_HotResolve_Finish(void* bfCompiler);
class SetPassInstanceCommand : Command

View file

@ -86,58 +86,58 @@ namespace IDE.Compiler
str.AppendF("Idx:{0}", mIdx);
}
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_DeleteParser(void* bfSystem, void* bfParser);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_SetSource(void* bfParser, char8* data, int32 length, char8* fileName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_SetCharIdData(void* bfParser, uint8* data, int32 length);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_SetHashMD5(void* bfParser, ref MD5Hash md5Hash);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_SetNextRevision(void* bfParser, void* nextParser);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_SetCursorIdx(void* bfParser, int32 cursorIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_SetAutocomplete(void* bfParser, int32 cursorIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_SetIsClassifying(void* bfParser);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_Parse(void* bfParser, void* bfPassInstance, bool compatMode);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_Reduce(void* bfParser, void* bfPassInstance);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfParser_Format(void* bfParser, int32 formatEnd, int32 formatStart, out int32* outCharMapping);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfParser_GetDebugExpressionAt(void* bfParser, int32 cursorIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfParser_CreateResolvePassData(void* bfSystem, int32 resolveType);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfParser_BuildDefs(void* bfParser, void* bfPassInstance, void* bfResolvePassData, bool fullRefresh);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_RemoveDefs(void* bfParser);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_ClassifySource(void* bfParser, void* elementTypeArray, bool preserveFlags);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_GenerateAutoCompletionFrom(void* bfParser, int32 srcPosition);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfParser_SetCompleteParse(void* bfParser);
public BfSystem mSystem;

View file

@ -17,27 +17,27 @@ namespace IDE.Compiler
Classify
}
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfPassInstance_Delete(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfPassInstance_PopOutString(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfPassInstance_SetClassifierPassId(void* bfResolvePassData, uint8 classifierPassId);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern int32 BfPassInstance_GetErrorCount(void* mNativeResolvePassData);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfPassInstance_GetErrorData(void* mNativeResolvePassData, int32 errorIdx, out int32 code, out bool isWarning,
out bool isAfter, out bool isDeferred, out bool isWhileSpecializing, out bool isPersistent, out char8* projectName,
out char8* fileName, out int32 srcStart, out int32 srcEnd, int32* srcLine, int32* srcColumn, out int32 moreInfoCount);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfPassInstance_Error_GetMoreInfoData(void* mNativeResolvePassData, int32 errorIdx, int32 moreInfoIdx, out char8* fileName, out int32 srcStart, out int32 srcEnd, int32* srcLine, int32* srcColumn);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern bool BfPassInstance_HadSignatureChanges(void* mNativeResolvePassData);
public class BfError

View file

@ -20,19 +20,19 @@ namespace IDE.Compiler
AsmOutput_ATT = 0x40,
}
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfProject_Delete(void* nativeBfProject);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfProject_ClearDependencies(void* nativeBfProject);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfProject_AddDependency(void* nativeBfProject, void* nativeDepProject);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfProject_SetDisabled(void* nativeBfProject, bool disabled);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfProject_SetOptions(void* nativeBfProject, int32 targetType, char8* startupObject, char8* preprocessorMacros,
int32 optLevel, int32 ltoType, int32 relocType, int32 picLevel, Flags flags);

View file

@ -7,36 +7,36 @@ namespace IDE.Compiler
{
public class BfResolvePassData
{
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_Delete(void* bfResolvePassData);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetLocalId(void* bfResolvePassData, int32 localId);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetTypeGenericParamIdx(void* resolvePassData, int typeGenericParamIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetMethodGenericParamIdx(void* resolvePassData, int typeGenericParamIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetSymbolReferenceTypeDef(void* bfResolvePassData, char8* replaceStr);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetSymbolReferenceFieldIdx(void* bfResolvePassData, int32 fieldIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetSymbolReferenceMethodIdx(void* bfResolvePassData, int32 methodIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetSymbolReferencePropertyIdx(void* bfResolvePassData, int32 propertyIdx);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfResolvePassData_SetDocumentationRequest(void* bfResolvePassData, char8* entryName);
//
//[StdCall, CLink]
//[CallingConvention(.Stdcall), CLink]
//static extern void* BfParser_CreateResolvePassData(void* bfSystem, int32 resolveType);
public void* mNativeResolvePassData;

View file

@ -9,77 +9,77 @@ namespace IDE.Compiler
{
public class BfSystem
{
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_CheckLock(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_Create();
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_Delete(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_ReportMemory(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_Update(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_CreatePassInstance(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern char8* BfSystem_GetNamespaceSearch(void* bfSystem, char8* typeName, void* project);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_CreateProject(void* bfSystem, char8* projectName);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_ClearTypeOptions(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void BfSystem_AddTypeOptions(void* bfSystem, char8* filter, int32 simdSetting, int32 optimizationLevel, int32 emitDebugInfo, int32 runtimeChecks,
int32 initLocalVariables, int32 emitDynamicCastCheck, int32 emitObjectAccessCheck, int32 allocStackTraceDepth);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_CreateParser(void* bfSystem, void* bfProject);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_CreateCompiler(void* bfSystem, bool isResolveOnly = false);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_RemoveDeletedParsers(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_RemoveOldParsers(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_RemoveOldData(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_NotifyWillRequestLock(void* bfSystem, int32 priority);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_Lock(void* bfSystem, int32 priority);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_PerfZoneStart(char8* name);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_PerfZoneEnd();
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
static extern void* BfSystem_Unlock(void* bfSystem);
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_StartTiming();
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_StopTiming();
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_DbgPrintTimings();
[StdCall, CLink]
[CallingConvention(.Stdcall), CLink]
extern static void BfSystem_Log(void* bfSystem, char8* str);
public void* mNativeBfSystem;