| 961 | } |
| 962 | |
| 963 | std::string const* CompilerStack::sourceMapping(std::string const& _contractName) const |
| 964 | { |
| 965 | solAssert(m_stackState == CompilationSuccessful, "Compilation was not successful."); |
| 966 | |
| 967 | // TODO |
| 968 | if (m_eofVersion.has_value()) |
| 969 | return nullptr; |
| 970 | |
| 971 | Contract const& c = contract(_contractName); |
| 972 | if (!c.sourceMapping) |
| 973 | { |
| 974 | if (auto items = assemblyItems(_contractName)) |
| 975 | c.sourceMapping.emplace(evmasm::AssemblyItem::computeSourceMapping(*items, sourceIndices())); |
| 976 | } |
| 977 | return c.sourceMapping ? &*c.sourceMapping : nullptr; |
| 978 | } |
| 979 | |
| 980 | std::string const* CompilerStack::runtimeSourceMapping(std::string const& _contractName) const |
| 981 | { |
no outgoing calls
no test coverage detected