Fix in AsRecord

This commit is contained in:
Michael Schimmel
2025-09-08 19:27:37 +02:00
parent a9cc9633a2
commit 9b359eb75b
2 changed files with 5 additions and 5 deletions
+2 -2
View File
@@ -290,7 +290,7 @@ begin
with seriesVar.AsRecordSeries.Value do
begin
Add(itemValue.AsRecord, lookback);
Add(itemValue.AsRecord.Value, lookback);
end;
end;
else
@@ -415,7 +415,7 @@ begin
end;
end;
avkRecordSeries: Result := TAstValue.FromMemberSeries(baseValue.AsRecordSeries.Value.CreateMemberSeries(memberName));
avkRecord: Result := baseValue.AsRecord.Items[memberName];
avkRecord: Result := baseValue.AsRecord.Value.Items[memberName];
else
raise EArgumentException.Create('Member access operator `.` is not supported for this value type.');
end;
+3 -3
View File
@@ -90,7 +90,7 @@ type
function AsClosure: TAstValue.IClosure; inline;
function AsText: String; inline;
function AsRecordSeries: TVal<TScalarRecordSeries>; inline;
function AsRecord: TScalarRecord; inline;
function AsRecord: TVal<TScalarRecord>; inline;
function AsMemberSeries: TVal<TScalarMemberSeries>; inline;
function AsSeries: TVal<TScalarSeries>; inline;
function ToString: String;
@@ -360,11 +360,11 @@ begin
Result := TVal<TScalarMemberSeries>(FInterface);
end;
function TAstValue.AsRecord: TScalarRecord;
function TAstValue.AsRecord: TVal<TScalarRecord>;
begin
if (FKind <> avkRecord) then
raise EInvalidCast.Create('Cannot read value as Record.');
Result := (FInterface as TVal<TScalarRecord>).Value;
Result := (FInterface as TVal<TScalarRecord>);
end;
function TAstValue.AsRecordSeries: TVal<TScalarRecordSeries>;