Squashed an unnecessary copy in the parser callbacks

This commit is contained in:
paulfd 2019-08-25 12:31:39 +02:00
parent 8008f51e45
commit b15bed8c48
4 changed files with 7 additions and 7 deletions

View file

@ -27,7 +27,7 @@ public:
void disableRecursiveIncludeGuard() { recursiveIncludeGuard = false; }
void enableRecursiveIncludeGuard() { recursiveIncludeGuard = true; }
protected:
virtual void callback(std::string_view header, std::vector<Opcode> members) = 0;
virtual void callback(std::string_view header, const std::vector<Opcode>& members) = 0;
std::filesystem::path rootDirectory { std::filesystem::current_path() };
private:
bool recursiveIncludeGuard { false };

View file

@ -13,7 +13,7 @@ public:
int getNumMasters() const noexcept { return numMasters; }
int getNumCurves() const noexcept { return numCurves; }
protected:
void callback(std::string_view header, std::vector<sfz::Opcode> members [[maybe_unused]]) final
void callback(std::string_view header, const std::vector<sfz::Opcode>& members [[maybe_unused]]) final
{
switch (hash(header))
{

View file

@ -4,14 +4,14 @@
#include <utility>
#include <algorithm>
void sfz::Synth::callback(std::string_view header, std::vector<Opcode> members)
void sfz::Synth::callback(std::string_view header, const std::vector<Opcode>& members)
{
switch (hash(header))
{
case hash("global"):
// We shouldn't have multiple global headers in file
ASSERT(!hasGlobal);
globalOpcodes = std::move(members);
globalOpcodes = members;
hasGlobal = true;
break;
case hash("control"):
@ -20,11 +20,11 @@ void sfz::Synth::callback(std::string_view header, std::vector<Opcode> members)
hasControl = true;
break;
case hash("master"):
masterOpcodes = std::move(members);
masterOpcodes = members;
numMasters++;
break;
case hash("group"):
groupOpcodes = std::move(members);
groupOpcodes = members;
numGroups++;
break;
case hash("region"):

View file

@ -129,7 +129,7 @@ public:
void tempo(int delay, float secondsPerQuarter);
protected:
void callback(std::string_view header, std::vector<Opcode> members) final;
void callback(std::string_view header, const std::vector<Opcode>& members) final;
private:
Voice* findFreeVoice()