diff options
author | chriseth <chris@ethereum.org> | 2017-07-03 19:23:28 +0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-07-03 19:23:28 +0800 |
commit | 2b233e73889d047a036227a22e60a4d32e837d43 (patch) | |
tree | 984ecac8318de86b484cec34a79289b0e915a44d /libsolidity/interface/CompilerStack.h | |
parent | aa262d5c8febadd067539c1e05232b1b8c91b4f5 (diff) | |
parent | 75c193e9595c290967d14a5e203f0a6192c10aa2 (diff) | |
download | dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar.gz dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar.bz2 dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar.lz dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar.xz dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.tar.zst dexon-solidity-2b233e73889d047a036227a22e60a4d32e837d43.zip |
Merge pull request #2507 from ethereum/jsonio-safe
Handle parsing errors in StandardCompiler
Diffstat (limited to 'libsolidity/interface/CompilerStack.h')
-rw-r--r-- | libsolidity/interface/CompilerStack.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/libsolidity/interface/CompilerStack.h b/libsolidity/interface/CompilerStack.h index c51ae9c9..03a1b806 100644 --- a/libsolidity/interface/CompilerStack.h +++ b/libsolidity/interface/CompilerStack.h @@ -77,6 +77,14 @@ enum class DocumentationType: uint8_t class CompilerStack: boost::noncopyable { public: + enum State { + Empty, + SourcesSet, + ParsingSuccessful, + AnalysisSuccessful, + CompilationSuccessful + }; + /// Creates a new compiler stack. /// @param _readFile callback to used to read files for import statements. Must return /// and must not emit exceptions. @@ -194,6 +202,8 @@ public: /// @returns the list of errors that occured during parsing and type checking. ErrorList const& errors() { return m_errorReporter.errors(); } + State state() const { return m_stackState; } + private: /** * Information pertaining to one source unit, filled gradually during parsing and compilation. @@ -220,14 +230,6 @@ private: mutable std::unique_ptr<std::string const> sourceMapping; mutable std::unique_ptr<std::string const> runtimeSourceMapping; }; - enum State { - Empty, - SourcesSet, - ParsingSuccessful, - AnalysisSuccessful, - CompilationSuccessful - }; - /// Loads the missing sources from @a _ast (named @a _path) using the callback /// @a m_readFile and stores the absolute paths of all imports in the AST annotations. /// @returns the newly loaded sources. |