Performance: Replace string by special single-copy YulString class.

This commit is contained in:
chriseth
2018-11-07 19:30:27 +01:00
parent 0a96f091ab
commit 674e17c2a8
59 changed files with 351 additions and 243 deletions
@@ -43,7 +43,7 @@ class InlinableExpressionFunctionFinder: public ASTWalker
{
public:
std::map<std::string, FunctionDefinition const*> const& inlinableFunctions() const
std::map<YulString, FunctionDefinition const*> const& inlinableFunctions() const
{
return m_inlinableFunctions;
}
@@ -54,15 +54,15 @@ public:
virtual void operator()(FunctionDefinition const& _function) override;
private:
void checkAllowed(std::string const& _name)
void checkAllowed(YulString _name)
{
if (m_disallowedIdentifiers.count(_name))
m_foundDisallowedIdentifier = true;
}
bool m_foundDisallowedIdentifier = false;
std::set<std::string> m_disallowedIdentifiers;
std::map<std::string, FunctionDefinition const*> m_inlinableFunctions;
std::set<YulString> m_disallowedIdentifiers;
std::map<YulString, FunctionDefinition const*> m_inlinableFunctions;
};
}