浏览代码

* Small optimization of WriteIdent. fixes issue #40334

Michaël Van Canneyt 2 年之前
父节点
当前提交
c7109674d1
共有 1 个文件被更改,包括 6 次插入11 次删除
  1. 6 11
      rtl/objpas/classes/writer.inc

+ 6 - 11
rtl/objpas/classes/writer.inc

@@ -214,17 +214,12 @@ end;
 
 
 procedure TBinaryObjectWriter.WriteIdent(const Ident: string);
 procedure TBinaryObjectWriter.WriteIdent(const Ident: string);
 begin
 begin
-  { Check if Ident is a special identifier before trying to just write
-    Ident directly }
-  if UpperCase(Ident) = 'NIL' then
-    WriteValue(vaNil)
-  else if UpperCase(Ident) = 'FALSE' then
-    WriteValue(vaFalse)
-  else if UpperCase(Ident) = 'TRUE' then
-    WriteValue(vaTrue)
-  else if UpperCase(Ident) = 'NULL' then
-    WriteValue(vaNull) else
-  begin
+  Case UpperCase(Ident) of
+    'NIL'   : WriteValue(vaNil);
+    'FALSE' : WriteValue(vaFalse);
+    'TRUE'  : WriteValue(vaTrue);
+    'NULL'  : WriteValue(vaNull);
+  else
     WriteValue(vaIdent);
     WriteValue(vaIdent);
     WriteStr(Ident);
     WriteStr(Ident);
   end;
   end;