Skip to content

Commit 5caffed

Browse files
committed
refactor: avoid unnecessary new and raw pointer
1 parent 69c7c88 commit 5caffed

6 files changed

Lines changed: 13 additions & 13 deletions

File tree

src/legacy/api/BlockEntityAPI.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,7 +71,7 @@ Local<Value> BlockEntityClass::getType() {
7171

7272
Local<Value> BlockEntityClass::getNbt(const Arguments&) {
7373
try {
74-
CompoundTag* tag = new CompoundTag();
74+
auto tag = std::make_unique<CompoundTag>();
7575
blockEntity->save(*tag, *SaveContextFactory::createCloneSaveContext());
7676
return NbtCompoundClass::pack(std::move(tag)); // Not sure is that will get right value
7777
}

src/legacy/legacyapi/db/Row.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -72,10 +72,10 @@ size_t RowHeader::operator[](const std::string& name) {
7272
std::string& RowHeader::operator[](size_t index) { return at(index); }
7373

7474
Row::Row(const std::shared_ptr<RowHeader>& header) : header(header) {}
75-
Row::Row(const RowHeader& header) : header(new RowHeader(header)) {}
75+
Row::Row(const RowHeader& header) : header(std::make_shared<RowHeader>(header)) {}
7676
Row::Row(const std::initializer_list<Any>& list, const RowHeader& header)
7777
: std::vector<Any>(list),
78-
header(new RowHeader(header)) {
78+
header(std::make_shared<RowHeader>(header)) {
7979
if (!header.empty() && list.size() != header.size()) {
8080
throw std::invalid_argument("Row::Row: The row and the header mismatch");
8181
}
@@ -89,20 +89,20 @@ Row::Row(const std::initializer_list<Any>& list, const std::shared_ptr<RowHeader
8989
}
9090
Row::Row(std::vector<Any>&& list, const RowHeader& header)
9191
: std::vector<Any>(std::move(list)),
92-
header(new RowHeader(header)) {
92+
header(std::make_shared<RowHeader>(header)) {
9393
if (size() != header.size()) {
9494
list = std::move(*this); // Restore
9595
throw std::invalid_argument("Row::Row: The row and the header mismatch");
9696
}
9797
}
9898
Row::Row(const std::vector<Any>& list, const RowHeader& header)
9999
: std::vector<Any>(list),
100-
header(new RowHeader(header)) {
100+
header(std::make_shared<RowHeader>(header)) {
101101
if (list.size() != header.size()) {
102102
throw std::invalid_argument("Row::Row: The row and the header mismatch");
103103
}
104104
}
105-
Row::Row(const std::initializer_list<std::pair<std::string, Any>>& list) : header(new RowHeader()) {
105+
Row::Row(const std::initializer_list<std::pair<std::string, Any>>& list) : header(std::make_shared<RowHeader>()) {
106106
for (auto& pair : list) {
107107
header->add(pair.first);
108108
this->push_back(pair.second);

src/legacy/legacyapi/db/RowSet.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ RowSet::RowSet(const std::shared_ptr<RowHeader>& header) : std::vector<Row>(), h
1212
}
1313
}
1414

15-
RowSet::RowSet(const RowHeader& header) : std::vector<Row>(), header(new RowHeader(header)) {}
15+
RowSet::RowSet(const RowHeader& header) : std::vector<Row>(), header(std::make_shared<RowHeader>(header)) {}
1616
RowSet::RowSet(RowSet&& set) noexcept : std::vector<Row>(std::move(set)), header(set.header) {}
1717
RowSet::RowSet(const RowSet& set) : std::vector<Row>(set), header(set.header) {}
1818
RowSet& RowSet::operator=(RowSet&& set) noexcept {

src/legacy/legacyapi/db/Session.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -104,18 +104,18 @@ SharedPointer<Session> Session::create(DBType type, const std::string& path) {
104104
}
105105

106106
SharedPointer<Session> Session::_Create(DBType type, const ConnParams& params) {
107-
Session* session = nullptr;
107+
std::shared_ptr<Session> session = nullptr;
108108
switch (type) {
109109
case DBType::SQLite:
110-
session = params.empty() ? new SQLiteSession() : new SQLiteSession(params);
110+
session = params.empty() ? std::make_shared<SQLiteSession>() : std::make_shared<SQLiteSession>(params);
111111
break;
112112
case DBType::MySQL:
113113
#ifdef LSE_BACKEND_NODEJS
114114
lse::LegacyScriptEngine::getInstance().getSelf().getLogger().error(
115115
"Session::_Create: MySQL is disabled in NodeJS backend because its OpenSSL has conflicts with libnode"
116116
);
117117
#else
118-
session = params.empty() ? new MySQLSession() : new MySQLSession(params);
118+
session = params.empty() ? std::make_shared<MySQLSession>() : std::make_shared<MySQLSession>(params);
119119
#endif
120120
break;
121121
default:

src/legacy/legacyapi/db/impl/sqlite/Stmt.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ int SQLiteStmt::getNextParamIndex() {
3535
}
3636

3737
void SQLiteStmt::fetchResultHeader() {
38-
if (!resultHeader) resultHeader.reset(new RowHeader);
38+
if (!resultHeader) resultHeader = std::make_shared<RowHeader>();
3939
int colCnt = sqlite3_column_count(stmt);
4040
for (int i = 0; i < colCnt; i++) {
4141
auto name = sqlite3_column_name(stmt, i);
@@ -328,7 +328,7 @@ SQLiteStmt::create(const std::weak_ptr<Session>& session, const std::string& sql
328328
if (res != SQLITE_OK) {
329329
throw std::runtime_error("SQLiteStmt::create: " + s->getLastError());
330330
}
331-
auto result = new SQLiteStmt(stmt, session, autoExecute);
331+
auto result = std::make_shared<SQLiteStmt>(stmt, session, autoExecute);
332332
result->parent = session;
333333
result->setDebugOutput(raw->debugOutput);
334334
if (raw->debugOutput)

src/legacy/legacyapi/db/impl/sqlite/Stmt.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ class SQLiteStmt : public Stmt {
2020
bool executed = false;
2121
std::vector<int> boundIndexes;
2222

23-
SQLiteStmt(sqlite3_stmt* stmt, const std::weak_ptr<Session> parent, bool autoExecute);
2423
int getNextParamIndex();
2524
void fetchResultHeader();
2625

2726
public:
27+
SQLiteStmt(sqlite3_stmt* stmt, const std::weak_ptr<Session> parent, bool autoExecute);
2828
~SQLiteStmt();
2929
Stmt& bind(const Any& value, int index);
3030
Stmt& bind(const Any& value, const std::string& name);

0 commit comments

Comments
 (0)