aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/interface/CompilerStack.h
diff options
context:
space:
mode:
authorRhett Aultman <roadriverrail@gmail.com>2016-12-12 06:17:38 +0800
committerRhett Aultman <rhett.aultman@meraki.net>2017-01-17 01:32:57 +0800
commit071b936b371cd5287717d0ac27b80b837836809a (patch)
treeb4aa6fc05ef1ee3ebec47d7c4ada0c2c0a14a10e /libsolidity/interface/CompilerStack.h
parent9e88f1eebe27c780c80be06d702eac30e2fc5fa3 (diff)
downloaddexon-solidity-071b936b371cd5287717d0ac27b80b837836809a.tar.gz
dexon-solidity-071b936b371cd5287717d0ac27b80b837836809a.tar.zst
dexon-solidity-071b936b371cd5287717d0ac27b80b837836809a.zip
Only avoid collision if it's the same file
@chriseth had suggested that it would be better if contracts were referenced in a file:contract notation, and that we output .bin files that prepend original path names if necessary to avoid a collision. This commit is mostly a draft; it still needs to be run through the test suite.
Diffstat (limited to 'libsolidity/interface/CompilerStack.h')
-rw-r--r--libsolidity/interface/CompilerStack.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/libsolidity/interface/CompilerStack.h b/libsolidity/interface/CompilerStack.h
index d49a8df1..9436bd83 100644
--- a/libsolidity/interface/CompilerStack.h
+++ b/libsolidity/interface/CompilerStack.h
@@ -148,6 +148,10 @@ public:
/// @returns the string that provides a mapping between runtime bytecode and sourcecode.
/// if the contract does not (yet) have bytecode.
std::string const* runtimeSourceMapping(std::string const& _contractName = "") const;
+
+ /// @returns either the contract's name or a mixture of its name and source file, sanitized for filesystem use
+ std::string const filesystemFriendlyName(std::string const& _contractName) const;
+
/// @returns hash of the runtime bytecode for the contract, i.e. the code that is
/// returned by the constructor or the zero-h256 if the contract still needs to be linked or
/// does not have runtime code.