summaryrefslogtreecommitdiff
path: root/type.cpp
diff options
context:
space:
mode:
authorRusty Wagner <rusty@vector35.com>2018-02-12 21:48:34 -0500
committerRusty Wagner <rusty@vector35.com>2018-02-12 21:48:34 -0500
commitbba715aff1565426fba31e2f39c438f37921c303 (patch)
tree9f1a0fd2b15d5d8bcc5d02a90449f0a7a3d6abc3 /type.cpp
parent79b5bdcf42f6abf1c8b2c4bda4c30b41319c4aa5 (diff)
parentc352fec480dde5321a0c52850be1bb8a3df9bbd3 (diff)
Merge branch 'dev' into fpu
Diffstat (limited to 'type.cpp')
-rw-r--r--type.cpp48
1 files changed, 12 insertions, 36 deletions
diff --git a/type.cpp b/type.cpp
index 40a69ae2..08b64713 100644
--- a/type.cpp
+++ b/type.cpp
@@ -355,6 +355,7 @@ vector<FunctionParameter> Type::GetParameters() const
BNFunctionParameter* types = BNGetTypeParameters(m_object, &count);
vector<FunctionParameter> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
{
FunctionParameter param;
@@ -474,19 +475,10 @@ vector<InstructionTextToken> Type::GetTokens(Platform* platform, uint8_t baseCon
platform ? platform->GetObject() : nullptr, baseConfidence, &count);
vector<InstructionTextToken> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
- {
- InstructionTextToken token;
- token.type = tokens[i].type;
- token.text = tokens[i].text;
- token.value = tokens[i].value;
- token.size = tokens[i].size;
- token.operand = tokens[i].operand;
- token.context = tokens[i].context;
- token.confidence = tokens[i].confidence;
- token.address = tokens[i].address;
- result.push_back(token);
- }
+ result.emplace_back(tokens[i].type, tokens[i].context, tokens[i].text, tokens[i].address, tokens[i].value, tokens[i].size,
+ tokens[i].operand, tokens[i].confidence);
BNFreeTokenList(tokens, count);
return result;
@@ -500,19 +492,10 @@ vector<InstructionTextToken> Type::GetTokensBeforeName(Platform* platform, uint8
platform ? platform->GetObject() : nullptr, baseConfidence, &count);
vector<InstructionTextToken> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
- {
- InstructionTextToken token;
- token.type = tokens[i].type;
- token.text = tokens[i].text;
- token.value = tokens[i].value;
- token.size = tokens[i].size;
- token.operand = tokens[i].operand;
- token.context = tokens[i].context;
- token.confidence = tokens[i].confidence;
- token.address = tokens[i].address;
- result.push_back(token);
- }
+ result.emplace_back(tokens[i].type, tokens[i].context, tokens[i].text, tokens[i].address, tokens[i].value, tokens[i].size,
+ tokens[i].operand, tokens[i].confidence);
BNFreeTokenList(tokens, count);
return result;
@@ -526,19 +509,10 @@ vector<InstructionTextToken> Type::GetTokensAfterName(Platform* platform, uint8_
platform ? platform->GetObject() : nullptr, baseConfidence, &count);
vector<InstructionTextToken> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
- {
- InstructionTextToken token;
- token.type = tokens[i].type;
- token.text = tokens[i].text;
- token.value = tokens[i].value;
- token.size = tokens[i].size;
- token.operand = tokens[i].operand;
- token.context = tokens[i].context;
- token.confidence = tokens[i].confidence;
- token.address = tokens[i].address;
- result.push_back(token);
- }
+ result.emplace_back(tokens[i].type, tokens[i].context, tokens[i].text, tokens[i].address, tokens[i].value, tokens[i].size,
+ tokens[i].operand, tokens[i].confidence);
BNFreeTokenList(tokens, count);
return result;
@@ -906,6 +880,7 @@ vector<StructureMember> Structure::GetMembers() const
BNStructureMember* members = BNGetStructureMembers(m_object, &count);
vector<StructureMember> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
{
StructureMember member;
@@ -1025,6 +1000,7 @@ vector<EnumerationMember> Enumeration::GetMembers() const
BNEnumerationMember* members = BNGetEnumerationMembers(m_object, &count);
vector<EnumerationMember> result;
+ result.reserve(count);
for (size_t i = 0; i < count; i++)
{
EnumerationMember member;