xfa_fm2jscontext method cleanup - pt VIII

Cleanup ::logical_not_operator, ::negative_operator, ::positive_operator,
::divide_operator, ::multiple_operator, ::minus_operator, ::plus_operator,
::greaterequal_operator, ::greater_operator, ::lessequal_operator,
::less_operator, ::fm_ref_equal, ::notequality_operator, ::equality_operator,
::logical_and_operator, ::logical_or_operator, ::assign_value_operator, ::Put,
::Post, ::Get, ::TrillionUS and ::WordUS.

Review-Url: https://codereview.chromium.org/2046123004
diff --git a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
index cfe5bd6..53ccf0b 100644
--- a/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
+++ b/xfa/fxfa/fm2js/xfa_fm2jscontext.cpp
@@ -4780,23 +4780,23 @@
                                  "Sixty",  "Seventy", "Eighty", "Ninety"};
   CFX_ByteStringC pComm[] = {" Hundred ", " Thousand ", " Million ",
                              " Billion ", "Trillion"};
-  int32_t iComm = 0;
   const FX_CHAR* pData = szData.c_str();
   int32_t iLength = szData.GetLength();
-  if (iLength > 12) {
+  int32_t iComm = 0;
+  if (iLength > 12)
     iComm = 4;
-  } else if (iLength > 9) {
+  else if (iLength > 9)
     iComm = 3;
-  } else if (iLength > 6) {
+  else if (iLength > 6)
     iComm = 2;
-  } else if (iLength > 3) {
+  else if (iLength > 3)
     iComm = 1;
-  }
-  int32_t iIndex = 0;
+
   int32_t iFirstCount = iLength % 3;
