aboutsummaryrefslogtreecommitdiffstats
path: root/CompilerContext.h
diff options
context:
space:
mode:
authorChristian <c@ethdev.com>2015-01-16 03:04:24 +0800
committerChristian <c@ethdev.com>2015-01-20 06:35:04 +0800
commit4d833bc86bf10a685a8b5d72e90c49a24a33f8b3 (patch)
tree374e4529cd14685aa302dfda01e180f3bd51eba6 /CompilerContext.h
parente6c0a9b922a28001fcbdc4e4ee729659c987caef (diff)
downloaddexon-solidity-4d833bc86bf10a685a8b5d72e90c49a24a33f8b3.tar.gz
dexon-solidity-4d833bc86bf10a685a8b5d72e90c49a24a33f8b3.tar.zst
dexon-solidity-4d833bc86bf10a685a8b5d72e90c49a24a33f8b3.zip
Inheritance in compiler.
Diffstat (limited to 'CompilerContext.h')
-rw-r--r--CompilerContext.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/CompilerContext.h b/CompilerContext.h
index cf505d65..cde992d5 100644
--- a/CompilerContext.h
+++ b/CompilerContext.h
@@ -57,6 +57,8 @@ public:
bool isStateVariable(Declaration const* _declaration) const { return m_stateVariables.count(_declaration) != 0; }
eth::AssemblyItem getFunctionEntryLabel(FunctionDefinition const& _function) const;
+ /// @returns the entry label of the given function and takes overrides into account.
+ eth::AssemblyItem getVirtualFunctionEntryLabel(FunctionDefinition const& _function) const;
/// Returns the distance of the given local variable from the top of the local variable stack.
unsigned getBaseStackOffsetOfVariable(Declaration const& _declaration) const;
/// If supplied by a value returned by @ref getBaseStackOffsetOfVariable(variable), returns
@@ -116,6 +118,8 @@ private:
unsigned m_localVariablesSize;
/// Labels pointing to the entry points of funcitons.
std::map<Declaration const*, eth::AssemblyItem> m_functionEntryLabels;
+ /// Labels pointing to the entry points of function overrides.
+ std::map<std::string, eth::AssemblyItem> m_virtualFunctionEntryLabels;
};
}