diff options
author | Christian <c@ethdev.com> | 2015-01-20 06:08:48 +0800 |
---|---|---|
committer | Christian <c@ethdev.com> | 2015-01-20 06:35:04 +0800 |
commit | ddf5e20d100535c10315d0ae73ba4ed753ef3397 (patch) | |
tree | 2d2e5bc26cacc78c98677f4fa3e3b3f9df7835db /Compiler.h | |
parent | af92f98d86ba1e15e3f41ac49bb9639be1ab4e41 (diff) | |
download | dexon-solidity-ddf5e20d100535c10315d0ae73ba4ed753ef3397.tar.gz dexon-solidity-ddf5e20d100535c10315d0ae73ba4ed753ef3397.tar.zst dexon-solidity-ddf5e20d100535c10315d0ae73ba4ed753ef3397.zip |
Call constructors of base classes.
Diffstat (limited to 'Compiler.h')
-rw-r--r-- | Compiler.h | 9 |
1 files changed, 5 insertions, 4 deletions
@@ -43,12 +43,13 @@ private: void initializeContext(ContractDefinition const& _contract, std::map<ContractDefinition const*, bytes const*> const& _contracts); /// Adds the code that is run at creation time. Should be run after exchanging the run-time context - /// with a new and initialized context. - /// adds the constructor code. + /// with a new and initialized context. Adds the constructor code. void packIntoContractCreator(ContractDefinition const& _contract, CompilerContext const& _runtimeContext); + void appendBaseConstructorCall(FunctionDefinition const& _constructor, + std::vector<ASTPointer<Expression>> const& _arguments); void appendConstructorCall(FunctionDefinition const& _constructor); - /// Recursively searches the call graph and returns all functions needed by the constructor (including itself). - std::set<FunctionDefinition const*> getFunctionsNeededByConstructor(FunctionDefinition const& _constructor); + /// Recursively searches the call graph and returns all functions referenced inside _nodes. + std::set<FunctionDefinition const*> getFunctionsCalled(std::set<ASTNode const*> const& _nodes); void appendFunctionSelector(ContractDefinition const& _contract); /// Creates code that unpacks the arguments for the given function, from memory if /// @a _fromMemory is true, otherwise from call data. @returns the size of the data in bytes. |