mirror of
https://gitlab.com/freepascal.org/fpc/pas2js.git
synced 2025-04-14 09:09:21 +02:00
wasmjob: added some IJSRegExp members
This commit is contained in:
parent
dc141f417a
commit
937c709dc5
@ -203,6 +203,8 @@ type
|
||||
constructor Create(const TheValues: TDoubleDynArray);
|
||||
end;
|
||||
|
||||
IJSArray = interface;
|
||||
|
||||
{ IJSObject }
|
||||
|
||||
IJSObject = interface
|
||||
@ -407,12 +409,52 @@ type
|
||||
|
||||
IJSRegExp = interface(IJSObject)
|
||||
['{3E9E4F54-10DA-45BF-ABED-7ED2C255617E}']
|
||||
function exec(const aString: UnicodeString): IJSArray;
|
||||
function _GetGlobal: Boolean;
|
||||
function _GetIgnoreCase: Boolean;
|
||||
function _GetLastIndex: NativeInt;
|
||||
function _GetMultiLine: Boolean;
|
||||
function _GetSource: UnicodeString;
|
||||
function _GetUnicode: boolean;
|
||||
procedure _SetGlobal(const AValue: Boolean);
|
||||
procedure _SetIgnoreCase(const AValue: Boolean);
|
||||
procedure _SetlastIndex(const AValue: NativeInt);
|
||||
procedure _SetMultiline(const AValue: Boolean);
|
||||
procedure _SetSource(const AValue: UnicodeString);
|
||||
procedure _SetUnicode(const AValue: boolean);
|
||||
function test(const aString: UnicodeString): boolean;
|
||||
property lastIndex: NativeInt read _GetLastIndex write _SetlastIndex;
|
||||
property global: Boolean read _GetGlobal write _SetGlobal;
|
||||
property ignoreCase: Boolean read _GetIgnoreCase write _SetIgnoreCase;
|
||||
property multiline: Boolean Read _GetMultiLine write _SetMultiline;
|
||||
property source: UnicodeString Read _GetSource write _SetSource;
|
||||
property unicode: boolean Read _GetUnicode write _SetUnicode;
|
||||
end;
|
||||
|
||||
{ TJSRegExp }
|
||||
|
||||
TJSRegExp = class(TJSObject,IJSRegExp)
|
||||
public
|
||||
function exec(const aString: UnicodeString): IJSArray;
|
||||
function _GetGlobal: Boolean;
|
||||
function _GetIgnoreCase: Boolean;
|
||||
function _GetLastIndex: NativeInt;
|
||||
function _GetMultiLine: Boolean;
|
||||
function _GetSource: UnicodeString;
|
||||
function _GetUnicode: boolean;
|
||||
procedure _SetGlobal(const AValue: Boolean);
|
||||
procedure _SetIgnoreCase(const AValue: Boolean);
|
||||
procedure _SetlastIndex(const AValue: NativeInt);
|
||||
procedure _SetMultiline(const AValue: Boolean);
|
||||
procedure _SetSource(const AValue: UnicodeString);
|
||||
procedure _SetUnicode(const AValue: boolean);
|
||||
function test(const aString: UnicodeString): boolean;
|
||||
property lastIndex: NativeInt read _GetLastIndex write _SetlastIndex;
|
||||
property global: Boolean read _GetGlobal write _SetGlobal;
|
||||
property ignoreCase: Boolean read _GetIgnoreCase write _SetIgnoreCase;
|
||||
property multiline: Boolean Read _GetMultiLine write _SetMultiline;
|
||||
property source: UnicodeString Read _GetSource write _SetSource;
|
||||
property unicode: boolean Read _GetUnicode write _SetUnicode;
|
||||
class function Cast(Intf: IJSObject): IJSRegExp; overload;
|
||||
end;
|
||||
|
||||
@ -485,10 +527,8 @@ type
|
||||
Function sort(): IJSArray; overload;
|
||||
function splice(aStart: NativeInt): IJSArray; overload;
|
||||
function splice(aStart,aDeleteCount: NativeInt): IJSArray; {varargs;} overload;
|
||||
function toLocaleString: UnicodeString; overload;
|
||||
function toLocaleString(const locales: UnicodeString): UnicodeString; overload;
|
||||
//function toLocaleString(locales: string; const Options: TLocaleCompareOptions): String; overload;
|
||||
function toString: UnicodeString;
|
||||
function unshift: NativeInt; {varargs;}
|
||||
//function values: TJSIterator;
|
||||
Property Length: NativeInt Read _GetLength Write _SetLength;
|
||||
@ -552,10 +592,8 @@ type
|
||||
Function sort(): IJSArray; overload;
|
||||
function splice(aStart: NativeInt): IJSArray; overload;
|
||||
function splice(aStart,aDeleteCount: NativeInt): IJSArray; {varargs;} overload;
|
||||
function toLocaleString: UnicodeString; overload;
|
||||
function toLocaleString(const locales: UnicodeString): UnicodeString; overload;
|
||||
//function toLocaleString(locales: string; const Options: TLocaleCompareOptions): String; overload;
|
||||
function toString: UnicodeString;
|
||||
function unshift: NativeInt; {varargs;}
|
||||
//function values: TJSIterator;
|
||||
Property Length: NativeInt Read _GetLength Write _SetLength;
|
||||
@ -1296,21 +1334,11 @@ begin
|
||||
Result:=InvokeJSObjectResult('splice',[aStart,aDeleteCount],TJSArray) as IJSArray;
|
||||
end;
|
||||
|
||||
function TJSArray.toLocaleString: UnicodeString;
|
||||
begin
|
||||
Result:=InvokeJSUnicodeStringResult('toLocaleString',[]);
|
||||
end;
|
||||
|
||||
function TJSArray.toLocaleString(const locales: UnicodeString): UnicodeString;
|
||||
begin
|
||||
Result:=InvokeJSUnicodeStringResult('toLocaleString',[locales]);
|
||||
end;
|
||||
|
||||
function TJSArray.toString: UnicodeString;
|
||||
begin
|
||||
Result:=InvokeJSUnicodeStringResult('toString',[]);
|
||||
end;
|
||||
|
||||
function TJSArray.unshift: NativeInt;
|
||||
begin
|
||||
Result:=InvokeJSMaxIntResult('unshift',[]);
|
||||
@ -1330,6 +1358,76 @@ end;
|
||||
|
||||
{ TJSRegExp }
|
||||
|
||||
function TJSRegExp.exec(const aString: UnicodeString): IJSArray;
|
||||
begin
|
||||
Result:=InvokeJSObjectResult('exec',[aString],TJSArray) as IJSArray;
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetGlobal: Boolean;
|
||||
begin
|
||||
Result:=ReadJSPropertyBoolean('global');
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetIgnoreCase: Boolean;
|
||||
begin
|
||||
Result:=ReadJSPropertyBoolean('ignoreCase');
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetLastIndex: NativeInt;
|
||||
begin
|
||||
Result:=ReadJSPropertyLongInt('lastIndex');
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetMultiLine: Boolean;
|
||||
begin
|
||||
Result:=ReadJSPropertyBoolean('multiline');
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetSource: UnicodeString;
|
||||
begin
|
||||
Result:=ReadJSPropertyUnicodeString('source');
|
||||
end;
|
||||
|
||||
function TJSRegExp._GetUnicode: boolean;
|
||||
begin
|
||||
Result:=ReadJSPropertyBoolean('unicode');
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetGlobal(const AValue: Boolean);
|
||||
begin
|
||||
WriteJSPropertyBoolean('global',AValue);
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetIgnoreCase(const AValue: Boolean);
|
||||
begin
|
||||
WriteJSPropertyBoolean('ignoreCase',AValue);
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetlastIndex(const AValue: NativeInt);
|
||||
begin
|
||||
WriteJSPropertyLongInt('lastIndex',AValue);
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetMultiline(const AValue: Boolean);
|
||||
begin
|
||||
WriteJSPropertyBoolean('multiline',AValue);
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetSource(const AValue: UnicodeString);
|
||||
begin
|
||||
WriteJSPropertyUnicodeString('source',AValue);
|
||||
end;
|
||||
|
||||
procedure TJSRegExp._SetUnicode(const AValue: boolean);
|
||||
begin
|
||||
WriteJSPropertyBoolean('unicode',AValue);
|
||||
end;
|
||||
|
||||
function TJSRegExp.test(const aString: UnicodeString): boolean;
|
||||
begin
|
||||
Result:=InvokeJSBooleanResult('test',[aString]);
|
||||
end;
|
||||
|
||||
class function TJSRegExp.Cast(Intf: IJSObject): IJSRegExp;
|
||||
begin
|
||||
Result:=TJSRegExp.Cast(Intf);
|
||||
|
Loading…
Reference in New Issue
Block a user