Main Types added
This commit is contained in:
1
FasmOnDelphi
Submodule
1
FasmOnDelphi
Submodule
Submodule FasmOnDelphi added at cd49f90470
56
Source/RuntimeBuilder.Types.pas
Normal file
56
Source/RuntimeBuilder.Types.pas
Normal file
@@ -0,0 +1,56 @@
|
||||
unit RuntimeBuilder.Types;
|
||||
|
||||
interface
|
||||
|
||||
const
|
||||
CRTBCallTypeNil=$0;
|
||||
CRTBCallTypeRegister=$1;
|
||||
CRTBCallTypeStdCall=$2;
|
||||
CRTBCallTypeCdecl=$3;
|
||||
CRTBCallTypeClrcall=$4;
|
||||
CRTBCallTypeThiscall=$5;
|
||||
CRTBCallTypeVectorcall=$6;
|
||||
CRTBCallTypeCFastCall=$7;
|
||||
CRTBCallTypeFortran=$8;
|
||||
CRTBCallTypeSyscall=$9;
|
||||
CRTBCallType64Call=$40;
|
||||
CRTBCallTypeDefault=$80;
|
||||
|
||||
type
|
||||
TRTBCompliter=class;
|
||||
|
||||
TRTBCallType=CRTBCallTypeNil..CRTBCallTypeDefault;
|
||||
|
||||
TRTBSource=class abstract
|
||||
private
|
||||
Compliter:TRTBCompliter;
|
||||
function GetText:string;virtual;abstract;
|
||||
procedure SetText(S:string);virtual;abstract;
|
||||
public
|
||||
procedure Complete();virtual;abstract;
|
||||
property Text:string read GetText write SetText;
|
||||
end;
|
||||
|
||||
TRTBFunc=class abstract
|
||||
public
|
||||
function Call(args:array of const;CallType:TRTBCallType=CRTBCallTypeDefault):Variant;virtual;abstract;
|
||||
end;
|
||||
|
||||
TRTBLib=class abstract
|
||||
private
|
||||
function GetFuntion(Name:string):TRTBFunc;virtual;abstract;
|
||||
public
|
||||
property Funtion[Name:string]:TRTBFunc read GetFuntion;
|
||||
end;
|
||||
|
||||
TRTBCompliter=class abstract
|
||||
public
|
||||
function LoadLib(Name:string):TRTBLib;virtual;abstract;
|
||||
function GenSrc():TRTBSource;virtual;abstract;
|
||||
function CompleteFunc(Source:TRTBSource;args:array of const):TRTBFunc;virtual;abstract;
|
||||
function CompleteLib(Source:TRTBSource;args:array of const):TRTBLib;virtual;abstract;
|
||||
end;
|
||||
|
||||
implementation
|
||||
|
||||
end.
|
||||
9
Source/RuntimeBuilder.pas
Normal file
9
Source/RuntimeBuilder.pas
Normal file
@@ -0,0 +1,9 @@
|
||||
unit RuntimeBuilder;
|
||||
|
||||
interface
|
||||
|
||||
uses RuntimeBuilder.Types;
|
||||
|
||||
implementation
|
||||
|
||||
end.
|
||||
Reference in New Issue
Block a user