• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright 2017 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 
7 #ifndef FXJS_CJS_RETURN_H_
8 #define FXJS_CJS_RETURN_H_
9 
10 #include "fxjs/fxjs_v8.h"
11 
12 class CJS_Return {
13  public:
14   explicit CJS_Return(bool);
15   explicit CJS_Return(const WideString&);
16   explicit CJS_Return(v8::Local<v8::Value>);
17   CJS_Return(const CJS_Return&);
18   ~CJS_Return();
19 
HasError()20   bool HasError() const { return is_error_; }
Error()21   WideString Error() const { return error_; }
22 
HasReturn()23   bool HasReturn() const { return !return_.IsEmpty(); }
Return()24   v8::Local<v8::Value> Return() const { return return_; }
25 
26  private:
27   CJS_Return() = delete;
28 
29   bool is_error_ = false;
30   WideString error_;
31   v8::Local<v8::Value> return_;
32 };
33 
34 #endif  // FXJS_CJS_RETURN_H_
35