Keywords
This commit is contained in:
@@ -578,7 +578,7 @@ begin
|
||||
field.Value.Accept(Self); // This pushes the value JSON onto the stack
|
||||
|
||||
fieldObj := TJSONObject.Create;
|
||||
fieldObj.AddPair('Name', TJSONString.Create(field.Name));
|
||||
fieldObj.AddPair('Name', TJSONString.Create(field.Key.Value.Name));
|
||||
fieldObj.AddPair('Value', FJsonObjectStack.Pop);
|
||||
fieldsArray.Add(fieldObj);
|
||||
end;
|
||||
@@ -900,7 +900,7 @@ end;
|
||||
|
||||
function TJsonAstConverter.JsonToMemberAccessNode(const AObj: TJSONObject): IMemberAccessNode;
|
||||
begin
|
||||
Result := TAst.MemberAccess(JsonToNode(AObj.GetValue('Base')), JsonToIdentifierNode(AObj.GetValue('Member') as TJSONObject));
|
||||
Result := TAst.MemberAccess(JsonToNode(AObj.GetValue('Base')), JsonToKeywordNode(AObj.GetValue('Member') as TJSONObject));
|
||||
end;
|
||||
|
||||
function TJsonAstConverter.JsonToRecordLiteralNode(const AObj: TJSONObject): IRecordLiteralNode;
|
||||
@@ -915,7 +915,11 @@ begin
|
||||
for i := 0 to fieldsArray.Count - 1 do
|
||||
begin
|
||||
fieldObj := fieldsArray.Items[i] as TJSONObject;
|
||||
fields[i] := TRecordFieldLiteral.Create(fieldObj.GetValue<string>('Name'), JsonToNode(fieldObj.GetValue('Value')));
|
||||
fields[i] :=
|
||||
TRecordFieldLiteral.Create(
|
||||
TKeywordNode.Create(TKeywordRegistry.Intern(fieldObj.GetValue<string>('Name'))),
|
||||
JsonToNode(fieldObj.GetValue('Value'))
|
||||
);
|
||||
end;
|
||||
Result := TAst.RecordLiteral(fields);
|
||||
end;
|
||||
|
||||
Reference in New Issue
Block a user