summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMarkus Mittendrein <git@maxmitti.tk>2018-08-19 13:09:00 +0200
committerMarkus Mittendrein <git@maxmitti.tk>2018-08-19 13:09:00 +0200
commitc226414e0c0e804f9635914667b2c20747bc26c3 (patch)
tree4e3a4a97715b26f3f481ed3f2711646245a18e50
parent4338534c9cdacf98c310ab625a1d17988dde1949 (diff)
downloadcc4group-c226414e0c0e804f9635914667b2c20747bc26c3.tar.gz
cc4group-c226414e0c0e804f9635914667b2c20747bc26c3.zip
Use std::make_optional
-rw-r--r--src/cppc4group.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/cppc4group.cpp b/src/cppc4group.cpp
index fa64771..0619f75 100644
--- a/src/cppc4group.cpp
+++ b/src/cppc4group.cpp
@@ -67,7 +67,7 @@ std::optional<CppC4Group::Data> CppC4Group::getEntryData(const std::string& path
size_t size;
if(cc4group.getEntryData(p->g, path.c_str(), &data, &size))
{
- return {{data, size}};
+ return std::make_optional<CppC4Group::Data>(data, size);
}
else
{
@@ -155,8 +155,9 @@ std::optional<CppC4Group::EntryInfo> CppC4Group::getEntryInfo(const std::string&
CC4Group_EntryInfo info;
if(cc4group.getEntryInfo(p->g, path.c_str(), &info))
{
- CppC4Group::EntryInfo entryInfo;
- return fillEntryInfo(entryInfo, info);
+ auto entryInfo = std::make_optional<CppC4Group::EntryInfo>();
+ fillEntryInfo(*entryInfo, info);
+ return entryInfo;
}
else
{
@@ -164,19 +165,18 @@ std::optional<CppC4Group::EntryInfo> CppC4Group::getEntryInfo(const std::string&
}
}
-std::optional<std::vector<CppC4Group::EntryInfo> > CppC4Group::getEntryInfos(const std::string& path)
+std::optional<std::vector<CppC4Group::EntryInfo>> CppC4Group::getEntryInfos(const std::string& path)
{
CC4Group_EntryInfo* infos;
size_t infoCount;
if(cc4group.getEntryInfos(p->g, path.c_str(), &infos, &infoCount))
{
- std::vector<CppC4Group::EntryInfo> entryInfos;
- entryInfos.reserve(infoCount);
+ auto entryInfos = std::make_optional<std::vector<CppC4Group::EntryInfo>>(infoCount);
for(size_t i = 0; i < infoCount; ++i)
{
- fillEntryInfo(entryInfos.emplace_back(), infos[i]);
+ fillEntryInfo((*entryInfos)[i], infos[i]);
}
free(infos);