-  if (iFirstCount == 0) {
+  if (iFirstCount == 0)
     iFirstCount = 3;
-  }
+
+  int32_t iIndex = 0;
   if (iFirstCount == 3) {
     if (pData[iIndex] != '0') {
       strBuf << pCapUnits[pData[iIndex] - '0'];
@@ -4871,95 +4871,46 @@
                                CFX_ByteTextBuf& strBuf) {
   const FX_CHAR* pData = szData.c_str();
   int32_t iLength = szData.GetLength();
-  switch (iStyle) {
-    case 0: {
-      int32_t iIndex = 0;
-      while (iIndex < iLength) {
-        if (pData[iIndex] == '.') {
-          break;
-        }
-        ++iIndex;
-      }
-      iLength = iIndex;
-      iIndex = 0;
-      int32_t iCount = 0;
-      while (iIndex < iLength) {
-        iCount = (iLength - iIndex) % 12;
-        if (!iCount && iLength - iIndex > 0) {
-          iCount = 12;
-        }
-        TrillionUS(CFX_ByteStringC(pData + iIndex, iCount), strBuf);
-        iIndex += iCount;
-        if (iIndex < iLength) {
-          strBuf << " Trillion ";
-        }
-      }
-    } break;
-    case 1: {
-      int32_t iIndex = 0;
-      while (iIndex < iLength) {
-        if (pData[iIndex] == '.') {
-          break;
-        }
-        ++iIndex;
-      }
-      iLength = iIndex;
-      iIndex = 0;
-      int32_t iCount = 0;
-      while (iIndex < iLength) {
-        iCount = (iLength - iIndex) % 12;
-        if (!iCount && iLength - iIndex > 0) {
-          iCount = 12;
-        }
-        TrillionUS(CFX_ByteStringC(pData + iIndex, iCount), strBuf);
-        iIndex += iCount;
-        if (iIndex < iLength) {
-          strBuf << " Trillion ";
-        }
-      }
-      strBuf << " Dollars";
-    } break;
-    case 2: {
-      int32_t iIndex = 0;
-      while (iIndex < iLength) {
-        if (pData[iIndex] == '.') {
-          break;
-        }
-        ++iIndex;
-      }
-      int32_t iInteger = iIndex;
-      iIndex = 0;
-      int32_t iCount = 0;
-      while (iIndex < iInteger) {
-        iCount = (iInteger - iIndex) % 12;
-        if (!iCount && iLength - iIndex > 0) {
-          iCount = 12;
-        }
-        TrillionUS(CFX_ByteStringC(pData + iIndex, iCount), strBuf);
-        iIndex += iCount;
-        if (iIndex < iInteger) {
-          strBuf << " Trillion ";
-        }
-      }
-      strBuf << " Dollars";
-      if (iInteger < iLength) {
-        strBuf << " And ";
-        iIndex = iInteger + 1;
-        while (iIndex < iLength) {
-          int32_t iSize = (iLength - iIndex) % 12;
-          if (!iSize && iLength - iIndex > 0)
-            iSize = 12;
-          TrillionUS(CFX_ByteStringC(pData + iIndex, iSize), strBuf);
-          iIndex += iSize;
-          if (iIndex < iLength) {
-            strBuf << " Trillion ";
-          }
-        }
-        strBuf << " Cents";
-      }
-    } break;
-    default:
+  if (iStyle < 0 || iStyle > 2) {
+    return;
+  }
+
+  int32_t iIndex = 0;
+  while (iIndex < iLength) {
+    if (pData[iIndex] == '.')
       break;
+    ++iIndex;
+  }
+  int32_t iInteger = iIndex;
+  iIndex = 0;
+  while (iIndex < iInteger) {
+    int32_t iCount = (iInteger - iIndex) % 12;
+    if (!iCount && iInteger - iIndex > 0)
+      iCount = 12;
+
+    TrillionUS(CFX_ByteStringC(pData + iIndex, iCount), strBuf);
+    iIndex += iCount;
+    if (iIndex < iInteger)
+      strBuf << " Trillion ";
+  }
+
+  if (iStyle > 0)
+    strBuf << " Dollars";
+
+  if (iStyle > 1 && iInteger < iLength) {
+    strBuf << " And ";
+    iIndex = iInteger + 1;
+    while (iIndex < iLength) {
+      int32_t iCount = (iLength - iIndex) % 12;
+      if (!iCount && iLength - iIndex > 0)
+        iCount = 12;
+
+      TrillionUS(CFX_ByteStringC(pData + iIndex, iCount), strBuf);
+      iIndex += iCount;
+      if (iIndex < iLength)
+        strBuf << " Trillion ";
+    }
+    strBuf << " Cents";
   }
 }
 
@@ -4968,32 +4919,33 @@
                             const CFX_ByteStringC& szFuncName,
                             CFXJSE_Arguments& args) {
   CXFA_FM2JSContext* pContext = ToJSContext(pThis, nullptr);
-  if (args.GetLength() == 1) {
-    CXFA_Document* pDoc = pContext->GetDocument();
-    if (!pDoc) {
-      return;
-    }
-    IXFA_AppProvider* pAppProvider =
-        pDoc->GetParser()->GetNotify()->GetAppProvider();
-    if (!pAppProvider) {
-      return;
-    }
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    CFX_ByteString urlString;
-    ValueToUTF8String(argOne.get(), urlString);
-    IFX_FileRead* pFile = pAppProvider->DownloadURL(
-        CFX_WideString::FromUTF8(urlString.AsStringC()));
-    if (pFile) {
-      int32_t size = pFile->GetSize();
-      uint8_t* pData = FX_Alloc(uint8_t, size);
-      pFile->ReadBlock(pData, size);
-      args.GetReturnValue()->SetString(CFX_ByteStringC(pData, size));
-      FX_Free(pData);
-      pFile->Release();
-    }
-  } else {
+  if (args.GetLength() != 1) {
     pContext->ThrowException(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"Get");
+    return;
   }
+
+  CXFA_Document* pDoc = pContext->GetDocument();
+  if (!pDoc)
+    return;
+
+  IXFA_AppProvider* pAppProvider =
+      pDoc->GetParser()->GetNotify()->GetAppProvider();
+  if (!pAppProvider)
+    return;
+
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  CFX_ByteString urlString;
+  ValueToUTF8String(argOne.get(), urlString);
+  IFX_FileRead* pFile = pAppProvider->DownloadURL(
+      CFX_WideString::FromUTF8(urlString.AsStringC()));
+  if (!pFile)
+    return;
+
+  int32_t size = pFile->GetSize();
+  std::unique_ptr<uint8_t> pData(FX_Alloc(uint8_t, size));
+  pFile->ReadBlock(pData.get(), size);
+  args.GetReturnValue()->SetString(CFX_ByteStringC(pData.get(), size));
+  pFile->Release();
 }
 
 // static
@@ -5002,54 +4954,60 @@
                              CFXJSE_Arguments& args) {
   CXFA_FM2JSContext* pContext = ToJSContext(pThis, nullptr);
   int32_t argc = args.GetLength();
-  if ((argc >= 2) && (argc <= 5)) {
-    CXFA_Document* pDoc = pContext->GetDocument();
-    if (!pDoc) {
-      return;
-    }
-    IXFA_AppProvider* pAppProvider =
-        pDoc->GetParser()->GetNotify()->GetAppProvider();
-    if (!pAppProvider) {
-      return;
-    }
-    CFX_ByteString bsURL;
-    CFX_ByteString bsData;
-    CFX_ByteString bsContentType;
-    CFX_ByteString bsEncode;
-    CFX_ByteString bsHeader;
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    ValueToUTF8String(argOne.get(), bsURL);
-    std::unique_ptr<CFXJSE_Value> argTwo = GetSimpleValue(pThis, args, 1);
-    ValueToUTF8String(argTwo.get(), bsData);
-    if (argc > 2) {
-      std::unique_ptr<CFXJSE_Value> argThree = GetSimpleValue(pThis, args, 2);
-      ValueToUTF8String(argThree.get(), bsContentType);
-    }
-    if (argc > 3) {
-      std::unique_ptr<CFXJSE_Value> argFour = GetSimpleValue(pThis, args, 3);
-      ValueToUTF8String(argFour.get(), bsEncode);
-    }
-    if (argc > 4) {
-      std::unique_ptr<CFXJSE_Value> argFive = GetSimpleValue(pThis, args, 4);
-      ValueToUTF8String(argFive.get(), bsHeader);
-    }
-    CFX_WideString decodedResponse;
-    FX_BOOL bFlags = pAppProvider->PostRequestURL(
-        CFX_WideString::FromUTF8(bsURL.AsStringC()),
-        CFX_WideString::FromUTF8(bsData.AsStringC()),
-        CFX_WideString::FromUTF8(bsContentType.AsStringC()),
-        CFX_WideString::FromUTF8(bsEncode.AsStringC()),
-        CFX_WideString::FromUTF8(bsHeader.AsStringC()), decodedResponse);
-    if (bFlags) {
-      args.GetReturnValue()->SetString(
-          FX_UTF8Encode(decodedResponse.c_str(), decodedResponse.GetLength())
-              .AsStringC());
-    } else {
-      pContext->ThrowException(XFA_IDS_SERVER_DENY);
-    }
-  } else {
+  if (argc < 2 || argc > 5) {
     pContext->ThrowException(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"Post");
+    return;
   }
+
+  CXFA_Document* pDoc = pContext->GetDocument();
+  if (!pDoc)
+    return;
+
+  IXFA_AppProvider* pAppProvider =
+      pDoc->GetParser()->GetNotify()->GetAppProvider();
+  if (!pAppProvider)
+    return;
+
+  CFX_ByteString bsURL;
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  ValueToUTF8String(argOne.get(), bsURL);
+
+  CFX_ByteString bsData;
+  std::unique_ptr<CFXJSE_Value> argTwo = GetSimpleValue(pThis, args, 1);
+  ValueToUTF8String(argTwo.get(), bsData);
+
+  CFX_ByteString bsContentType;
+  if (argc > 2) {
+    std::unique_ptr<CFXJSE_Value> argThree = GetSimpleValue(pThis, args, 2);
+    ValueToUTF8String(argThree.get(), bsContentType);
+  }
+
+  CFX_ByteString bsEncode;
+  if (argc > 3) {
+    std::unique_ptr<CFXJSE_Value> argFour = GetSimpleValue(pThis, args, 3);
+    ValueToUTF8String(argFour.get(), bsEncode);
+  }
+
+  CFX_ByteString bsHeader;
+  if (argc > 4) {
+    std::unique_ptr<CFXJSE_Value> argFive = GetSimpleValue(pThis, args, 4);
+    ValueToUTF8String(argFive.get(), bsHeader);
+  }
+
+  CFX_WideString decodedResponse;
+  if (!pAppProvider->PostRequestURL(
+          CFX_WideString::FromUTF8(bsURL.AsStringC()),
+          CFX_WideString::FromUTF8(bsData.AsStringC()),
+          CFX_WideString::FromUTF8(bsContentType.AsStringC()),
+          CFX_WideString::FromUTF8(bsEncode.AsStringC()),
+          CFX_WideString::FromUTF8(bsHeader.AsStringC()), decodedResponse)) {
+    pContext->ThrowException(XFA_IDS_SERVER_DENY);
+    return;
+  }
+
+  args.GetReturnValue()->SetString(
+      FX_UTF8Encode(decodedResponse.c_str(), decodedResponse.GetLength())
+          .AsStringC());
 }
 
 // static
@@ -5058,39 +5016,43 @@
                             CFXJSE_Arguments& args) {
   CXFA_FM2JSContext* pContext = ToJSContext(pThis, nullptr);
   int32_t argc = args.GetLength();
-  if ((argc == 2) || (argc == 3)) {
-    CXFA_Document* pDoc = pContext->GetDocument();
-    if (!pDoc) {
-      return;
-    }
-    IXFA_AppProvider* pAppProvider =
-        pDoc->GetParser()->GetNotify()->GetAppProvider();
-    if (!pAppProvider) {
-      return;
-    }
-    CFX_ByteString bsURL;
-    CFX_ByteString bsData;
-    CFX_ByteString bsEncode;
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    ValueToUTF8String(argOne.get(), bsURL);
-    std::unique_ptr<CFXJSE_Value> argTwo = GetSimpleValue(pThis, args, 1);
-    ValueToUTF8String(argTwo.get(), bsData);
-    if (argc > 2) {
-      std::unique_ptr<CFXJSE_Value> argThree = GetSimpleValue(pThis, args, 2);
-      ValueToUTF8String(argThree.get(), bsEncode);
-    }
-    FX_BOOL bFlags = pAppProvider->PutRequestURL(
-        CFX_WideString::FromUTF8(bsURL.AsStringC()),
-        CFX_WideString::FromUTF8(bsData.AsStringC()),
-        CFX_WideString::FromUTF8(bsEncode.AsStringC()));
-    if (bFlags) {
-      args.GetReturnValue()->SetString("");
-    } else {
-      pContext->ThrowException(XFA_IDS_SERVER_DENY);
-    }
-  } else {
+  if (argc < 2 || argc > 3) {
     pContext->ThrowException(XFA_IDS_INCORRECT_NUMBER_OF_METHOD, L"Put");
+    return;
   }
+
+  CXFA_Document* pDoc = pContext->GetDocument();
+  if (!pDoc)
+    return;
+
+  IXFA_AppProvider* pAppProvider =
+      pDoc->GetParser()->GetNotify()->GetAppProvider();
+  if (!pAppProvider)
+    return;
+
+  CFX_ByteString bsURL;
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  ValueToUTF8String(argOne.get(), bsURL);
+
+  CFX_ByteString bsData;
+  std::unique_ptr<CFXJSE_Value> argTwo = GetSimpleValue(pThis, args, 1);
+  ValueToUTF8String(argTwo.get(), bsData);
+
+  CFX_ByteString bsEncode;
+  if (argc > 2) {
+    std::unique_ptr<CFXJSE_Value> argThree = GetSimpleValue(pThis, args, 2);
+    ValueToUTF8String(argThree.get(), bsEncode);
+  }
+
+  if (!pAppProvider->PutRequestURL(
+          CFX_WideString::FromUTF8(bsURL.AsStringC()),
+          CFX_WideString::FromUTF8(bsData.AsStringC()),
+          CFX_WideString::FromUTF8(bsEncode.AsStringC()))) {
+    pContext->ThrowException(XFA_IDS_SERVER_DENY);
+    return;
+  }
+
+  args.GetReturnValue()->SetString("");
 }
 
 // static
@@ -5098,334 +5060,375 @@
                                               const CFX_ByteStringC& szFuncName,
                                               CFXJSE_Arguments& args) {
   CXFA_FM2JSContext* pContext = ToJSContext(pThis, nullptr);
-  v8::Isolate* pIsolate = pContext->GetScriptRuntime();
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> lValue = args.GetValue(0);
-    std::unique_ptr<CFXJSE_Value> rValue = GetSimpleValue(pThis, args, 1);
-    FX_BOOL bSetStatus = TRUE;
-    if (lValue->IsArray()) {
-      std::unique_ptr<CFXJSE_Value> leftLengthValue(new CFXJSE_Value(pIsolate));
-      lValue->GetObjectProperty("length", leftLengthValue.get());
-      int32_t iLeftLength = leftLengthValue->ToInteger();
-      std::unique_ptr<CFXJSE_Value> jsObjectValue(new CFXJSE_Value(pIsolate));
-      std::unique_ptr<CFXJSE_Value> propertyValue(new CFXJSE_Value(pIsolate));
-      lValue->GetObjectPropertyByIdx(1, propertyValue.get());
-      if (propertyValue->IsNull()) {
-        for (int32_t i = 2; i < iLeftLength; i++) {
-          lValue->GetObjectPropertyByIdx(i, jsObjectValue.get());
-          bSetStatus = SetObjectDefaultValue(jsObjectValue.get(), rValue.get());
-          if (!bSetStatus) {
-            pContext->ThrowException(XFA_IDS_NOT_DEFAUL_VALUE);
-            break;
-          }
-        }
-      } else {
-        CFX_ByteString propertyStr;
-        propertyValue->ToString(propertyStr);
-        for (int32_t i = 2; i < iLeftLength; i++) {
-          lValue->GetObjectPropertyByIdx(i, jsObjectValue.get());
-          jsObjectValue->SetObjectProperty(propertyStr.AsStringC(),
-                                           rValue.get());
+  if (args.GetLength() != 2) {
+    pContext->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
+  }
+
+  std::unique_ptr<CFXJSE_Value> lValue = args.GetValue(0);
+  std::unique_ptr<CFXJSE_Value> rValue = GetSimpleValue(pThis, args, 1);
+  if (lValue->IsArray()) {
+    v8::Isolate* pIsolate = pContext->GetScriptRuntime();
+    std::unique_ptr<CFXJSE_Value> leftLengthValue(new CFXJSE_Value(pIsolate));
+    lValue->GetObjectProperty("length", leftLengthValue.get());
+    int32_t iLeftLength = leftLengthValue->ToInteger();
+    std::unique_ptr<CFXJSE_Value> jsObjectValue(new CFXJSE_Value(pIsolate));
+    std::unique_ptr<CFXJSE_Value> propertyValue(new CFXJSE_Value(pIsolate));
+    lValue->GetObjectPropertyByIdx(1, propertyValue.get());
+    if (propertyValue->IsNull()) {
+      for (int32_t i = 2; i < iLeftLength; i++) {
+        lValue->GetObjectPropertyByIdx(i, jsObjectValue.get());
+        if (!SetObjectDefaultValue(jsObjectValue.get(), rValue.get())) {
+          pContext->ThrowException(XFA_IDS_NOT_DEFAUL_VALUE);
+          return;
         }
       }
-    } else if (lValue->IsObject()) {
-      bSetStatus = SetObjectDefaultValue(lValue.get(), rValue.get());
-      if (!bSetStatus) {
-        pContext->ThrowException(XFA_IDS_NOT_DEFAUL_VALUE);
+    } else {
+      CFX_ByteString propertyStr;
+      propertyValue->ToString(propertyStr);
+      for (int32_t i = 2; i < iLeftLength; i++) {
+        lValue->GetObjectPropertyByIdx(i, jsObjectValue.get());
+        jsObjectValue->SetObjectProperty(propertyStr.AsStringC(), rValue.get());
       }
     }
-    args.GetReturnValue()->Assign(rValue.get());
-  } else {
-    pContext->ThrowException(XFA_IDS_COMPILER_ERROR);
+  } else if (lValue->IsObject()) {
+    if (!SetObjectDefaultValue(lValue.get(), rValue.get())) {
+      pContext->ThrowException(XFA_IDS_NOT_DEFAUL_VALUE);
+      return;
+    }
   }
+  args.GetReturnValue()->Assign(rValue.get());
 }
 
 // static
 void CXFA_FM2JSContext::logical_or_operator(CFXJSE_Value* pThis,
                                             const CFX_ByteStringC& szFuncName,
                                             CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() && argSecond->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_FLOAT first = ValueToFloat(pThis, argFirst.get());
-      FX_FLOAT second = ValueToFloat(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first || second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() && argSecond->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_FLOAT first = ValueToFloat(pThis, argFirst.get());
+  FX_FLOAT second = ValueToFloat(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first || second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::logical_and_operator(CFXJSE_Value* pThis,
                                              const CFX_ByteStringC& szFuncName,
                                              CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() && argSecond->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_FLOAT first = ValueToFloat(pThis, argFirst.get());
-      FX_FLOAT second = ValueToFloat(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first && second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() && argSecond->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_FLOAT first = ValueToFloat(pThis, argFirst.get());
+  FX_FLOAT second = ValueToFloat(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first && second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::equality_operator(CFXJSE_Value* pThis,
                                           const CFX_ByteStringC& szFuncName,
                                           CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    if (fm_ref_equal(pThis, args)) {
-      args.GetReturnValue()->SetInteger(1);
-    } else {
-      std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-      std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-      if (argFirst->IsNull() || argSecond->IsNull()) {
-        args.GetReturnValue()->SetInteger(
-            (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
-      } else if (argFirst->IsString() && argSecond->IsString()) {
-        CFX_ByteString firstOutput;
-        CFX_ByteString secondOutput;
-        argFirst->ToString(firstOutput);
-        argSecond->ToString(secondOutput);
-        args.GetReturnValue()->SetInteger(firstOutput == secondOutput);
-      } else {
-        FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-        FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-        args.GetReturnValue()->SetInteger((first == second) ? 1 : 0);
-      }
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  if (fm_ref_equal(pThis, args)) {
+    args.GetReturnValue()->SetInteger(1);
+    return;
+  }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(
+        (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(firstOutput == secondOutput);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first == second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::notequality_operator(CFXJSE_Value* pThis,
                                              const CFX_ByteStringC& szFuncName,
                                              CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    if (fm_ref_equal(pThis, args)) {
-      args.GetReturnValue()->SetInteger(0);
-    } else {
-      std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-      std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-      if (argFirst->IsNull() || argSecond->IsNull()) {
-        args.GetReturnValue()->SetInteger(
-            (argFirst->IsNull() && argSecond->IsNull()) ? 0 : 1);
-      } else if (argFirst->IsString() && argSecond->IsString()) {
-        CFX_ByteString firstOutput;
-        CFX_ByteString secondOutput;
-        argFirst->ToString(firstOutput);
-        argSecond->ToString(secondOutput);
-        args.GetReturnValue()->SetInteger(firstOutput != secondOutput);
-      } else {
-        FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-        FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-        args.GetReturnValue()->SetInteger(first != second);
-      }
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  if (fm_ref_equal(pThis, args)) {
+    args.GetReturnValue()->SetInteger(0);
+    return;
+  }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(
+        (argFirst->IsNull() && argSecond->IsNull()) ? 0 : 1);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(firstOutput != secondOutput);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger(first != second);
 }
 
 // static
 FX_BOOL CXFA_FM2JSContext::fm_ref_equal(CFXJSE_Value* pThis,
                                         CFXJSE_Arguments& args) {
-  FX_BOOL bRet = FALSE;
-  v8::Isolate* pIsolate = ToJSContext(pThis, nullptr)->GetScriptRuntime();
   std::unique_ptr<CFXJSE_Value> argFirst = args.GetValue(0);
   std::unique_ptr<CFXJSE_Value> argSecond = args.GetValue(1);
-  if (argFirst->IsArray() && argSecond->IsArray()) {
-    std::unique_ptr<CFXJSE_Value> firstFlagValue(new CFXJSE_Value(pIsolate));
-    std::unique_ptr<CFXJSE_Value> secondFlagValue(new CFXJSE_Value(pIsolate));
-    argFirst->GetObjectPropertyByIdx(0, firstFlagValue.get());
-    argSecond->GetObjectPropertyByIdx(0, secondFlagValue.get());
-    if (firstFlagValue->ToInteger() == 3 && secondFlagValue->ToInteger() == 3) {
-      std::unique_ptr<CFXJSE_Value> firstJSObject(new CFXJSE_Value(pIsolate));
-      std::unique_ptr<CFXJSE_Value> secondJSObject(new CFXJSE_Value(pIsolate));
-      argFirst->GetObjectPropertyByIdx(2, firstJSObject.get());
-      argSecond->GetObjectPropertyByIdx(2, secondJSObject.get());
-      if (!firstJSObject->IsNull() && !secondJSObject->IsNull()) {
-        bRet = (firstJSObject->ToHostObject(nullptr) ==
-                secondJSObject->ToHostObject(nullptr));
-      }
-    }
-  }
-  return bRet;
+  if (!argFirst->IsArray() || !argSecond->IsArray())
+    return FALSE;
+
+  v8::Isolate* pIsolate = ToJSContext(pThis, nullptr)->GetScriptRuntime();
+  std::unique_ptr<CFXJSE_Value> firstFlagValue(new CFXJSE_Value(pIsolate));
+  std::unique_ptr<CFXJSE_Value> secondFlagValue(new CFXJSE_Value(pIsolate));
+  argFirst->GetObjectPropertyByIdx(0, firstFlagValue.get());
+  argSecond->GetObjectPropertyByIdx(0, secondFlagValue.get());
+  if (firstFlagValue->ToInteger() != 3 || secondFlagValue->ToInteger() != 3)
+    return FALSE;
+
+  std::unique_ptr<CFXJSE_Value> firstJSObject(new CFXJSE_Value(pIsolate));
+  std::unique_ptr<CFXJSE_Value> secondJSObject(new CFXJSE_Value(pIsolate));
+  argFirst->GetObjectPropertyByIdx(2, firstJSObject.get());
+  argSecond->GetObjectPropertyByIdx(2, secondJSObject.get());
+  if (firstJSObject->IsNull() || secondJSObject->IsNull())
+    return FALSE;
+
+  return (firstJSObject->ToHostObject(nullptr) ==
+          secondJSObject->ToHostObject(nullptr));
 }
 
 // static
 void CXFA_FM2JSContext::less_operator(CFXJSE_Value* pThis,
                                       const CFX_ByteStringC& szFuncName,
                                       CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() || argSecond->IsNull()) {
-      args.GetReturnValue()->SetInteger(0);
-    } else if (argFirst->IsString() && argSecond->IsString()) {
-      CFX_ByteString firstOutput;
-      CFX_ByteString secondOutput;
-      argFirst->ToString(firstOutput);
-      argSecond->ToString(secondOutput);
-      args.GetReturnValue()->SetInteger(
-          firstOutput.Compare(secondOutput.AsStringC()) == -1);
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first < second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(0);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(
+        firstOutput.Compare(secondOutput.AsStringC()) == -1);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first < second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::lessequal_operator(CFXJSE_Value* pThis,
                                            const CFX_ByteStringC& szFuncName,
                                            CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() || argSecond->IsNull()) {
-      args.GetReturnValue()->SetInteger(
-          (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
-    } else if (argFirst->IsString() && argSecond->IsString()) {
-      CFX_ByteString firstOutput;
-      CFX_ByteString secondOutput;
-      argFirst->ToString(firstOutput);
-      argSecond->ToString(secondOutput);
-      args.GetReturnValue()->SetInteger(
-          firstOutput.Compare(secondOutput.AsStringC()) != 1);
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first <= second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(
+        (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(
+        firstOutput.Compare(secondOutput.AsStringC()) != 1);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first <= second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::greater_operator(CFXJSE_Value* pThis,
                                          const CFX_ByteStringC& szFuncName,
                                          CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() || argSecond->IsNull()) {
-      args.GetReturnValue()->SetInteger(0);
-    } else if (argFirst->IsString() && argSecond->IsString()) {
-      CFX_ByteString firstOutput;
-      CFX_ByteString secondOutput;
-      argFirst->ToString(firstOutput);
-      argSecond->ToString(secondOutput);
-      args.GetReturnValue()->SetInteger(
-          firstOutput.Compare(secondOutput.AsStringC()) == 1);
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first > second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(0);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(
+        firstOutput.Compare(secondOutput.AsStringC()) == 1);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first > second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::greaterequal_operator(CFXJSE_Value* pThis,
                                               const CFX_ByteStringC& szFuncName,
                                               CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() || argSecond->IsNull()) {
-      args.GetReturnValue()->SetInteger(
-          (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
-    } else if (argFirst->IsString() && argSecond->IsString()) {
-      CFX_ByteString firstOutput;
-      CFX_ByteString secondOutput;
-      argFirst->ToString(firstOutput);
-      argSecond->ToString(secondOutput);
-      args.GetReturnValue()->SetInteger(
-          firstOutput.Compare(secondOutput.AsStringC()) != -1);
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetInteger((first >= second) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() || argSecond->IsNull()) {
+    args.GetReturnValue()->SetInteger(
+        (argFirst->IsNull() && argSecond->IsNull()) ? 1 : 0);
+    return;
+  }
+
+  if (argFirst->IsString() && argSecond->IsString()) {
+    CFX_ByteString firstOutput;
+    CFX_ByteString secondOutput;
+    argFirst->ToString(firstOutput);
+    argSecond->ToString(secondOutput);
+    args.GetReturnValue()->SetInteger(
+        firstOutput.Compare(secondOutput.AsStringC()) != -1);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetInteger((first >= second) ? 1 : 0);
 }
 
 // static
 void CXFA_FM2JSContext::plus_operator(CFXJSE_Value* pThis,
                                       const CFX_ByteStringC& szFuncName,
                                       CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = args.GetValue(0);
-    std::unique_ptr<CFXJSE_Value> argSecond = args.GetValue(1);
-    if (ValueIsNull(pThis, argFirst.get()) &&
-        ValueIsNull(pThis, argSecond.get())) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetDouble(first + second);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = args.GetValue(0);
+  std::unique_ptr<CFXJSE_Value> argSecond = args.GetValue(1);
+  if (ValueIsNull(pThis, argFirst.get()) &&
+      ValueIsNull(pThis, argSecond.get())) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetDouble(first + second);
 }
 
 // static
 void CXFA_FM2JSContext::minus_operator(CFXJSE_Value* pThis,
                                        const CFX_ByteStringC& szFuncName,
                                        CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() && argSecond->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetDouble(first - second);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() && argSecond->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetDouble(first - second);
 }
 
 // static
 void CXFA_FM2JSContext::multiple_operator(CFXJSE_Value* pThis,
                                           const CFX_ByteStringC& szFuncName,
                                           CFXJSE_Arguments& args) {
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() && argSecond->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      args.GetReturnValue()->SetDouble(first * second);
-    }
-  } else {
+  if (args.GetLength() != 2) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() && argSecond->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  args.GetReturnValue()->SetDouble(first * second);
 }
 
 // static
@@ -5433,74 +5436,79 @@
                                         const CFX_ByteStringC& szFuncName,
                                         CFXJSE_Arguments& args) {
   CXFA_FM2JSContext* pContext = ToJSContext(pThis, nullptr);
-  if (args.GetLength() == 2) {
-    std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
-    std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
-    if (argFirst->IsNull() && argSecond->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
-      FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
-      if (second == 0.0) {
-        pContext->ThrowException(XFA_IDS_DIVIDE_ZERO);
-      } else {
-        args.GetReturnValue()->SetDouble(first / second);
-      }
-    }
-  } else {
+  if (args.GetLength() != 2) {
     pContext->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argFirst = GetSimpleValue(pThis, args, 0);
+  std::unique_ptr<CFXJSE_Value> argSecond = GetSimpleValue(pThis, args, 1);
+  if (argFirst->IsNull() && argSecond->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_DOUBLE second = ValueToDouble(pThis, argSecond.get());
+  if (second == 0.0) {
+    pContext->ThrowException(XFA_IDS_DIVIDE_ZERO);
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argFirst.get());
+  args.GetReturnValue()->SetDouble(first / second);
 }
 
 // static
 void CXFA_FM2JSContext::positive_operator(CFXJSE_Value* pThis,
                                           const CFX_ByteStringC& szFuncName,
                                           CFXJSE_Arguments& args) {
-  if (args.GetLength() == 1) {
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    if (argOne->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      args.GetReturnValue()->SetDouble(0.0 +
-                                       ValueToDouble(pThis, argOne.get()));
-    }
-  } else {
+  if (args.GetLength() != 1) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  if (argOne->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+  args.GetReturnValue()->SetDouble(0.0 + ValueToDouble(pThis, argOne.get()));
 }
 
 // static
 void CXFA_FM2JSContext::negative_operator(CFXJSE_Value* pThis,
                                           const CFX_ByteStringC& szFuncName,
                                           CFXJSE_Arguments& args) {
-  if (args.GetLength() == 1) {
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    if (argOne->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      args.GetReturnValue()->SetDouble(0.0 -
-                                       ValueToDouble(pThis, argOne.get()));
-    }
-  } else {
+  if (args.GetLength() != 1) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  if (argOne->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+  args.GetReturnValue()->SetDouble(0.0 - ValueToDouble(pThis, argOne.get()));
 }
 
 // static
 void CXFA_FM2JSContext::logical_not_operator(CFXJSE_Value* pThis,
                                              const CFX_ByteStringC& szFuncName,
                                              CFXJSE_Arguments& args) {
-  if (args.GetLength() == 1) {
-    std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
-    if (argOne->IsNull()) {
-      args.GetReturnValue()->SetNull();
-    } else {
-      FX_DOUBLE first = ValueToDouble(pThis, argOne.get());
-      args.GetReturnValue()->SetInteger((first == 0.0) ? 1 : 0);
-    }
-  } else {
+  if (args.GetLength() != 1) {
     ToJSContext(pThis, nullptr)->ThrowException(XFA_IDS_COMPILER_ERROR);
+    return;
   }
+
+  std::unique_ptr<CFXJSE_Value> argOne = GetSimpleValue(pThis, args, 0);
+  if (argOne->IsNull()) {
+    args.GetReturnValue()->SetNull();
+    return;
+  }
+
+  FX_DOUBLE first = ValueToDouble(pThis, argOne.get());
+  args.GetReturnValue()->SetInteger((first == 0.0) ? 1 : 0);
 }
 
 // static