aboutsummaryrefslogtreecommitdiffstats
path: root/Compiler.h
diff options
context:
space:
mode:
authorChristian <c@ethdev.com>2015-01-20 06:08:48 +0800
committerChristian <c@ethdev.com>2015-01-20 06:35:04 +0800
commitddf5e20d100535c10315d0ae73ba4ed753ef3397 (patch)
tree2d2e5bc26cacc78c98677f4fa3e3b3f9df7835db /Compiler.h
parentaf92f98d86ba1e15e3f41ac49bb9639be1ab4e41 (diff)
downloaddexon-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.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/Compiler.h b/Compiler.h
index 073721e0..ea05f38e 100644
--- a/Compiler.h
+++ b/Compiler.h
@@ -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.