diff options
author | chriseth <c@ethdev.com> | 2015-09-12 01:35:31 +0800 |
---|---|---|
committer | chriseth <c@ethdev.com> | 2015-09-12 01:35:31 +0800 |
commit | 4360e0459622e7843ca9f8d7fb5113da0b8a044e (patch) | |
tree | e8f5fe5f139517c000c57fa271617621420ccb5d /libsolidity/Compiler.cpp | |
parent | 3c25420b8476f1516ac8cb10f5c1552609a08675 (diff) | |
parent | d89832fa898d18f1962eff14acf3f2f7b1c4e3bc (diff) | |
download | dexon-solidity-4360e0459622e7843ca9f8d7fb5113da0b8a044e.tar.gz dexon-solidity-4360e0459622e7843ca9f8d7fb5113da0b8a044e.tar.zst dexon-solidity-4360e0459622e7843ca9f8d7fb5113da0b8a044e.zip |
Merge pull request #66 from chriseth/sol_libraries
Calling libraries.
Diffstat (limited to 'libsolidity/Compiler.cpp')
-rw-r--r-- | libsolidity/Compiler.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/libsolidity/Compiler.cpp b/libsolidity/Compiler.cpp index 8394efa3..9bdf45f8 100644 --- a/libsolidity/Compiler.cpp +++ b/libsolidity/Compiler.cpp @@ -48,8 +48,10 @@ private: unsigned stackHeight; }; -void Compiler::compileContract(ContractDefinition const& _contract, - map<ContractDefinition const*, bytes const*> const& _contracts) +void Compiler::compileContract( + ContractDefinition const& _contract, + std::map<const ContractDefinition*, eth::Assembly const*> const& _contracts +) { m_context = CompilerContext(); // clear it just in case { @@ -70,7 +72,7 @@ void Compiler::compileContract(ContractDefinition const& _contract, void Compiler::compileClone( ContractDefinition const& _contract, - map<ContractDefinition const*, bytes const*> const& _contracts + map<ContractDefinition const*, eth::Assembly const*> const& _contracts ) { m_context = CompilerContext(); // clear it just in case @@ -98,11 +100,13 @@ eth::AssemblyItem Compiler::functionEntryLabel(FunctionDefinition const& _functi return m_runtimeContext.functionEntryLabelIfExists(_function); } -void Compiler::initializeContext(ContractDefinition const& _contract, - map<ContractDefinition const*, bytes const*> const& _contracts) +void Compiler::initializeContext( + ContractDefinition const& _contract, + map<ContractDefinition const*, eth::Assembly const*> const& _compiledContracts +) { CompilerUtils(m_context).initialiseFreeMemoryPointer(); - m_context.setCompiledContracts(_contracts); + m_context.setCompiledContracts(_compiledContracts); m_context.setInheritanceHierarchy(_contract.linearizedBaseContracts()); registerStateVariables(_contract); m_context.resetVisitedNodes(&_contract); |