mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-08-24 17:49:07 +02:00
* Implement DataView properties
This commit is contained in:
parent
cb16466757
commit
89cd72b71c
@ -1028,6 +1028,10 @@ type
|
||||
|
||||
IJSDataView = interface(IJSObject)
|
||||
['{42F14387-FAD2-46BA-8CB4-057445095CEE}']
|
||||
function _getBuffer: IJSArrayBuffer;
|
||||
function _getByteLength: Longint;
|
||||
function _getByteOffset: Longint;
|
||||
|
||||
function getBigInt64(byteOffset : Longint) : Int64;
|
||||
function getBigInt64(byteOffset : Longint; littleEndian : Boolean) : Int64;
|
||||
function getInt32(byteOffset : Longint) : Longint;
|
||||
@ -1061,11 +1065,19 @@ type
|
||||
procedure setFloat64(byteOffset : Longint; aValue : Double; littleEndian : Boolean);
|
||||
procedure setFloat32(byteOffset : Longint; aValue : Single);
|
||||
procedure setFloat32(byteOffset : Longint; aValue : Single; littleEndian : Boolean);
|
||||
|
||||
property buffer : IJSArrayBuffer Read _getBuffer;
|
||||
property byteLength : Longint Read _getByteLength;
|
||||
property byteOffset : Longint Read _getByteOffset;
|
||||
end;
|
||||
|
||||
{ TJSDataView }
|
||||
|
||||
TJSDataView = class(TJSObject,IJSDataView)
|
||||
protected
|
||||
function _getBuffer: IJSArrayBuffer;
|
||||
function _getByteLength: Longint;
|
||||
function _getByteOffset: Longint;
|
||||
public
|
||||
constructor create(aBuffer : IJSArrayBuffer);
|
||||
constructor create(aBuffer : IJSArrayBuffer; aOffset : longint);
|
||||
@ -1708,6 +1720,21 @@ end;
|
||||
|
||||
{ TJSDataView }
|
||||
|
||||
function TJSDataView._getBuffer: IJSArrayBuffer;
|
||||
begin
|
||||
Result:=ReadJSPropertyObject('buffer',TJSArrayBuffer) as IJSArrayBuffer;
|
||||
end;
|
||||
|
||||
function TJSDataView._getByteLength: Longint;
|
||||
begin
|
||||
Result:=ReadJSPropertyLongInt('byteLength');
|
||||
end;
|
||||
|
||||
function TJSDataView._getByteOffset: Longint;
|
||||
begin
|
||||
Result:=ReadJSPropertyLongInt('byteOffset');
|
||||
end;
|
||||
|
||||
constructor TJSDataView.create(aBuffer: IJSArrayBuffer);
|
||||
begin
|
||||
JOBCreate([aBuffer]);
|
||||
|
Loading…
Reference in New Issue
Block a user